【云星数据---Apache Flink实战系列(精品版)】:Apache Flink实战基础003--flink特性:流处理,批处理珠联璧合

183 篇文章 0 订阅
86 篇文章 57 订阅

二、流处理,批处理珠联璧合

1.同一个运行时环境,同时支持流处理,批处理

这里写图片描述

1.flink的一套runtime环境,统一了流处理,批处理,两大业务场景
2.flink本质是一个流处理系统,同时它将批处理看出特殊的流处理,因此也能应付批处理的场景

注意:
1.这与spark相反,spark本质是一个批处理系统,它将流处理看成特殊的批处理的。
2.spark-streaming本质是mirc-batch,无论多么mirc依然是batch,因此延时较大。
3.spark的本质是批处理,它将流处理看出无边界的批处理
4.flink的本质是流处理,它将批处理看出有边界的流处理。

2.实现了自己的内存管理机制

这里写图片描述

1.flinK在jvm内部实现了自己的内存管理机制,以提高内存使用效率,防止大规模GC.
2.flink将大规模的数据存放到out-heap内存,以防止在jvm的heap中创建大量对象,而引起大规模GC.

注意:
不知spark是否受到flink的启发,现如今spark也实现了自己的内存管理机制,那就是Tungsten计划。

3.支持迭代和增量迭代

这里写图片描述

1.flinK支持迭代和增量迭代操作(这一特性在图计算和机器学习领域非常有用)
2.增量迭代可以根据计算的依赖关系,优化计算环境,获得最好的计算效率

hadoop MR的迭代计算

这里写图片描述

spark的迭代计算

这里写图片描述

flink的迭代计算

这里写图片描述

flink在迭代计算过程中自动优化

这里写图片描述

spark和Hadoop的迭代计算都是在driver端由用户自己实现的,flink是原生支持迭代计算。这一点上做的比较优秀。

4.支持程序优化

这里写图片描述

1.flink的批处理场景下可以根据计算的依赖关系,自动的避免一些昂贵的不必要的中间操作(诸如:sort,shuffle等)
2.flink会自动缓存一些中间结果,以便后续计算的多次使用,这样能显著的提高效率。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值