今天看啥  ›  专栏  ›  顶尖架构师栈

CK、ES、RediSearch 谁才是性能之王?

顶尖架构师栈  · 公众号  ·  · 2024-10-22 07:56
    

文章预览

在开发中遇到一个业务诉求,需要在 千万量级的底池数据中筛选出不超过 10W 的数据,并根据配置的权重规则进行排序、打散(如同一个类目下的商品数据不能连续出现 3 次)。下面对该业务诉求的实现,设计思路和方案优化进行介绍。 对“千万量级数据中查询 10W 量级的数据”设计了如下方案: 多线程+CK 翻页方案 ES scroll scan 深翻页方案 ES+Hbase 组合方案 RediSearch +RedisJSON 组合方案 初版设计方案 整体方案设计为: 先根据配置的筛选规则,从底池表中筛选出目标数据 在根据配置的排序规则,对目标数据进行排序,得到结果数据 技术方案如下: ① 每天运行导数任务,把现有的千万量级的底池数据(Hive 表)导入到 Clickhouse 中,后续使用 CK 表进行数据筛选。 ② 将业务配置的筛选规则和排序规则,构建为一个筛选 + 排序对象 SelectionQueryCondition。 ③ ………………………………

原文地址:访问原文地址
快照地址: 访问文章快照
总结与预览地址:访问总结与预览