想把 clickhouse 用在公司游戏业务的埋点统计上. 数据库用起来效果很好, 但是给上司演示的时候发现 clickhouse-serv 这个进程会长时间占用 cpu 资源, 占用大概 5-10%的浮动, 我虚拟机的配置是 i7 8700k, 分了 12 个核心, 8G 内存, ssd 储存.
我有了解过 clickhouse 的后台进程会不断进行合并, 排序数据, 但是实际情况是已经十几个小时没有更新过数据了, 但是这个进程还是不断占用 cpu 资源
我知道这点资源其实根本不算什么, 但是公司服务器资源申请困难, 上司说找不到原因就不用这个数据库了
1
newtype0092 2020-12-17 15:33:03 +08:00
我们都是 mysql 数据过亿查询效率太低的时候才切到 clickhouse 上的,除了插入和修改成本比较高,需要从业务流程想办法规避,其他没遇到太大问题。
|
2
alexanderchiu 2020-12-17 15:34:11 +08:00
cpu 占用高,你是在一直插入数据吗?
另外可以用阿里云的 clickhouse,后台会有开发为你提供技术建议和解决 cpu 占用过高问题 |
3
hsk9044 OP @newtype0092 mysql 应该是直接否了, 这边做的埋点业务基本不需要更新, 只要插入, 并且需要做复杂的聚合统计. 现在基本只有 clickhouse 能满足需求了, 但是这个占用资源的现象很费解
|
4
hsk9044 OP @alexanderchiu 不是 cpu 占用高, 而是 clickhouse 的后台进程长时间都会占用部分的 cpu 资源, 其实已经很久没插入数据库了
|
5
monsterxx03 2020-12-17 15:45:37 +08:00
没用过, 不过一般思路是 gdb attach 上去看看有哪些活跃线程, 看看对应代码大致在做什么.
这么点 CPU 占用率, 很正常啊, 就算没数据插入, 后台线程扫描也是有开销的, 看看有什么对应参数限制线程池大小或扫描平率. |
6
alexanderchiu 2020-12-17 15:46:25 +08:00 1
@hsk9044 我记得如果即使是不插入数据的话,其实 mergeTree 还是会定期根据一定时间间隔来继续合并压缩数据。合并策略有按日期合并。可能这部分会一直占用一定的 cpu 。或者你可以去钉钉的 clickhouse 技术交流群咨询下,阿里云 clickhouse 页面有群号。
|
7
alexanderchiu 2020-12-17 15:47:57 +08:00
顺便打个广告哈哈 可以尝试试下阿里云的 clickhouse (利益相关:在他们的 ck 组实习过 他们会有技术专家专门为你定制方案 /排查问题
|
8
DoctorCat 2020-12-17 15:51:49 +08:00
|
9
dbskcnc 2020-12-17 15:53:56 +08:00
可以试试 doris https://github.com/apache/incubator-doris
|
10
hsk9044 OP |
11
aladdindingding 2020-12-17 16:34:31 +08:00
按照什么分区的 我们都是按照天分区的
|
12
hsk9044 OP @aladdindingding 按天+埋点类型, 不过目前分区也不多, 大概 100 个左右
|
13
tikazyq 2020-12-17 17:08:49 +08:00
不要叫老哥,叫老大
|
14
lancelee01 2020-12-17 17:21:09 +08:00
ClickHouse 进程占用 CPU 是因为里面有很多线程池,正常的行为活动吧,包括和 ZK 交互、检查旧分区这些。同时你是没有写入业务数据,不代表没有系统数据,比如 ClickHouse 的各种 log 表,自己会写,也会 merge,移除旧的数据判断。所以,占用 CPU 是正常行为,难不成你不进行操作,数据库就得装死冬眠吗。。。哈哈哈
|
15
hsk9044 OP @lancelee01 精辟
|
16
f6x 2020-12-17 17:24:56 +08:00
看曲线算平均值把. 有些 db 平时 cpu 很低, 突然一下子 300%才真是不能用.
|
17
DoctorCat 2020-12-17 17:56:57 +08:00
There are two types of background actions:
merging of data parts; fetching of data part from replica. 那是不是 issue 中 alexey-milovidov 提到的第二种原因呢? @hsk9044 |
20
cholerae 2020-12-17 19:57:11 +08:00
perf 一下不就完了
|
21
levelworm 2020-12-18 05:24:18 +08:00 via Android
数据量多大多频繁啊?
|