V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
dtgxx
V2EX  ›  问与答

大佬们,如何解决快速筛选、快速多维统计查询在一起的需求

  •  
  •   dtgxx · 2023-04-11 19:51:09 +08:00 · 467 次点击
    这是一个创建于 380 天前的主题,其中的信息可能已经有所发展或是发生改变。
    我们想法是数据双写到 Clickhouse+ES 里面,界面用户给定一些模糊匹配条件,我们通过 ES 去全文搜索,然后把搜索结果的 ID 去关联 Clickhouse 里面的主键索引,再用 Clickhouse 的 sql 关联后统计。

    但是遇到个问题,ES 检索后的数据集可能到 20 亿,这么多的 ID ,怎么能和 Clickhouse 去关联呢,这个架构是怎么做比较好呢,把这 20 亿数据导入到 Clickhouse ,然后关联? 这样界面响应的时效性是不是很慢了。 很多平台都支持几十亿的数据快速检索+准确统计,有没有大佬知道大致是怎么实现的呢?

    v 吧大佬多,真心请教下各位大佬!
    4 条回复    2023-04-11 22:44:09 +08:00
    MockingLee
        1
    MockingLee  
       2023-04-11 19:54:02 +08:00
    数仓预聚合吧
    dtgxx
        2
    dtgxx  
    OP
       2023-04-11 19:59:41 +08:00
    @MockingLee 抱歉大佬,我表达的不太清晰,ES 和 Clickhouse 里面存储的都是明细数据,最终查询出的结果也是要明细+明细的聚合,用户在界面可能输入千奇百怪的查询条件,基本没啥固定的搜索条件,然后我们在 ES 几百个字段里面去分别模糊匹配,然后再返回 ID 到 Clickhouse 里面去聚合。这块在数仓做预聚合,感觉不咋好实现。
    guangming3055
        3
    guangming3055  
       2023-04-11 21:05:09 +08:00
    ES 检索后的数据集可能到 20 亿,这个数量级能导出来吗,我觉得只能用 ES 的聚合
    dtgxx
        4
    dtgxx  
    OP
       2023-04-11 22:44:09 +08:00
    @guangming3055 嗯呢,确实是有这个感觉,但是 es 聚合性能确实没够用,而且有数据不准确的问题。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   996 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 20:10 · PVG 04:10 · LAX 13:10 · JFK 16:10
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.