clickhouse学习
先说性能
根据网上提供的压测报告在机器性能最好的情况下(报告没有给配置)
http://www.dbarun.com/clickhouse/clickhouse-distributed-table-performance-pdf/
写入是25万每秒(算上副本同步时间,这里是按照3个分片,每个分片2个副本,这种拓扑来做压测)
而查询则以列式存储的优势达到了PB级别的秒级查询。
说说特点
系统两个特点:
第一,自动平衡分片。
分片的目的是提高吞吐量。
第二,自动副本高可用。
副本的目的是为了高可用。
总得来说,clickhouse就是表级别的hadoop节点。
用户接口
分片和副本对客户端用户是不可见的,系统会提供一个不存储数据的分布式表给客户端用户,客户端用户看来就是一张普通的MYSQL表无异。
说一说意外
如果有节点奔溃了,该片对应的副本就会自动顶上(因为该分片的副本都是实时一致的)。
如果新增分片呢?那么算法的自平衡机制就会,优先给新节点数据,在达到新的平衡前,吞吐量肯定下降,因为压力无法均匀分发。
解决方案,手工调整,但规则复杂。
清空重导,数据量大耗时不现实。
等待自动回复,吞吐量下降。