什么是流数据?

按照定义,数据流必须实时传递顺序信息。流数据应用依赖于一致、高度可用的流,即使在活动高发时也是如此。传递和/或使用能够满足这些特性的数据流可能会成为难题。

数据流中的原始数据量可能会迅速增加。例如,股市暴跌期间股票交易产生的新数据突然呈指数级增长,大型体育赛事期间海量的社交媒体发布量,或系统失灵期间大量的日志活动。数据流在设计时必须考虑可扩展性。即使在活动高发期间,数据流仍需优先考虑适当的数据排序、数据一致性和可用性。数据流在设计时,还必须确保能在部分系统出现故障时保持耐久性。

在跨分布式混合云环境中,流数据集群需要注意一些特殊事项。典型的流数据代理是有状态的,必须在重启时保留。扩展时需仔细编排,确保消息传递服务按预期运行,且不会丢失任何记录。

为什么要使用流数据服务?提供复杂、实时、高可用性的流数据平台的难点在于,可能会消耗大量资源。它需要相应的专业技能和硬件,而这通常超出了企业内部 IT 组织的能力范围。

因此,许多流数据用户通常会选择托管云服务,将基础架构和系统管理工作交给服务提供商负责。这种做法有助于企业专注于打造核心竞争力,而非管理繁杂的流数据解决方案。