搭建了TiDB数据库集群。不过性能上没有达到我想要的秒级返回的结果。不过也能接收了,毕竟我们主要是用于olap,进行历史数据的分析。时间旧一点也是可以接受的。 之前的历史数据是存放在oracle中的,由于历史数据很多,导致查询很慢,公司现在只能查询3个月前的订单(热数据),对于3个月后的订单,就不给客户查询了。 我想到的一种解决办法就是分库分表,比如每一家门店对应一个数据库,每一个月对应一个数据库中的一个表,这样数据量就能大大的减少。 但是这样带来的问题也是显而易见的,比如新开了一家门店,就要建立一个新的数据库。关闭了一个门店的话。。。。这样虽然能解决问题,但是也带来了维护成本的提高,扩展性的不足。
TiDB则在大数据时代,为中小型企业带来了便利,能够平滑由原来的应用过渡到大数据时代。不需要上haddop,spark等大数据。
优化的话,主要是参数优化。 用的是tikv用的8g内存和200g的g的硬盘
[rocksdb.defaultcf]
write-buffer-size = "512MB"
block-cache-size = "4GB"
[rocksdb.writecf]
write-buffer-size = "256MB"
block-cache-size = "2GB"
[rocksdb.raftcf]
write-buffer-size = "128MB"
block-cache-size = "1GB"
defaultcf主要读内存优化;writecf写内存优化;raftcf负责日志复制优化。 优化过后,性能大概提升了一半吧。
tikv和pd是可以通过配置文件来配置一下参数的,tidb只能像mysql那样用命令来配置了。