什么是数据流?——大数据世界中极为重要的过程

数据流定义

想象一条河,河流从哪里开始?河流在哪里?我们对河流的理解本质上是流动的概念。这条河没有开始也没有结束。流数据非常适合于没有离散开头或结尾的数据。例如,交通灯的数据是连续的,没有“开始”或“结束”。数据流是连续而不是分批发送数据记录的过程。

通常,数据流对于在生成数据时的连续流中以小尺寸(通常以千字节为单位)发送数据的数据源类型是有用的。这可能包括各种各样的数据源,例如来自连接设备的遥测,客户使用您的Web应用程序生成的日志文件,电子商务交易或来自社交网络或地理空间服务的信息。

传统上,数据是分批移动的。批处理通常同时处理大量数据,具有长时间的延迟。例如,该过程每24小时运行一次。虽然这可以是处理大量数据的有效方法,但它不适用于流式传输的数据,因为数据在处理时可能是陈旧的。

数据流是时间序列和随时间检测模式的最佳选择。例如,跟踪Web会话的长度。大多数物联网数据非常适合数据流。交通传感器,健康传感器,交易日志和活动日志等都是数据流的理想选择。

此流数据通常用于实时聚合和关联,过滤或采样。通过数据流,您可以实时分析数据,并深入了解各种活动,例如计量,服务器活动,设备地理位置或网站点击。

可以考虑以下实际情况:

金融机构跟踪市场变化并根据配置的约束(例如达到特定股票价值时的卖出)调整客户组合的设置。

电网监控吞吐量并在达到某些阈值时生成警报。

新闻源从各种平台流式传输点击流记录,并使用人口统计信息丰富数据,以便它可以提供与受众人口相关的文章。

电子商务站点流式传输点击流记录以查找数据流中的异常行为,并在点击流显示异常行为时生成安全警报。

数据流挑战

数据流是一种功能强大的工具,但在使用流数据源时,有一些常见的挑战。以下列表显示了数据流时要规划的一些事项:

规划可扩展性。

规划数据持久性。

在存储层和处理层中加入容错。

数据流工具

随着流数据的增长,出现了许多适合与之合作的解决方案。以下列表显示了一些用于处理流数据的常用工具:

亚马逊Kinesis Firehose。Amazon Kinesis是一种托管,可扩展,基于云的服务,允许实时处理大型数据流。

Apache Kafka。Apache Kafka是一个分布式发布 - 订阅消息传递系统,它集成了应用程序和数据流。

Apache Flink。Apache Flink是一种流数据流引擎,为数据流上的分布式计算提供了便利。

Apache Storm。Apache Storm是一个分布式实时计算系统。Storm用于分布式机器学习,实时分析以及许多其他情况,尤其是具有高数据速度的情况。

以上是关于大数据中数据流的一些见解,欢迎广大朋友点评、点赞和转发。

发表评论
留言与评论(共有 0 条评论)
   
验证码:

相关文章

推荐文章

'); })();