TDSQL MySQL 版 选型概述
TDSQL MySQL 版 由分片(sharding)组成,分片的规格和分片数量决定了 TDSQL MySQL 版 实例的解决能力。实践上来讲:
TDSQL MySQL 版 实例读写并发性能 = ∑(某规格分片性能 * 某规格分片数量)
TDSQL MySQL 版 实例事务性能 = ∑(某规格分片事务性能 70% 某规格分片数量)
因而,分片规格越高、分片数量越多,实例的解决能力越强。而分片性能,次要与 CPU / 内存 相干,并以 QPS 为根底掂量指标,咱们在分片性能阐明章节,给出了大抵性能指标。
TDSQL MySQL 版 分片规格的抉择
TDSQL MySQL 版 分片规格的抉择,次要从三个方面需要来决定:1、性能需求;2、容量需要;3、其余要求。
性能需求:通过预判至多 6 个月的性能规模和可能增长,您能够确定您分布式实例所需总 CPU / 内存 规模。
容量需要:通过预判至多 1 年的容量规模和可能增长,您能够确定您分布式实例所需总 磁盘 规模。
其余要求:咱们倡议一个分片至多存储 5000 万行数据,并思考到业务中所需的 播送表、单表,和节点内 join 等业务需要。
留神:
建议您先确保让单个分片配置较大,而分片数量较少。
综合上述来看,咱们预估您可能有如下几种业务特点,举荐策略如下:
应用 TDSQL MySQL 版 做功能性测试,且对性能没有特地要求:2 个分片,每个分片配置为:内存 / 磁盘:2GB/25GB。
业务倒退初期,总数据规模较小但增长快的选型:2 个分片,每个分片配置为:内存 / 磁盘:16GB/200GB。
业务倒退稳固,依据业务理论状况选型:4 个分片,每个分片配置等于:以后业务峰值 * 增长率 /4
TDSQL MySQL 版 分片性能测试
数据库基准性能测试为 sysbench 0.5 工具。
批改阐明:对 sysbench 自带的 otlp 脚本做了批改,读写比例批改为 1:1,并通过执行测试命令参数 oltp_point_selects 和 oltp_index_updates 管制读写比例,本文测试用例的均采纳 4 个 select 点,1 个 update 点,读写比例放弃 4:1。
此处 TPS 为单机 TPS,并非测试的是分布式事务的 TPS。
依据经营策略要求,以后 TDSQL MySQL 版 的(局部)实例都采纳闲时超用技术,所以您可能在您的监控中看到 CPU 利用率超过 100% 的状况。