流式处理(Stream Processing) 是针对 批处理(Batch Processing)来讲的,即它们是两种截然不同的数据处理模式,具有不同的特点,适用于不同的应用场合。不能简单地认为其中一种数据处理模式优于另一种数据处理模式。

对于批处理来讲,首先数据被不断地采集,保存到数据库中,然后进行分析处理(包括SQL查询)。批处理适用于对大量数据(High Volume)进行处理的场合。人们需要等到整个分析处理任务完成,才能获得最终结果。由于需要处理的数据集大小以及计算机系统的计算能力的差异,整个过程有时需要耗费相当长的时间,即获得最终分析处理结果的延迟较大。批处理是最通用的数据处理模式。传统的关系数据库系统、Hadoop以及Spark大数据处理平台等,都采用了这样的数据处理模式,或者以该处理模式为主。由于需要完整地保存整个数据集,并且在上面进行分析处理,比起流式数据处理系统,人们需要投入更多的硬件资源。

批处理系统可以存取已经入库的所有数据,人们可以对数据进行复杂深入的分析,分析处理的延迟以分钟或者小时计。批处理作业(Job)一旦提交,则一直运行,直到获得最终结果或者失败退出,无需用户人工干预。这些作业在整个数据集或者某个子集上执行一系列的分析,产生分析结果。在性能方面,批处理系统主要考虑系统的吞吐能力,而不是单个分析处理任务的处理延迟(Latency)。

在流式数据处理模式里,数据持续到达,系统及时处理新到达的数据,并不断产生输出。处理过的数据一般丢弃掉,当然也可以保存起来。流式数据处理模式强调数据处理的速度(Velocity)。部分原因是数据产生的速度很快,需要及时进行处理。由于流式数据处理系统能够对新到达的数据进行及时的处理,所以它能够给决策者提供最新的事物发展变化的趋势,以便对突发事件进行及时响应,调整应对措施。

实时(Real-time)数据处理系统和流式数据处理系统:
对于批量数据处理系统,当分析处理的响应速度快到一定的程度,这样的系统可以称为实时系统(响应时间达到毫秒级)或者交互式系统(响应时间达到秒级或者亚秒级)。

流式数据处理模式对每个新到达的数据元素(Data Element)或者一个比较小的时间窗口内的数据元素进行计算。数据上的计算或者分析处理相对来讲是比较简单的,不是复杂的分析处理。完成分析处理的时间,需要达到实时或者接近实时的响应时间要求。不同数据元素上的分析处理,相互之间是独立的。流式数据处理系统要尽快完成数据的处理。上游数据源无须等待下游流式数据处理系统处理完毕。

即席查询(Ad-Hoc):
即席查询是用户根据自己的需求,灵活的选择查询条件,系统能够根据用户的选择生成相应的统计报表。即席查询与普通应用查询最大的不同是普通的应用查询是定制开发的,而即席查询是由用户自定义查询条件的。

例如: 在一个电子商务网站,把每月(周、天)所有的交易记录保存起来,然后在固定的时间点,比如月末(周末、日终)进行一些SQL查询分析,这种处理模式就是批处理模式。当然,在系统不断累积交易记录的过程中,比如在某天的中午,管理者想看一下某个商品最近一段时间的销售量,他临时发起一个SQL查询,这个查询就称为即席查询。

