1.定义
核心是用java和scala编写的框架和分布式处理引擎java api scala api,用于对无界(实时流数据)和有界数据流(离线数据也称为批量数据处理)进行有状态计算
2.数据过程
处理数据过程抽象为三个过程:source ->Transform -> Sink
3.架构设计
4.相关术语
物理部署层-deploy层:负责解决Flink的部署模式问题,
Runtime核心层:是Flink分布式计算框架的核心实现层,负责对上层不同接口提供基础服务。将DataStream和DataSet转成统一的可执行的Task Operator,达到在流式计算引擎下同时处理批量计算和流式计算的目的
API & Libraries层:负责更好的开发用户体验,包括易用性、开发效率、执行效率、状态管理等方面,Flink同时提供了支撑流计算和批处理的接口,同时在这基础上抽象出不同的应用类型的组件库,
5.运行模式
三种运行模式区分点:集群生命周期和资源隔离保证,应用程序的main()方法是在客户端还是在集群上执行
本地运行模式::一个机器启动一个进程的多线程来模拟分布式计算。
standalone模式:运行过程:完全独立的Flink集群的模式,各个环节均Flink自己搞定。并没有yarn、mesos的统一资源调度平台。
集群运行模式ÿ