You need to enable JavaScript to run this app.
文档中心
云服务器

云服务器

复制全文
下载 pdf
搭建应用
自建高性能数据库-选型与性能测试
复制全文
下载 pdf
自建高性能数据库-选型与性能测试
本文介绍如何选择云服务器自建各类高性能数据库。​
一、场景描述​
数据库一直是构建现代应用的重要组件,几乎所有应用都始于数据并终于数据。随着数据驱动时代的到来,数据更是无处不在,进一步成为未来创新的基石。​
在应用的微服务化、数据类型多样化的大趋势下,单一种类的数据库已经无法满足现代应用的需求,因此各类专门构建的数据库应运而生,包括关系数据库、键值数据库、文档数据库、内存中数据库、图形数据库、时间序列数据库、宽列数据库和分类账数据库等等。​
随着数据网格概念的提出,数据管理平台也正由中心化转向业务(LOBs)定制化。各业务根据需求进行定制,构建高可用,高性能,特性丰富的数据管理平台对基础设施的要求较高。​
二、数据库选型​
下表展示了各类数据库的功能特性及相关产品,需要根据实际业务选择合适的数据库产品。​
​
数据库类型​
数据库特点​
应用类型​
数据库产品​
关系数据库​
数据准确,连续性高,对事务支持,无限制索引。​
传统应用程序、ERP、CRM 、交易系统、数据仓库​
PostgreSQL、MySQL、MariaDB、Oracle Database、SQL Server​
键值数据库​
快速并发读取/写入 ,灵活的数据结构。​
高流量 Web 应用、电商购物车、游戏、直播,实时竞价,产品目录,客户偏好保存​
Redis、TiKV​
内存数据库​
亚毫秒级延迟,每秒百万级操作,支持多种编程语言,可配合各种数据库使用。​
缓存、会话管理、游戏排行榜、地理位置信息,实时分析​
Redis、Memcached​
文档数据库​
结构灵活,半结构数据,层次化,快速查询,强大的索引能力。​
内容管理、客户画像、用户配置文件、个性化、移动应用​
MongoDB、Couchbase​
宽列​
结构灵活,高扩展性,单行数据较大。​
用于设备维护、队列管理和路线优化的大规模工业应用程序、实时数据分析​
Cassandra​
图数据库​
针对强关系数据,优化查询和遍历。​
欺诈检测、社交网络、推荐引擎、数据血缘、知识图谱​
Neo4j、dgraph​
时序数据库​
高扩展性,适合增长迅速的数据,并监控数据的变化。​
IoT 应用、工业遥测、DevOps、应用监控​
influxDB、QuestDB、TimescaleDB​
分类账​
准确,透明,不可变更,可审计,高扩展性。​
系统记录、供应链、注册、银行事务、HR及薪资系统、零售、保险、制造​
Amazon QLDB, Alicloud LedgerDB​
​
三、性能测试​
在确定数据库类型后,您可以采用性能测试的方式来确认数据库的配置。​
基础环境构建​
请参考通过向导购买实例创建ECS实例,本文所用配置如下:​
  • 基础配置:​
  • 计算规格:ecs.r3il.xlarge​
  • 镜像:Windows Server​
  • 存储:系统盘容量在100 GiB以上​
  • 网络配置:勾选“分配弹性公网IP”。​
  • 实例数量:2台。​
  • 实例名称:分别命名为HammerDB-01和HammerDB-02。​
部署测试工具HammerDB​
在云服务器HammerDB-01中部署HammerDB。​
  1. 通过VNC登录HammerDB-01实例,具体操作请参见通过控制台登录Windows实例。​
  1. 同时按住Ctrl + Alt + Del,或参考下图按照图中标记顺序依次单击,界面显示密码输入框。输入密码,远程登录云服务器。​
  • ​image.png​​
  1. 打开IE浏览器,在地址栏手动输入“https://www.hammerdb.com/download.html”,下载安装测试软件HammerDB。​
  • ​image.png​​
  1. 下载完成后,双击安装HammerDB,根据安装向导指引,完成安装。​
  • ​image.png​​
  • 如下图所示,表示完成安装。​
  • ​image.png​​
  1. 在IE浏览器上打开一个新页面,在地址栏输入“https://go.microsoft.com/fwlink/?linkid=2168524”下载SQL Server ODBC Driver 17,跟随安装向导指引,完成安装。​
  • ​image.png​​
