流媒体框架简介

流媒体框架简介——让你了解更多

了解在评估和比较流媒体技术时应考虑的一些关键特征。

Joao Branco在Unsplash上的照片

介绍

随着数据架构变得越来越成熟,流媒体不再被视为奢侈品,而是一种在不同行业中具有广泛应用的技术。由于技术和资源限制,批处理一直是处理和交付应用程序的首选方式,但随着基于Apache的分布式系统中微批处理和原生流媒体框架的发展,高规模流媒体现在变得更加易于访问(图1)。

一些使用流媒体系统的示例应用包括:处理交易数据以检测异常情况,天气数据,远程位置的物联网数据,地理位置跟踪等。

图1:批处理 vs 流媒体(图像由作者提供)

实时 vs 微批处理

流媒体处理系统有两种关键类型:微批处理和实时处理:

  • 在实时流处理中,每条记录在其可用时立即处理。这可能会导致系统具有非常低的延迟,能够立即利用传入的数据(例如,在金融系统中检测欺诈交易)。
  • 在微批处理系统中,数据点不是一个接一个地处理,而是以小块进行处理,然后在特定的时间间隔或达到最大存储大小后返回。这种方法更注重高吞吐量而不是低延迟。最后,如果有兴趣在输出结果到存储系统之前进行复杂操作(例如聚合(如最小值,最大值,平均值),连接等),微批处理系统特别有用。因此,微批处理可以被认为是在执行例如小时报告任务(例如平均气温等)时纯流媒体和批处理之间的一个很好的折衷。