flink有什么优势值得大家这么热衷

news/2024/7/20 15:20:31 标签: 大数据, 运维, 内存管理

flink 通过实现了 Google Dataflow 流式计算模型实现了高吞吐、低延迟、高性能兼具实时流式计算框架。

同时 flink 支持高度容错的状态管理,防止状态在计算过程中因为系统异常而丢失,flink 周期性地通过分布式快照技术 Checkpoints 实现状态的持久化维护,使得即使在系统停机或者异常情况下都能计算出正确的结果。

具体的优势有以下几点

(1) 同时支持高吞吐、低延迟、高性能

是目前开源社区中唯一一套集高吞吐、低延迟、高性能三者于一身的分布式流式数据处理框架。

像 Apache Spark 也只能兼顾高吞吐和高性能特性,无法做到低延迟保障

Apache Storm 只能支持低延时和高性能特性,无法满足高吞吐的要求

(2)支持事件时间(Event Time)概念

在流式计算领域中,窗口计算的地位举足轻重,但目前大多数框架窗口计算采用的都是系统时间(Process Time),也是事件传输到计算框架处理时,系统主机的当前时间。

Flink 能够支持基于事件时间(Event Time)语义进行窗口计算,这种基于事件驱动的机制使得事件即使乱序到达,流系统也能够计算出精确的结果,保持了事件原本产生时的时序性,尽可能避免网络传输或硬件系统的影响。

(3)支持有状态计算

所谓状态就是在流式计算过程中将算子的中间结果保存在内存或者文件系统中,等下一个事件进入算子后可以从之前的状态中获取中间结果,计算当前的结果,从而无须每次都基于全部的原始数据来统计结果,极大的提升了系统性能

(4)支持高度灵活的窗口(Window)操作

Flink 将窗口划分为基于 Time 、Count 、Session、以及Data-Driven等类型的窗口操作,窗口可以用灵活的触发条件定制化来达到对复杂的流传输模式的支持,用户可以定义不同的窗口触发机制来满足不同的需求

(5)基于轻量级分布式快照(Snapshot)实现的容错

Flink 能够分布运行在上千个节点上,通过基于分布式快照技术的Checkpoints,将执行过程中的状态信息进行持久化存储,一旦任务出现异常停止,Flink 能够从 Checkpoints 中进行任务的自动恢复,以确保数据爱处理过程中的一致性

(6) 基于 JVM 实现的独立的内存管理

Flink 实现了自身管理内存的机制,尽可能减少 JVM GC 对系统的影响。
通过序列化/反序列化机制将所有的数据对象转换成二进制在内存中存储,降低数据存储大小的同时,更加有效的利用空间,降低GC带来的性能下降或任务异常的风险

(7)Save Points 保存点

对于 7 * 24 小时运行的流式应用,数据源源不断的流入,在一段时间内应用的终止有可能导致数据的丢失或者计算结果的不准确。

比如集群版本的升级,停机运维操作等。

值得一提的是,Flink 通过Save Points 技术将任务执行的快照保存在存储介质上,当任务重启的时候,可以从事先保存的 Save Points 恢复原有的计算状态,使得任务继续按照停机之前的状态运行。

还在等什么,快去使用 flink 吧

转载于:https://www.cnblogs.com/nicekk/p/11546447.html


http://www.niftyadmin.cn/n/1105182.html

相关文章

为文件夹的右键菜单添加运行DOS的命令(转)

点击“开始”,选择“运行”,在“运行”中键入“regedit”,我们可以运行注册表编辑器,依次打开各键,在HKEY_CLASSES_ROOTDirectoryshell下创建一个主键“CommandPrompt”,在右边窗口中把“默认”的值改为:“…

在本地使用Flash的问题(转)

在本地使用Flash的问题(转)[more]我前段时间在自己的FC5系统里安装了FLASH7,进入网页实验了一下,效果还不错。:)但是现在又有新问题了:我希望在桌面建立一个FLASH的起动器,以后欣赏下载到本地的FLASH的时候…

一文带你了解 Flink 的基本组件栈

作为实时计算领域的佼佼者,Flink 的基本组件同样值得我们仔细研究。 Flink 同样遵循着分层的架构设计理念,在降低系统耦合的同时,也为上层用户构建 Flink 应用提供了丰富且友好的接口。 Flink 分层架构,从上到下依次是&#xff1a…

修改鼠标右键弹出菜单(转)

我们单击C,D盘,然后点击鼠标右键,会弹出菜单(如左图),要把Browse wth ACDSee去掉,点击“开始”,选择“运行”,在“运行”中键入“regedit”,我们可以运行注册表编辑器,依次打开各键,…

Ubuntu--smb配置文件详解

smb配置文件说明 共享参数: Share Definitions [共享名] comment 任意字符串 说明:comment是对该共享的描述,可以是任意字符串。 path 共享目录路径 说明:path用来指定共享目录的路径。可以用%u、%m这样的宏来代替路径里的uni…

Linux下的网关设置(转)

Linux下的网关设置(转)[more]  本文将主要介绍如何利用一台Linux主机来实现网关的功能。例如,现在有两个子网,网络地址分别是10.119.140.0和202.114.3.0。由于两个子网的网络地址不相同,为了使两个子网中的计算机可以互相访问,有…

[算法]PriorityQueue的应用

1. 数据流中的第K大元素 题目 设计一个找到数据流中第K大元素的类(class)。注意是排序后的第K大元素,不是第K个不同的元素。 你的 KthLargest 类需要一个同时接收整数 k 和整数数组nums 的构造器,它包含数据流中的初始元素。每次调…

为右键菜单增加“在新窗口中打开”的命令(转)

我们往往在“文件夹选项”中选择了在同一窗口中打开文件夹 ,但我们在浏览文件夹的时候,有时想比较一下两个文件夹的不同,或想开多个窗口浏览文件夹内容,可用到下面的方法。逐渐展开到HKEY_LOCAL_MACHINESoftwareCLASSESDirectorys…