我对Clickhouse中的自定义分区有几个疑问。背景:我正在尝试在Clickhouse上构建TSDB。我们需要支持非常大的批处理写入和复杂的OLAP读取。
假设我们按月使用标准分区,并且我们的Clickhouse集群中有20个节点。我想知道同一个月的数据会全部流到同一节点还是Clickhouse做一些内部平衡并将同一月份的数据放到几个节点?
如果来自同一月份的所有数据都写入同一节点,那么这对于我们的情况将非常不利。我可能会考虑使用(时间戳,标签)进行修补,其中标签是定义数据源的不同标签。我们的监控系统将每30秒将数据写入TSDB。我们的读取模式通常是单个表范围扫描或在一个列上连接多个表。关于如何自定义分区策略的任何建议?
由于clickhouse不支持二级索引,因此我们将在列上运行选择查询,我认为我应该将那些重要的列放入主键中,因此我的主键可能类似于(时间戳,ip,端口...),关于此设计的任何建议或充分说明clickhouse不支持其他索引(例如其他非主列上的位图索引)的次级索引的原因?
答案 0 :(得分:0)