我们有很多的应用,现在我们收集日志到 clickhouse 中。通过 grafana 查询,根据 project_name ,app_name 选择要查询的应用,而且在 grafana 我们有一个 text input 框,可以输入想要查询的关键字。 比如我选择了 project_name = "aaa", app_name = "bbb",并且在 text input 框中输入了一个关键字 ccc 。上面的条件会组合成 sql 去 clickhouse 中查询:
select project_name, app_name, message from target_table where project_name = "aaa" and app_name = "bbb" and message like '%ccc%' and message_time >= $_from and message_time <= $_to;
在 clickhouse 中这种查询的响应速度还是比较快的。查询一天的数据量(3 亿多),最多几秒钟就行了。
但是在 loki 中,对 3000 万行日志的查询就会很慢。如果查关键字,那么 loki 服务就直接 oom 了。还有,我发现 count 日志也是如此,loki 会比 clickhouse 慢很多很多。
如果是有关键字的查询,loki 的性能就会很差吗?还有,count 也是很慢的。
1 rushssss 160 天前 建议先看看文档了解情况,首先 loki 最核心的问题是没有真的 full-text search ,所以你的场景会慢。 其次在没有 full-text search 的情况,对 label 的 high cardinality 问题也处理不了 |
![]() | 2 rrfeng 160 天前 via Android 先说说 ck 用了几台机器,loki 用了几台 |
![]() | 3 crysislinux 160 天前 via Android 用 Loki 肯定要限制 label 和时间去查,全局查肯定会慢,毕竟要全部扫 |
![]() | 4 RedisMasterNode 159 天前 via Android 试试 VictoriaLogs |
6 xhwdt OP @RedisMasterNode 感谢,我试下先 |
7 xhwdt OP @crysislinux 有这种需求,需要在较长时间内通过关键字查找 |