部署数据库​
在云服务器HammerDB-02上部署SQL Server 2019。​
  1. 通过VNC登录HammerDB-02实例,具体操作请参见通过控制台登录Windows实例。​
  1. 参考上文“部署测试工具HammerDB”部分步骤3,登录HammerDB-02。​
  1. 打开IE浏览器,在地址栏输入“https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads”,下载SQL Server 2019。​
  • ​image.png​​
  1. 单击安装“Basic”类型的SQL Server 2019。​
  • ​image.png​​
  • 单击“Accept”,继续安装,直至完成。​
  • ​image.png​​
  1. 在IE浏览器SQL Server 2019下载页面,切换至“SQL 工具和驱动程序”部分,单击“SQL Server Management Studio”的立即下载按钮。​
  • ​​​
  1. 页面跳转至下载页,单击如下图所示位置,下载SQL Server Management Studio(SSMS)18.10。​
  • ​image.png​​
  1. 根据界面引导安装SSMS,安装完成后需要重新启动云服务器。​
  • ​image.png​​
  1. 配置SQL Server。​
  1. 参照下图,打开SQL Server Configuration Manager。​
  • ​image.png​​
  1. 在SQL Server Configuration Manager中,右键单击Named Pipes和TCP/IP“Status”下的“Disable”,修改为“Enable”,启用Named Pipes及TCP/IP协议。​
  • ​image.png​​
  1. 参照下图操作,使用SSMS进入数据库。​
  • ​image.png​​
  1. 单击“Connect”连接数据库。​
  • ​image.png​​
  1. 右键单击数据库名称,然后单击“Properties”进入属性设置。​
  • ​image.png​​
  1. 在“Security”页签下,选中启用“SQL Server and Windows Authentication mode”,然后单击“OK”,在弹出的对话框中单击“OK”。​
  • ​image.png​​
  1. 右键单击“Database > New Database”,新建数据库。​
  • ​image.png​​
  1. 参照下图,创建名为“tpcc”的数据库,完成后单击“OK”。​
  • ​image.png​​
  1. 在“Security”目录下,右键单击“Logins > New Login”。​
  • ​image.png​​
  1. 参照下图,创建“tpcc-test”用户,此时不要单击“OK”。​
  • ​image.png​​
  1. 单击“User Mapping”,勾选“tpcc”,然后单击“OK”。​
  • ​image.png​​
生成测试数据​
使用HammerDB工具生成测试数据。​
  1. 远程连接安装HammerDB的云服务器HammerDB-01,打开HammerDB。​
  1. 双击“SQL Server”,选择TPCC-C,然后单击“OK”。​
  • ​image.png​​
  1. 双击“TPROC-C”,在展示的目录下双击“Schema Build” ,在展开的目录下双击“Options”。​
  • ​image.png​​
  1. 在新建Options配置框,输入安装SQL Server的云服务器HammerDB-02的私网IP地址、tpcc-test数据库账号及密码,设置期望的Warehouse数量(数据库生成测试数据的大小)及并行插入的虚拟账号数量,配置完成后单击”OK“。​
云服务器的私网IP地址,可在云服务器控制台“实例”页面下获取。​
  • ​image.png​​
  1. 双击“Build”,在弹出对话框中单击“Yes”。​
  • ​image.png​​
  1. 开始插入测试数据,此过程可能需要几个小时。​
  • ​image.png​​
  • 如下图所示,表示数据插入完成。​
  • ​image.png​​
  1. 单击红色方块,销毁虚拟客户端。​
  • ​image.png​​
开始测试​
  1. 参照下图单击“Load”,加载测试脚本。​
  • ​image.png​​
  1. 参照下图单击“Virtural User”下的“Options”,在弹出的对话框中设置想要测试的客户端数“Virtual Users”(数字越大并发越大),操作间隔“User Delay”、“Repeat Delay”(数字越小操作越密集),然后单击“OK”。​
  • ​image.png​​
  1. 双击“Create”创建虚拟客户端。​
  • ​image.png​​
  1. 双击“Run”开始测试。​
  • ​image.png​​
  1. 单击打开Transaction Counter,查看TPM。​
  • ​image.png​​
测试总结​
我们可以通过多次测试相同机型取平均值的方式,获得尽量准确的性能测试结果。通过充分测试不同机型云服务的性能表现,以确保采用性价比最高的方案搭建不同种类的数据库。​
​
最近更新时间:2026.06.17 19:32:14
这个页面对您有帮助吗?
有用
有用
无用
无用