什么是流处理

article/2025/9/14 14:28:45

流处理正变得像数据处理一样流行。流处理已经超出了其原来的实时数据处理的范畴,它正在成为一种提供数据处理(包括批处理),实时应用乃至分布式事务的新方法的技术。

1、什么是流处理?

流处理是不断合并新数据以计算结果的动作。在流处理中,输入数据不受限制,并且没有预定的开始或结束。它只是形成一系列事件,这些事件到达流处理系统,例如信用卡交易,网站点击或来自物联网设备的传感器读数。

流是一种数据分发技术,其中数据生产者将数据记录写入有序数据流,数据使用者可以从中按相同顺序读取数据。这是一个简单的数据流图,说明了数据生产者,数据流和数据使用者。

每个数据流产品都对使用案例和要支持的处理技术进行了一系列假设。这些假设导致了某些设计选择,这些选择影响可以使用它们实现的流处理行为的类型。

来自维基百科;

流处理是一种计算机编程范例,等效于数据流编程,事件流处理和反应式编程,它使某些应用程序可以更轻松地利用有限形式的并行处理。 流处理是一项强大的技术,可以扫描来自传感器,信用卡刷卡,点击流和其他输入的大量数据,并几乎即时找到可行的见解。例如,流处理可以检测到包含数百万合法购买的流中的单个欺诈性交易,充当推荐引擎来确定特定客户在实际购物时要显示什么广告或促销,或者计算出最佳价格以用于只需几秒钟即可完成汽车服务。

术语“流处理”是指数据以某些外部系统或多个外部系统产生的事件的连续“流”形式进入处理引擎,并且处理引擎的运行速度如此之快,以至于所有决策都无需停止数据流和首先存储信息。

2、典型用例

流处理正在迅速获得普及并在各种业务领域中找到应用程序。随着证券交易所从场内交易转向电子交易,它在金融行业的首次使用得到了证实。如今,在几乎每个行业中,无论是通过人工活动,机器数据还是传感器数据生成流数据的任何地方,它都变得有意义。假设它起飞了,那么物联网将增加数据的数量,种类和速度,从而导致流处理技术的应用程序急剧增加。

流处理可以解决业务问题的一些用例包括:

  • 网络监控

  • 情报和监视

  • 风险管理

  • 电子商务

  • 欺诈识别

  • 智能订单路由

  • 交易成本分析

  • 定价与分析

  • 市场数据管理

  • 算法交易

  • 数据仓库扩充

3、流处理和Hadoop

大数据架构包含用于实时分析的流处理,以及用于存储各种数据和长时间运行的计算的Hadoop。

Hadoop最初是从MapReduce开始的,后者提供批处理,其中查询耗时数小时,数分钟或最多数秒钟。对于大数据量的复杂转换和计算,这将是非常有用的。但是,对于临时数据探索和实时分析而言,它并不是很好。但是,多家供应商已经进行了改进,并为Hadoop添加了功能,使其不仅具有批处理框架的功能。

DWH,Hadoop和流处理彼此很好地互补。因此,在大数据时代,集成层显得尤为重要,因为您必须组合越来越多的不同接收器和源。

自2016年以来,出现了一个称为Streaming SQL的新想法。我们将一种语言称为“流SQL”,该语言使用户能够编写类似于查询的SQL来查询流数据。现在,几乎所有流处理器都支持流SQL。

4、选择流处理框架

数据流产品有很多,很难知道从哪里开始研究它们,哪些产品可以做什么等等。

在做出决定之前,必须进行典型的评估过程(长清单,短清单,概念证明)。

  • 用于流分析的流处理编程语言

  • 可视化开发和调试,而不是编码

  • 实时分析

  • 监控和警报

  • 支持容错和高度优化的性能

  • 产品成熟度

考虑一下项目需要上述哪些功能。此外,在做出选择之前,必须评估使用框架的成本,生产率,减少的工作量以及产品上市时间。

我们正处于一个数据的时代。在此过程中,时间至关重要,而速度将决定赢家和输家。

当必须快速连续处理数据(即必须实时计算和迅速反应)时,需要进行流处理。这个要求越来越多地出现在各个领域。市场上已经有许多不同的框架和产品。

许多用例需要快速,实时的决策。尽管可以使用数据库或批处理来实现它们,但是使用这种技术只会越来越复杂。相反,流提供了一种更自然的模型来考虑,捕获和实现这些实时流用例。流SQL提供了一种简单而强大的语言来对流用例进行编程。

现实情况是,大多数数据的价值会随着时间而下降。

更多Flink,Kafka等相关技术博文,科技资讯,欢迎关注实时流式计算 公众号后台回复 “电子书” 下载300页Flink实战电子书


http://chatgpt.dhexx.cn/article/uRI4pPrw.shtml

相关文章

嵌入式软件升级方法

一、U盘升级 1.在u盘根目录新建文件夹,命名为‘upgrade’ 2.将软件复制到upgrade文件夹中 3.将u盘插到嵌入式服务器usb口上,断电重启服务器 二、PC工具升级 1.打开PC工具,选中要升级的机器,点击‘素材管理’选项卡&#xff0c…

嵌入式软件架构设计之分层设计

关注、星标公众号,不错过精彩内容 整理:黄工 素材来源:网络 参考来源: https://blog.51cto.com/kenotu/1614390 在正规的项目开发中,项目往往是并行开发的,也就是说硬件设计、底层软件设计、应用软件设计等…

嵌入式系统软件层次结构

文章目录 嵌入式系统软件嵌入式系统软件的层次结构硬件抽象层 嵌入式操作系统嵌入式操作系统——WinCE嵌入式操作系统——VxWorks嵌入式操作系统——Linux嵌入式Linux OS的特点 嵌入式操作系统——uCOS嵌入式操作系统—— PalmOS其他嵌入式操作系统华为鸿蒙系统 嵌入式系统软件…

