如何将Apache Druid,Flink和Cassandra用于实时流分析和用户评分?


在Deep.BI上,我们能够解决的最艰巨的挑战之一就是如何基于数十亿个数据点实时提供可自定义的洞察力,这些洞察力可以从单个角度全面扩展到多达数百万个用户。
在Deep.BI,我们跟踪用户习惯,参与度,产品和内容性能-每天处理多达TB或数十亿个事件。我们的目标是根据来自各种自行创建维度的自定义指标提供实时见解。该平台允许执行来自各个领域的任务,例如使用实时分析来调整网站,运行AI优化的营销活动,基于用户参与度和AI评分提供动态的付费专区,或者基于数据异常和自适应模式来检测欺诈行为。
为此,我们的系统收集了每个用户交互。我们使用Apache Flink进行事件丰富,自定义转换,聚合和提供机器学习模型。然后,Apache Druid将处理后的数据编入索引以进行实时分析和Apache Cassandra来传递结果数据。历史数据也存储在Apache Hadoop上,用于机器学习模型的构建。使用低级DataStream API,自定义流程功能和广播状态,我们构建了一个抽象的功能工程框架,该框架提供了可重复使用的模板来进行数据转换。这使我们能够轻松定义用于分析和机器学习的领域特定功能,并将批处理数据预处理管道从Apache Spark上部署的Python作业迁移到Flink,从而显着提高性能。

更详细内容点击标题进入。