IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> Spark流式计算概念 -> 正文阅读

[大数据]Spark流式计算概念

流式计算

特点:
数据是?界的(unbounded)
数据是动态的
计算速度是?常快的
计算不??次
计算不能终?

相对应,离线计算特点:
数据是有界的(Bounded)
数据静态的
计算速度通常较慢
计算只执??次
计算终会终?

在?数据计算领域中,通常所说的流式计算分为了实时计算准实时计算。所谓实时计算就是来?条记录(?个事件Event)启动?次计算;?准实时计算则是介于实时计算和离线计算之间的?个计算,所以每次处理的是?个微?的批次

常?的离线和流式计算框架

常?的离线计算框架

  1. mapreduce
  2. spark-core
  3. flink-dataset

常?的流式计算框架

  1. storm(jstorm)
    第?代的流式处理框架,每?成?条记录,提交?次作业。实时流处理,延迟低。
  2. spark-streaming
    第?代的流式处理框架,短时间内?成mirco-batch,提交?次作业。准实时,延迟略?,秒级或者亚秒
    级延迟。
  3. flink-datastream(blink)
    第三代的流式处理框架,每?成?条记录,提交?次作业。实时,延迟低。

SparkStreaming基本?作原理

接收实时输?数据流,然后将数据拆分成多个batch,?如每收集1秒的数据封装为?个batch,然后将每个batch交给Spark的计算引擎进?处理,最后会?产出?个结果数据流,其中的数据,也是由?个?个的batch所组成的。
Spark Streaming提供了?种?级的抽象,叫做DStream,英?全称为Discretized Stream,中?翻译为“离散流”,它代表了?个持续不断的数据流。DStream可以通过输?数据源来创建,?如Kafka、Flume、ZMQ和Kinesis;也可以通过对其他DStream应??阶函数来创建,?如map、reduce、join、window。
DStream的内部,其实?系列持续不断产?的RDD。RDD是Spark Core的核?抽象,即,分布式式弹性数据集。DStream中的每个RDD都包含了?个时间段内的数据。
在这里插入图片描述
对DStream应?的算?,?如map,其实在底层会被翻译为对DStream中每个RDD的操作。?如对?个DStream执??个map操作,会产??个新的DStream。但是,在底层,其实其原理为,对输?DStream中每个时间段的RDD,都应??遍map操作,然后?成的新的RDD,即作为新的DStream中的那个时间段的?个RDD。

底层的RDD的transformation操作。
还是由Spark Core的计算引擎来实现的。Spark Streaming对Spark Core进?了?层封装,隐藏了细节,然后对开发?员提供了?便易?的?层次的API。
在这里插入图片描述

常?的流式计算框架比较

Storm V.S. SparkStreaming V.S. Flink
在这里插入图片描述
对于Storm来说**:**
1、建议在需要纯实时,不能忍受1秒以上延迟的场景下使?,?如实时计算系统,要求纯实时进?交易和析时。
2、在实时计算的功能中,要求可靠的事务机制和可靠性机制,即数据的处理完全精准,?条也不能多,?条也不能少,也可以考虑使?Storm,但是Spark Streaming也可以保证数据的不丢失。
3、如果我们需要考虑针对?峰低峰时间段,动态调整实时计算程序的并?度,以最?限度利?集群资源(通常是在?型公司,集群资源紧张的情况),我们也可以考虑?Storm

对于Spark Streaming来说**:**
1、不满?上述3点要求的话,我们可以考虑使?Spark Streaming来进?实时计算。
2、考虑使?Spark Streaming最主要的?个因素,应该是针对整个项?进?宏观的考虑,即,如果?个项?除了实时计算之外,还包括了离线批处理、交互式查询、图计算和MLIB机器学习等业务功能,?且实时计算中,可能还会牵扯到?延迟批处理、交互式查询等功能,那么就应该?选Spark?态,?Spark Core开发离线批处理,?Spark SQL开发交互式查询,?Spark Streaming开发实时计算,三者可以?缝整合,给系统提供?常?的可扩展性。

对于Flink来说**:**
?持?吞吐、低延迟、?性能的流处理
?持带有事件时间的窗?(Window)操作
?持有状态计算的Exactly-once语义
?持?度灵活的窗?(Window)操作,?持基于time、count、session,以及data-driven的窗?操作
?持具有Backpressure功能的持续流模型
?持基于轻量级分布式快照(Snapshot)实现的容错
?个运?时同时?持Batch on Streaming处理和Streaming处理
Flink在JVM内部实现了??的内存管理
?持迭代计算
?持程序?动优化:避免特定情况下Shuffle、排序等昂贵操作,中间结果有必要进?缓存

  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2021-08-24 15:37:49  更:2021-08-24 15:39:31 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/23 12:54:44-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码