嵌入式软件开发必备知识体系

嵌入式软件开发学习路线 前言 本章节主要介绍嵌入式软件开发概念以及大致的学习知识点的范围 一、嵌入式软件是什么? 百度百科:嵌入式工程师是指具有C/C语言、汇编语言等基础,熟悉模拟电子技术等硬件知识,了解处理器体系结构&a…

嵌入式开发 | 嵌入式开发设计文档该怎么写?

关注星标公众号,不错过精彩内容 作者 | strongerHuang 微信公众号 | 嵌入式专栏 俗话说,不会写文档的工程师不是好的工程师! 如果你只会写代码,而从不写文档,迟早有一天会“出事”。这不是危言耸听,现实生活…

简单嵌入式系统软件架构

本文为原创,以下链接有比较及时的更新: https://www.yuque.com/docs/share/334f4a3d-2974-49db-8f68-4db6601a0d21?# 《简单嵌入式系统》 引言 本文描述的内容,适用范围是简单嵌入式系统。举一些可能不恰当的例子,如手环、蓝牙…

嵌入式软件设计层级划分概念

嵌入式软件设计层级划分概念 设计过程中体会的细化更新部分: 层级描述备注应用层直接控制应用,比如led_light_on(),led_light_off() 器件层(如果操作复杂可进一步划分为器件应用层和器件驱动层)比如:实现led_light_on …

浅议嵌入式软件测试

近年来,随着嵌入式系统的功能和复杂性不断增加,其开发时间和成本也随之不断上升。对于安全关键领域的嵌入式系统和软件来说,其稳定性和可靠性往往需要通过大量的测试和验证来保证。 01.一般软件测试vs嵌入式软件测试 嵌入式软件测试针对嵌入…

嵌入式程序设计思路

项目做的多了,深切地体会到架构的重要性。 俗话说,没有好的架构,移植和复用是件很痛苦的事,只能重复的造轮子。特别是嵌入式的代码,如果应用层中间穿插着驱动层的代码,维护起来是一件相当痛苦的事情。 这…

嵌入式应用软件架构设计

要做到嵌入式应用的代码逻辑清晰,且避免重复的造轮子,没有好的应用架构怎么行。 如果没有好的架构,移植将会是一件很痛苦的事情。 如果没有好的架构,复用是最大的难题,没法更大限度的复用原有的代码。 如果没有好的架…

嵌入式软件设计(1)--概述

嵌入式软件的定义及特点 嵌入式系统的定义 嵌入式系统是以应用为中心,以计算机技术为基础,软硬件可裁剪、功能、可靠性、功耗严格要求的专用计算机系统。 其中要说明的几个点是 1. 嵌入式系统是专用系统,而不是通用系统,其往往…

嵌入式软件设计必看书籍

提高C语言编程能力 以上4本书籍可以提高C语言编程能力,深入理解C语言指针用法,深入理解C语言标准。 提高软件架构设计能力 以上2本书籍掌握以下知识: 1、软件设计原则。 2、软件设计模式。 3、软件设计构架。 4、软件设计思维。 提升对RTO…

嵌入式软件架构的设计

嵌入式软件架构的设计 大多数嵌入式程序员学习编程,都是从开发板的附带例程开始。之后工作也会继续参考那些例程,很多编程习惯、方式也会受之影响。 其实开发板式的编程方式与工作中实际需求的并不完全一致。 开发板的通常卖给初学者,注重…

嵌入式软件设计(stm32快速上手)

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 有很多的培训机构在培训嵌入式的时候,一上来会讲很多的理论知识。其实这个时候要是能通过实操帮助学员快速入门、快速上手、快速看到效果,或许这才是最重要的。 1、安装mdk软件 类…

举例说明嵌入式框架该如何分层

关注、星标公众号,直达精彩内容 素材来源:https://blog.csdn.net/weixin_46185705/article/details/122536374 整理:技术让梦想更伟大 | 李肖遥 前言 为了能够使得产品得到更好的开发速度与以后更好的迭代和移植,框架分层是很有必…

嵌入式软件架构设计

如何设计一个好的软件架构,如何提高软件的扩展性,移植性,复用性和可读性? 很多做嵌入式开发的朋友经常会遇到这种情况:一个项目软件设计完成了,客户提出了一些新的功能需求。这时侯如果客户新需求不多&…

《嵌入式软件设计方法》--设计原则

设计原则(SOLID) 使用各个原则的首字母组成了一个单词:SOLID。 SRP:Single Responsibility Principle,单一职责原则;OCP:Open Closed Principle,开闭原则;LSP:Liskov Substitution Principle,…

嵌入式软件设计之设计模式

文章目录 前言1.设计模式之适配器模式2.设计模式之单例模式3.设计模式之命令模式4.设计模式之门面模式 前言 在嵌入式软件设计过程中,也会用到一些设计模式,所以说设计模式并不是面向对象语言的专利,下面我通过查资料以及自己的思考总结的几…

2、【已解决】Oracle错误问题(ORA-03113)

在执行一条sql时出现了如下问题: 处理方案网上找了一下日志,说是备份日志满了的原因; 通过以下方法看了下错误日志信息: 1、export TIME_STYLE%Y-%m-%d %H:%M:%S #格式化文件日期,便于查找错误文件 2、sqlplus &qu…

搭建ADG过程中复制报错 RMAN-03009 ORA-03113

搭建ADG过程中复制报错 RMAN-03009 ORA-03113 猜测主备之间网络路由过多导致。。。 开启mrp进程报错 发现数据文件是主库ASM的路径,备库是单机的 switch database to copy; 报错RMAN-6571 report schema;switch database to copy; select name from v$datafile;s…