数仓项目,集群部署规划问题

为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。

  • 【TiDB 版本】:3.0.5
  • 【问题描述】:

有个数仓类的需求,需要将3个业务库数据汇聚起来,做一些BI相关的数据分析 3个业务mysql schema数据量都在500G+,计划实时同步至tidb集群(类似mysql的多源复制,将多个实例实时复制到一个实例) 针对这样一个需求,我看了下官方文档对机器配置要求

生产环境

组件 CPU 内存 硬盘类型 网络 实例数量(最低要求)
TiDB 16核+ 32 GB+ SAS 万兆网卡(2块最佳) 2
PD 4核+ 8 GB+ SSD 万兆网卡(2块最佳) 3
TiKV 16核+ 32 GB+ SSD 万兆网卡(2块最佳) 3
监控 8核+ 16 GB+ SAS 千兆网卡 1

这里面没有说明磁盘容量的规划,不知道针对我这个需求,磁盘容量需要怎么规划?

我计划是购买一台高配pc server做虚拟化

MySQL 数据导入到 TiDB 数据容量规划可以按照 1:1 规划,但是 TiDB 中 rocksdb 有 compaction 所以实际数据会有压缩

按现在的量,3个mysql库已经超过1.5T,这样同步至tidb集群,tikv的磁盘至少要2T了,这样好像已经不符合官方推荐了,这样该怎么规划呢?增加tikv节点?

上面的是按照 tikv 总容量算的,如果总容量不足可以扩容 tikv 节点

还有个问题,目前只测试了DM数据同步。 如果正式上线,500G的库使用DM同步估计要话费很长时间,有没有什么途径快速的导入并配置实时同步?

dm 同步分为全量和增量同步,全量同步会比较耗时,在 task 的配置文件里面可以调整并发相关的参数,提高导出和导入效率。建议根据数据库负载,进行调整:

好的,谢谢,下周再正式测试一下全库导入同步性能

:+1::+1::+1: