帮忙分析一下应该如何分配

现在主要想请大家帮忙看一下 TiDB 生产集群的组件分配是否合理。

我们这边是从 MySQL 同步数据到 TiDB,MySQL 目前有 50+ 个业务库,数据量比较大,部分核心表增长较快,最大单表每月新增 100 万以上数据。同步到 TiDB 后,主要用于数据计算、统计分析和报表查询。

当前生产环境大概是:
3 个 TiDB/PD 节点,5 个 TiKV 节点,其中 3 个 TiKV 节点混部了 TiFlash。

想重点确认:

  1. 这种 TiDB、PD、TiKV、TiFlash 的部署分配是否合理;
  2. TiFlash 和 TiKV 混部会不会影响同步写入和查询性能,是否建议拆开;
  3. 应用和同步任务是否应该通过 TiProxy/HA 统一连接 TiDB;
  4. 后续数据继续增长时,应该优先扩 TiKV、TiFlash 还是 TiDB。

2、建议kv和flash分开吧,这俩混布,影响不会很大吗。
3、建议挂个HA;
4、看瓶颈在哪再考虑扩哪个吧。KV比较容易有瓶颈。

1 个赞
  1. 这种 TiDB、PD、TiKV、TiFlash 的部署分配是否合理
    支持混合部署,但是建议最好看下各节点的内存资源大小,tidb数据库相对占用内存资源较多,服务器的内存尽量大一些
  2. TiFlash 和 TiKV 混部会不会影响同步写入和查询性能,是否建议拆开;
    建议分开,tiflash主要用于OLAP场景、tikv主要用于OLTP场景,容易抢资源
  3. 应用和同步任务是否应该通过 TiProxy/HA 统一连接 TiDB;
    通过,否则很容易造成负载不均衡。TiProxy支持和其他节点一键化部署,但是会有一些性能损耗,HA性能会好些,但是如果扩容tidb节点可能需要手动重启,而TiProxy则不用
  4. 后续数据继续增长时,应该优先扩 TiKV、TiFlash 还是 TiDB。
    扩容时,视情况而定,在dashboard界面可以查看每个服务器的内存、cpu、磁盘使用情况,占比较高的服务器优先扩容
1 个赞

tikv和tifla 最好分开,服务器有限的话,tiflash 最好单独的数据盘。
混部的情况, 分析是否合理, 要看业务使用情况, 如果卡顿严重,且是服务器器资源不足,那就不合理,用着很好,那就合理。
数据增长,空间不足,优先级的话 先扩tikv 其次tidb 最后tiflash
建议使用ha

主要看三点:数据量级、一致性要求、运维能力。数据量超过单机 MySQL 瓶颈、需要强一致分布式事务的,TiDB 是成熟方案。如果只是几千亿条数据跑分析,也可以考虑 ClickHouse。

如果把flash 去掉的话可行吗?如果后期压力大的话 我再单独部署flash 呢?

kv和flash混合部署感觉不大好吧

建议kv和flash分开

此话题已在最后回复的 7 天后被自动关闭。不再允许新回复。