流式处理和批处理的区别

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

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

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

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

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

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

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

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/483810.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Go语言中的`sync`包同步原语

通过sync包掌握Go语言的并发 并发是现代软件开发的基本方面,而Go(也称为Golang)为并发编程提供了一套强大的工具。在Go中用于管理并发的基本包之一是sync包。在本文中,我们将概述sync包,并深入探讨其最关键的同步原语…

linux 安装svn客户端

安装命令:yum install -y subversion 客户端使用命令: svn help 帮助命令 svn checkout --help 子帮助命令 转载于:https://www.cnblogs.com/wesky/p/10607649.html

AdaBoost 算法 入门

AdaBoost 是一种迭代算法,其核心思想是针对同一个训练集训练不同的分类器,即弱分类器,然后把这些弱分类器集合起来,构造一个更强的最终分类器。算法的适应性在于前一个基本分类器分错的样本会得到加强,加权后的全体样本…

流数据模型

流数据模型和传统的关系模型(Relational Model)有几个重要的区别: (1) 数据流的数据元素持续到达 (2) 流数据处理系统不能控制数据元素到达的顺序 (3) 数据流有可能是无限…

第一单元总结

一、作业分析 第一次作业 与后两次作业相比,第一次作业非常简单,仅要求对由常数项和幂函数组成的多项式求导。但由于缺少面向对象编程经验,我在这次作业中栽了不少跟头。 (1)度量分析 在第一次作业中,我还没…

牛客16437 买铅笔

题目描述 P老师需要去商店买n支铅笔作为小朋友们参加NOIP的礼物。她发现商店一共有 3 种包装的铅笔,不同包装内的铅笔数量有可能不同,价格也有可能不同。为了公平起见,P老师决定只买同一种包装的铅笔。 商店不允许将铅笔的包装拆开&#xff0…

牛客16426 玩具谜题

题目描述 南有一套可爱的玩具小人,它们各有不同的职业。 有一天,这些玩具小人把小南的眼镜藏了起来。小南发现玩具小人们围成了一个圈,它们有的面朝圈内,有的面朝圈外,如下图: 这时 singer 告诉小南一个谜…

ubuntu 更新软件源

ubuntu 更新软件源 问题:正在等待packagekitd退出 解决办法:systemctl stop packagekit 或者 systemctl disable packagekit转载于:https://www.cnblogs.com/xpylovely/p/10611394.html

牛客16438 回文日期

date1 input() date2 input()""" 判断是否是闰年 """ def isLeap(year):if (year%4 0 and year%100 ! 0) or (year%400 0):return 1else:return 0""" 判断是否是回文数 """ def isPalindrome(year):for i in …

Codeforces 1139F Dish Shopping 树状数组套平衡树 || 平衡树

Dish Shopping 将每个物品拆成p 和 s 再加上人排序。 然后问题就变成了, 对于一个线段(L - R), 问有多少个(li, ri)满足 L > li && R > ri, 这个东西可以直接树状数组套平衡树维护。 但是这个题目有个特殊性,因为排…

牛客16494 生活大爆炸版石头剪刀布

题目描述 石头剪刀布是常见的猜拳游戏:石头胜剪刀,剪刀胜布,布胜石头。如果两个人出拳一样,则不分胜负。在《生活大爆炸》第二季第8集中出现了一种石头剪刀布的升级版游戏。升级版游戏在传统的石头剪刀布游戏的基础上,…

codeforces 1073E

题解: 考虑数位DP,状压出现过的数字集合S,f ( l , x , S , pz , lim )表示到第 l 位,数字为x, 数字集合为S ,是否为前导0,是否贴上界 然后同时定义g为该状态下的数字和,利用 10^(l-1) * f(l , x…

时空AI技术:深度强化学习在智能城市领域应时空AI技术:深度强化学习在智能城市领域应用介绍...

来源:海豚数据科学实验室作者:京东科技 时空AI团队深度强化学习是近年来热起来的一项技术。深度强化学习的控制与决策流程必须包含状态,动作,奖励是三要素。在建模过程中,智能体根据环境的当前状态信息输出动作作用于环…

牛客16500 珠心算测试

题目描述 珠心算是一种通过在脑中模拟算盘变化来完成快速运算的一种计算技术。珠心算训练,既能够开发智力,又能够为日常生活带来很多便利,因而在很多学校得到普及。 某学校的珠心算老师采用一种快速考察珠心算加法能力的测验方法。他随机生成…

读书笔记007:《伤寒论》- 手少阴心经

手少阴脉起心中,下膈直与小肠通,支者还从肺系走,直上喉咙系目瞳。直者上肺出腋下,臑后肘内少海从,臂内后廉抵掌中,锐骨之端注少冲。多气少血属此经,是动心脾痛难任,渴欲饮水咽干燥&a…

牛客16585 统计单词数

题目描述 一般的文本编辑器都有查找单词的功能,该功能可以快速定位特定单词在文章中的位置,有的还能统计出特定单词在文章中出现的次数。 现在,请你编程实现这一功能,具体要求是:给定一个单词,请你输出它在…

牛客21312 神秘餐馆

题目描述 一家神秘餐馆准备开放N天,牛牛 和 牛妹听到这个消息后,准备尽可能多的一起去吃午饭 餐馆有M道菜,牛牛和牛妹每次来只允许点一道菜,如果在第i天买了第j道菜 那么第i7天也只能买第j道菜 第i天第j道菜的价格为price[i][j] …

LeetCode 206 Reverse Linked List 解题报告

题目要求 Reverse a singly linked list. Example: Input: 1->2->3->4->5->NULL Output: 5->4->3->2->1->NULL 题目分析及思路 给定一个单链表,要求得到它的逆序。可以使用列表对链表结点进行保存,之后新建一个列表对链表…

牛客21297 手机号码

题目描述 给你一个整数n表示手机号码的位数 再给你m个字符串表示保留的号码,比如911 110 120等 问你一共有多少的手机号码不以保留号码开头 n, m map(int, input().split()) s [] for _ in range(m):s.append(input())sum pow(10, n) num 0for i in range(m):flag Falsefo…

mysql报错:Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggre

原因: https://blog.csdn.net/fansili/article/details/78664267 解决办法: 1:查看mysql配置文件位置 [rootlocalhost ~]# ps -ef | grep mysql mysql 838 1 0 02:21 ? 00:00:00 /usr/sbin/mysqld --defaults-file/etc/my.…