| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 大数据 -> Flink简介与架构设计 -> 正文阅读 |
|
[大数据]Flink简介与架构设计 |
一.Flink简介? ? ? ? 1.简介? ? ?????????????????由Apache软件基金会开发的开源流处理框架 ????????????????其核心是用Java和Scala编写的框架和分布式处理引擎 ????????????????用于对无界和有界数据流进行有状态计算。 ? ? ? ? 2.Flink对于实时与离线的定义????????????????无界数据流:?即为实时流数据 ????????????????有界数据流:即为离线数据,也称为批处理数据 ????????3.Flink的特点特征????????????????被设计为在所有常见的集群环境中运行,以内存速度和任何规模执行计算。 ????????????????能够达到实时流处理引擎的全部标准要求。 ????????????????低延迟、高吞吐量、容错性、窗口时间语义化、编程效率高与运行效果好的用户体验等主要方面。 二.Flink架构设计? ? ? ? 1.架构设计图???????? ? ? ? ? ?2.架构分层设计????????????????物理部署层-deploy层 ????????????????Runtime核心层 ????????????????API &?Libraries层 ????????????????????????API层包括两部分 ????????????????????????流计算应用的DataStream API ????????????????????????批处理应用的DataSet API ????????????????????????统一的API,方便用于直接操作状态和时间等底层数据 ????????????????????????提供了丰富的数据处理高级API,例如Map、FllatMap操作等, ????????????????????????并提供了比较低级的Process Function API ????????3.运行模式????????????????????????本地运行模式????????????????????????standalone模式????????????????????????集群运行模式????????????????????????????????session模式 ????????????????????????????????per-job模式 ????????????????????????????????application模式 ????????????????本地运行模式????????????????????????运行过程:一个机器启动一个进程的多线程来模拟分布式计算。主要用于代码测试 ????????????????standalone模式????????????????????????运行过程:完全独立的Flink集群的模式,各个环节均Flink自己搞定。并没有yarn、mesos的统一资源调度平台。主要是只有纯Flink纯计算的场景,商用场景极少。 ????????????????集群运行模式????????????????????????Flink Session 集群(会话模式) ????????????????????????????????特点:客户端与Flink作业集群相互同步 ????????????????????????????????细节描述yarn-session.sh客户端将 Flink 集群提交给 YARN,但客户端保持运行,跟踪集群的状态。如果集群失败,客户端将显示错误。如果客户端被终止,它也会通知集群关闭。 ????????????????????????Flink Job 集群(per-job模式) ????????????????????????????????注意事项:由于 ResourceManager 必须应用并等待外部资源管理组件来启动 TaskManager 进程和分配资源,所以其实时计算性并没有session模式强,因此 Flink Job 集群更适合长期运行、具有高稳定性要求且对较长的启动时间不敏感的大型作业。Flink Job 集群也被称为 job (or per-job) 模式下的 Flink 集群。 ? ????????????????????????Flink Application 集群(应用模式) ????????????????????????????????该模式为yarn session和yarn per-job模式的折中选择。 ????????????????????????????????工作流程特征说明将各个环节更进一步进行专用化处理,相当于每个FlinkJob都有一套专用的服务角色进程。 ???????? ????????4.运行模式总结????????????????????????应用场景????????????????????????本地布署模式:demo、代码测试场景。 ????????????????????????Session模式:集群资源充分、频繁任务提交、小作业居多、实时性要求高的场景。(该模式较少) ????????????????????????Per-Job模式:作业少、大作业、实时性要求低的场景。 ????????????????????????Application模式:实时性要求不太高、安全性有一定要求均可以使用,普遍适用性最强。 |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
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 16:59:45- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |