【发布时间】:2018-10-14 14:26:15
【问题描述】:
我有一个业务需求,我需要有 12 小时的窗口,并且需要查询流数据。 12 小时内大约有 1 亿条记录。我还需要维护所有事件的顺序。 我使用 Streams API 构建了一个系统来执行此操作。音量似乎不是问题。真正的问题是企业想要搜索事件和状态商店,几乎每个状态商店。搜索不是基于键,而是基于值中的某些字段。
我尝试了 KSQL 服务器并尝试使用 25M 记录的数据集运行简单查询,并且在 8 小时窗口内运行查询需要将近 240 秒才能完成搜索。 (现在我使用的是单个节点和单个分区。)
我正在考虑的另一种方法是将 Elastic Search 连接到流和状态存储,然后对它们运行查询,但我不确定存储每个状态存储的数据是否是一个好的解决方案与否。
我只是想从社区那里获得意见,了解在这种容量和低响应时间要求的情况下查询流的最佳方法是什么。
我还是 Kafka 新手,期待建议和指导。
【问题讨论】:
标签: apache-kafka apache-kafka-streams ksqldb