00:00
本节课我们来讨论一下大数据计算引擎flink生态圈的组件。首先了解一下什么是flink flink是一个分布式计算引擎,通过使用flink可以计算有边界数据流和无边界数据流。这里的有边界数据流其实就是批处理的离线数据,而无边界数据流就是流处理的实时数据。在Flink中提供了data set API和data stream API两套接口,分别处理这两种数据流。Flink与Spark一样在内存中完成计算并进行状态的管理,通过检查点的使用,可以把内存中计算的数据进行持久化存储,以保证数据的安全,并支持容错的功能。持久化存储可以是文件,也可以是数据库。了解到了flink的基本知识后,下面讨论一下flink生态圈中的组件。Flink生态圈可以被划分成三层,分别是平台层、核心层和最上层的API library, 首先讨论一下平台层,平台层研究的是可以把flink部署成哪些模式。一共。
01:00
Phone有三种不同的模式。第一种是local模式,它是指可以在IDE的开发环境中直接运行flink应用程序,因此这种模式多用于开发和测试环境。第二种式cluster的集群模式,它具体分为两种不同的模式,Stand alone的独立运行模式和ER2运行模式。在Stand alone的独立运行模式下,Flink集群不需要依赖其他组件独立运行任务和管理集群资源,在err模式下,Flink需要ern来管理资源和调度任务。Yan是hadoop2.0版本后提供的一个资源和任务调度的平台。那你知道在实际的生产环境中,哪种集群模式使用更广泛吗?欢迎评论区留言讨论。第三种是云原生模式,该模式可以把flink运行部署在docker和K8S的容器中,有了平台的支持,就可以部署flink了。在Flink生态圈中,最核心的是它的执行引擎runtime,它是一个分布式流处理引擎,主要用于流处理的实时计算。
02:00
因此,使用flink处理P处理离线数据时,系统的吞吐量不如Spark。在执行引擎runtime之上是data set API和data stream API, 它们分别用于处理离线数据和流失数据。为了简化应用程序的开发,Flink对API进行了封装,从而提供了一系列的库。首先看一下P处理拈,Flink提供了flink table和flink SQL用于支持SQL,还提供了ML lep和jelly用于支持机器学习和图计算。这里需要重点讨论一下机器学习。机器学习本质上讨论的是算法,它是人工智能的基础,与大数据体系没有本质上的联系,因为大数据体系研究的是数据的存储和数据的计算,只是在大数据体系中支持机器学习的算法。再看一下流处理拈,基于data stream API, 同样可以使用flink table和flink SQL同时还提供CP,已支持复杂事件处理CP式complex event process.
03:00
Link的缩写CDC是变更数据捕获,它是一种ETL数据采集方式,全称是change data capture. 现在你已经知道flink生态圈中的组件,那你知道哈duop生态圈和Spark生态圈都有哪些组件吗?欢迎评论区留言讨论好了记得点加号关注赵玉强老师。
我来说两句