现代企业的需求和要求正在以戏剧性的方式转变。因此,旧的“批处理”模式(每天一次大的更新,查询速度慢)正在让位于更细化、更高频率的实时更新(每秒多次更新,查询速度快),从而带来更新鲜的数据和更快的洞察力。
除了分析性的洞察力,实时数据基础设施正在促成一类新的应用,可以在数据发生变化时做出反应。这涉及到数据堆栈的每一个部分,从数据摄取,到业务分析,到机器学习和人工智能。
随着用例的发展,支持它们的基础架构也在不断发展。走向实时并不是调整旧数据系统那么简单,在许多情况下,基础设施已经从头开始重写,以实现实时工作负载。
在现代数据栈中,实时基础设施和工具可以采取多种形式:
- 以高频率和高容量将小数据包从A处流向B处(例如:Apache Kafka、Redpanda、Apache Pulsar)。
- 通过流处理工具过滤和转换对流数据(例如:Apache Flink、Apache Samza、Decodable)。
- 实时分析,让分析师在低延迟的情况下获得对业务查询的最新反馈(例如:Materialize、ClickHouse、Tinybird)。
- 实时或在线机器学习模型,不断适应和学习数据,并实时生成预测(例如:Tecton)。
今天,将这些不同的系统组合起来仍然是是一件棘手的事情。但是,进行这些投资的组织将获得丰厚的回报,主要是实现传说中的“实时企业”,成为一个能够感知和应对其业务中发生的事件和变化的组织。
对实时性感兴趣但又在寻找灵感?少数下一代组织已经成为早期采用者,并为新加入者开辟了采用路径。
我最喜欢的一些大规模实时数据基础设施的案例研究包括:
- Netflix:在七年的时间里,Netflix将其流数据的使用案例从0增加到2000多个,同时在数据摄取、移动、分析和运营处理以及机器学习方面建立了实时能力。今天,Netflix的实时基础设施每天处理数十万亿次的事件。
- Uber:Uber的实时基础设施每天产生多个PB级的数据和数万亿条信息,这些数据持续不断从Uber司机、乘客和其他用户那里收集而来。Uber的移动应用、内部仪表盘、机器学习模型和临时数据探索工具都有实时用例。
现在是实时的时代,这场革命发生得比你想象的要快。眨眼间,你可能会错过它。