数据流处理

流数据源

流数据用于许多行业。严格来说,实际上每一个数据都可以被认为是一个流。下面列出了一些最流行的用例:

  1. 物联网传感器数据。工业机械、消费电子产品、农业。
  2. 跟踪网站上的用户。在线商店、价格比较门户。
  3. 监控。系统健康状况、资源利用率、流量跟踪系统。
  4. 汽车行业。 车辆跟踪、路线信息。
  5. 金融交易。 欺诈检测、贸易监控和管理。

有界数据与无界数

有界数据是有限的并且具有离散的开始和结束。您可以将有界数据与批处理相关联。例如,每天收集公司的销售数据。然后每周、每月、甚至每年都会上传到数据库。运行分析以便获得数据洞察并通过批处理创建输出。

无界数据是无限的,没有离散的开始或结束。无界数据通常与流处理相关。例如,传感器不断收集有关温度、速度、位置等的现实数据。数据收集永远不会停止。这是一个24小时连续的过程。

我们将在本文中讨论无界数据和流处理。

什么是流处理?

流处理 结合了无限数据的收集、集成和分析。流处理连续提供无限的数据,而不是等待批处理作业在一天或一周结束时完成。

“流处理”和“批处理”的目的截然不同。批处理非常适合分析趋势,而流处理非常适合一次分析和处理一个事件。

想象一下您正在连接到某个数据流。数据作为永无休止的事件流自然到达。因此,处理是连续执行的,您无法控制数据何时到达。它只是在收集数据时发生。

数据正在高速传入。因此,通常情况下,流处理中的数据分析比批处理系统中的数据分析要简单得多,因为处理需要时间和资源。流处理的最高优先级是尽快处理数据。

数据流的特征

  1. 尽管可以从事件源获取大量数据,但数据记录通常很小。这是一些 JSON、CSV、XML 格式的结构化数据。通常,单个记录的大小不超过几千字节。我们不是在谈论兆字节或千兆字节。
  2. 数据量可能非常大。您可能会收到大量需要处理的消息到达系统。
  3. 数据分布不均匀。例如,您正在跟踪城市中移动的车辆。很可能,晚上系统上不会有太多负载,因为没有人开车。但在早上的高峰时段,巨大的山峰正等待着您。
  4. 与事件发生的时间相比,数据到达目的地的顺序 可能不正确。通常,数据是按顺序收集的。但在现实世界中,当数据通过网络或分布式消息代理传输时,与实际事件发生时相比,它最终可能会在消费者应用程序中乱序处理数据。因此,系统的设计必须能够正确处理这个问题。

在许多情况下,正如上面高峰时段的例子一样,实时数据对于决策的价值会随着时间的推移而减弱。

例如,您正在监控交通状况并希望看到经过的汽车。您处理这些数据的速度越快,您就越能部署这种时间紧迫的情况。您正在努力保持这条道路畅通以增加过往车辆的数量。随着时间的推移,你的反应能力会下降。反应和做出紧急决策的能力取决于收集数据的速度。

核心流处理工作流程概述

过滤在将数据保存到磁盘之前减少内存中的数据量。

让我们回到我们关于车辆监控的例子。想象一下在高峰时段有多少辆汽车到达道路上的某个地点。让数千辆汽车在一秒钟内通过是相当昂贵的。也许您只对特定类型的车辆(SUV 或卡车)感兴趣。您可以在工作流程中过滤此数据,然后将其提交到磁盘。另一个将按位置过滤。我们可能想收集整个国家的数据,但实际上,我们可能只对分析某些特定领域感兴趣。

组织通常只想从整个数据集中收集一种场景的数据集,因此过滤至关重要。

丰富:

数据丰富是指连接无限数据,并将第一方或第三方数据添加到数据集中,然后将其存储在磁盘上。

为什么您想要实时丰富数据而不是在仓库中丰富数据?

在高峰时段交通示例中,如果您实时丰富数据,则可以在活动期间立即做出正确的决策。假设您正在丰富仓库中的数据。在这种情况下,您可以在事件发生后对其进行丰富,或者您甚至可能需要执行复杂的位置和时间搜索来查明当时的情况,这是一个昂贵得多的选择。

当从传感器传输小块数据时,无需存储所有数据来做出明智的决策。在大多数情况下,存储中仅存储一定时间内多个传感器的平均值就足够了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

千源万码

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值