我在ClickHouse中有一个事件表(MergeTree),想同时运行很多小插入操作。但是服务器会过载并变得无响应。此外,一些插入操作会丢失。在ClickHouse的错误日志中有很多记录:
01:43:01.668 [ 16 ] <Error> events (Merger): Part 201 61109_20161109_240760_266738_51 intersects previous part
有没有一种方法可以优化这些查询?我知道我可以使用批量插入来处理某些类型的事件。基本上,运行一个包含多个记录的插入,clickhouse 可以很好地处理。但是,其中一些事件,如点击或打开,无法以这种方式处理。
另一个问题是:为什么 clickhouse 决定存在相似的记录,而实际上它们并不存在?在插入时存在类似的记录,其具有与索引中相同的字段,但其他字段不同。
我也会时不时收到以下错误:
Caused by: ru.yandex.clickhouse.except.ClickHouseUnknownException: ClickHouse exception, message: Connect to localhost:8123 [ip6-localhost/0:0:0:0:0:0:0:1] timed out, host: localhost, port: 8123; Connect to ip6-localhost:8123 [ip6-localhost/0:0:0:0:0:0:0:1] timed out
... 36 more
大多数情况下,在构建项目时运行针对ClickHouse数据库的测试。