流式处理和批处理的区别相关推荐

  1. 从Storm和Spark 学习流式实时分布式计算的设计

    转自:http://www.dataguru.cn/thread-341168-1-1.html 流式实时分布式计算系统在互联网公司占有举足轻重的地位,尤其在在线和近线的海量数据处理上.而处理这些海量 ...

  2. 流式计算、实时计算和离线计算

    流式计算和批处理计算 实时计算和离线计算 以水为例,Hadoop可以看作是纯净水,一桶桶地搬:而Storm是用水管,预先接好(Topology),然后打开水龙头,水就源源不断地流出来了. 1.流式计算 ...

  3. Flink流式计算从入门到实战 一

    文章目录 一.理解Flink与流计算 1.初识Flink 2.Flink的适用场景 3.流式计算梳理 二.Flink安装部署 1.Flink的部署方式 2.获取Flink 3.实验环境与前置软件 4. ...

  4. 流式数据、批式数据、实时数据、历史数据的区别

    1.流式数据.批式数据.实时数据.历史数据的区别: 根据数据处理的时效性,大数据处理系统可分为批式(batch)大数据和流式(streaming)大数据两类. 其中,批式大数据又被称为历史大数据,流式 ...

  5. 流式计算strom,Strom解决的问题,实现实时计算系统要解决那些问题,离线计算是什么,流式计算什么,离线和实时计算区别,strom应用场景,Strorm架构图和编程模型(来自学习资料)

    1.背景-流式计算与storm 2011年在海量数据处理领域,Hadoop是人们津津乐道的技术,Hadoop不仅可以用来存储海量数据,还以用来计算海量数据.因为其高吞吐.高可靠等特点,很多互联网公司都 ...

  6. CSS之布局系列--静态布局、流式布局、自适应布局、响应式布局的概念及区别

    原文网址:CSS之布局系列--静态布局.流式布局.自适应布局.响应式布局的概念及区别静态布局.流式布局.自适应布局.响应式布局的概念及区别_IT利刃出鞘的博客-CSDN博客 简介 说明 本文介绍前端的 ...

  7. 区分实时数据、离线数据、流式数据以及批量数据的区别

    数据处理延迟的长短 实时数据处理:毫秒级别 离线数据处理:小时 或 天 级别 数据处理的方式角度 流式数据处理 批量数据处理 区分 其实实时数据处理不等同与流式数据处理,批量数据处理也不等同于离线数据 ...

  8. 大数据凉了?No,流式计算浪潮才刚刚开始!

    AI 前线导读:本文重点讨论了大数据系统发展的历史轨迹,行文轻松活泼,内容通俗易懂,是一篇茶余饭后用来作为大数据谈资的不严肃说明文.本文翻译自<Streaming System>最后一章& ...

  9. Flink 流式计算在节省资源方面的简单分析

    本文由小米的王加胜同学分享,文章介绍了 Apache Flink 在小米的发展,从 Spark Streaming 迁移到 Flink ,在调度计算与调度数据.Mini batch 与 streami ...

最新文章

  1. webpack 实践笔记(一)--- 入门
  2. 语言兔子繁衍问题讲解_二年级思维数学:位置问题,找到重复部分是解题关键...
  3. saber 2012安装教程
  4. synchronized的用法
  5. 如何在WebPart中访问页面上的其他WebPart
  6. python中类变量的访问方式_在Python中,如何访问类方法中的“静态”类变量
  7. ArcMAP获取要素的外包多边形
  8. python3安装setuptools步骤_python在Windows下安装setuptools(easy_install工具)步骤详解
  9. MongoDB 数据集合导出 与 导入
  10. 隐式人体表示生成虚拟视点+构建关节点的3D神经模型
  11. iconfont 图标不显示
  12. #1.4股市预测数学的产生原因
  13. D1: elevater design
  14. 从大数据的角度看 房价一定会下跌
  15. 系统辨识(六):最小二乘法的修正算法
  16. asp.net 中 使用ajax 和浏览器的关系
  17. 使用ajax报405错误
  18. 在 Linux 下安装 GNU ARM 工具链
  19. JAVA-广联达-小朋友站队问题
  20. mysql百万数据建索引时间_mysql百万的数据快速创建索引

热门文章

  1. LeetCode 1379. 找出克隆二叉树中的相同节点(二叉树遍历)
  2. html 获取鼠标在canvas上的坐标,html5-canvas 检测鼠标在画布上的位置
  3. Python编程中一些异常处理的小技巧
  4. Flink中的状态管理
  5. httpd 分页_更改 Apache httpd.conf 配置文件
  6. 不卷学术了,这次卷一波NLP实战落地经验
  7. 数据有偏差,照样能学对!20年前就有这么强的算法了?
  8. 论文浅尝 | Wordly Wise(WoW) - 用于语音视觉知识问答的跨语言知识融合模型
  9. 深度学习中不得不学的Graph Embedding方法
  10. docker镜像打包save,载入load,启动run