Flink的概念及特点是什么,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
ApacheFlink是一个面向分布式数据流处理和批量数据处理的开源计算平台,它能够基于同一个Flink运行时,提供支持流处理和批处理两种类型应用的功能。
现有的开源计算方案,会把流处理和批处理作为两种不同的应用类型,因为它们所提供的SLA(Service-Level-Aggreement)是完全不相同的:流处理一般需要支持低延迟、Exactly-once保证,而批处理需要支持高吞吐、高效处理。
Flink从另一个视角看待流处理和批处理,将二者统一起来:Flink是完全支持流处理,也就是说作为流处理看待时输入数据流是无界的;批处理被作为一种特殊的流处理,只是它的输入数据流被定义为有界的。
Apache Flink是一个面向分布式数据流处理和批量数据处理的开源计算平台,它能够基于同一个Flink运行时,提供支持流处理和批处理两种类型应用的功能。
现有的开源计算方案,会把流处理和批处理作为两种不同的应用类型,因为它们所提供的SLA(Service-Level-Aggreement)是完全不相同的:流处理一般需要支持低延迟、Exactly-once保证,而批处理需要支持高吞吐、高效处理。
Flink从另一个视角看待流处理和批处理,将二者统一起来:Flink是完全支持流处理,也就是说作为流处理看待时输入数据流是无界的;批处理被作为一种特殊的流处理,只是它的输入数据流被定义为有界的。
Flink首先支持Local的执行环境,所有模块组件都可以运行在同一个JVM进程中,主要是方便开发调试,使用者在开发Flink应用时可以在IDE环境中方便的本地运行或是设置断点进行代码调试。此外Flink支持Standalone模式进行分布式部署,Flink的JobManager和TaskManager可以部署在多台节点上,组成一个集群,管理集群资源,执行分布式任务。同时Flink也可以委托YARN进行资源管理,Flink的Job通过YARN申请资源。最后,Flink也支持Google和Amazon的公有云平台,Flink的Job可以直接提交到公有云上执行。用户开发的同一个Flink业务逻辑,无需任何修改,可随时迁移到不同的执行环境执行。
Client负责提交Flink作业,首先将用户的Flink Job翻译并优化成图状的Dataflow,并提交给JobManager,JobManager将Flink DataFlow切分成分布式task,并按照集群的资源配置调度task,将task分发到TaskManger执行。TaskManager可能有多个,执行具体的task,且负责task与task之间的数据传输。不同于MapReduce,Flink的TaskManger类似于Spark的Executor,task以线程而非进程的粒度在TaskManager中执行。在Standalone模式下,JobManger和TaskManager负责资源的管理,而在YARN模式下,JobManager相当于ApplicationMaster, 而TaskManger相当于Executor。只是负责task的调度与执行。
最底层级的抽象仅仅提供了有状态流。实际上,大多数应用并不需要上述的底层抽象,而是针对 核心API(Core APIs) 进行编程,比如DataStream API(有界或无界流数据)以及DataSet API(有界数据集)Table API 是以 表 为中心的声明式DSL,其中表可能会动态变化(在表达流数据时)。
Client负责提交Flink作业,首先将用户的Flink Job翻译并优化成图状的Dataflow,并提交给JobManager,JobManager将Flink DataFlow切分成分布式task,并按照集群的资源配置调度task,将task分发到TaskManger执行。TaskManager可能有多个,执行具体的task,且负责task与task之间的数据传输。不同于MapReduce,Flink的TaskManger类似于Spark的Executor,task以线程而非进程的粒度在TaskManager中执行。在Standalone模式下,JobManger和TaskManager负责资源的管理,而在YARN模式下,JobManager相当于ApplicationMaster, 而TaskManger相当于Executor。只是负责task的调度与执行
关于Flink的概念及特点是什么问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注亿速云行业资讯频道了解更多相关知识。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。