【 TiDB 使用环境】测试
【 TiDB 版本】v8.1.1
目前在做tidb的前期调研与测试。3台测试机器(64核+128G+SSD),我先部署了node2-tikv,node3-tiflash,然后其它组件部署在node1上。
但测试写入时发现性能并不太理想(3分钟写入约100w,采用的是TiBigData里面的直接写入tikv的方式,每次flush 5000行。),且经常出现写入过程中,忽然无法查询的问题。
有如下问题希望交流沟通:
-
我们这个项目场景更多是OLAP场景(且绝大部分都只是简单聚合+窗口函数,几乎没有关联),感觉TiFlash机器更多会好些?
-
机器存在多个网卡(千兆+万兆),如何指定使用万兆网卡。还是说只要使用tiup部署时的IP是万兆口的IP即可?
-
我查看TiBigdata的代码,应该采用的是 client-java 中的两阶段提交这种方式,从文档看应该是吞吐量比较好哪种。如何提升入库性能?另外感觉TiBigdata已经很长时间没有维护了,有啥更优的数据入库方案吗?
舞动梦灵
(Ti D Ber Nckmz Hmh)
3
tikv3副本,至少3节点,你是修改副本数量了吗?如果两个副本在同一个服务器,可能会影响写入性能。测试的话,要么 至少3节点tikv要么 修改副本数为1.
kevinsna
(Ti D Ber P O Zcnp Ja)
4
在使用tiup部署时,只要您指定的IP地址是连接到万兆网卡的IP,通常TiDB集群会自动使用该网卡进行数据传输
1、部署架构可以先采用混布,即每台机器1个tidb,1个tikv和1个tiflash,测试期间发现组件有瓶颈可以动态扩容。
2、指定万兆的ip即可
3、TiBigdata非官方项目,谨慎使用。
因为目前想的是,数据入库前要做预处理,但通过JDBC目前看性能不太够,目前还是考虑直接写kv的方案。我也在考虑用TiSpark去测测,这个好像是官方的项目。
实在不行只能写完落文件,然后用官方的import工具试试。
有猫万事足
7
你这3个问题,我建议先满足写入。
因为假设你想使用tiflash,它也是需要从tikv复制数据的。
如果写入的要求达不到,加入tiflash会让情况变得更糟,写入io和优化变得更加麻烦。