温馨提示:文本由机器自动转译,部分词句存在误差,以视频为准
00:00
本节课我们来讨论一下大数据平台的lambda架构。首先了解一下大数据体系,Hadoop主要用于离线数据存储和离线数据计算,Kafka是一个消息系统,主要用于存储流式的实时数据,Spark是基于内存的大数据计算引擎,但Spark中没有真正的实时计算。Flink与Spark类似,都是大数据计算引擎,但flink的流失计算是一种真正的实时计算。有了这些大数据生态圈组件,就可以构建起大数据平台,从而解决海量数据存储和计算的问题。而构建大数据平台时有两种架构体系,Lambda架构和CAPA架构。Lambda架构是主流的方式,这里重点讨论一下lammeda架构。在Lammeda架构中分为两套系统,批处理的离线计算系统和流处理的实时计算系统。Map producedduce Spark KH flink data set主要用于批处理的离线计算系统2、storm Spark streaming和flink data stream主要用于流处理的实时。
01:00
计算系统了解到了这些基本的知识,接下来讨论lamda架构的体系结构。从下往上可以将lamda架构划分成五层,分别是数据原层、数据采集层、大数据平台层、数据仓库层,简称数仓层。最上面是应用层。首先讨论最底层的数据源层。数据源层提供原始数据,主要包含离线数据和实时数据两种不同的类型。这里的离线数据主要指已经存在的历史的数据,而实时数据是相对于计算任务而言还不存在的未来的数据。有了数据源的数据就可以通过数据采集层来实现ETL的数据采集。Scope主要用于采集关系型数据库中的数据,Film主要用于采集文本类型的日志数据。CDC的全称是change data capture翻译成中文是变更数据捕获,通过CDC可以实时采集数据库中的数据。Datatax是阿里巴巴提供的一个开源ETL工具,功能与Co类似。
02:00
Cattle也是一个比较常用的ETL工具,当然这样的ETL工具有很多,为了解决数据源层和数据采集层之间的耦合问题,一般会在中间加上一层数据总线,注意,数据总线不是必须的。通过数据采集层采集到了数据源的数据,就可以构建大数据平台层,这也是整个平台的核心。在Lambda架构中分为两套系统,一套是离线数据仓库,另一套是实时数据仓库。在离线数据仓库中可以使用HDFS和HDS来存储离线数据,计算则可以使用map reduceduce Spark cor或者flink data set完成。为了任务的统一管理和资源的调度,一般会把各种计算任务运行在YA2上。YA2是hadoop2.0版本以后提供的一个资源和任务调度的平台。在大数据体系中,为了简化应用程序的开发,还提供了各种数据分析引擎,也支持使用SQL处理数据,Hive Spark SQL和flink SQL.
03:00
是这样的引擎。讨论完离线数据仓库,再来讨论一下实时数据仓库。在实时数据仓库中可以使用消息系统kafka用来存储实时数据,计算则可以使用storm Spark streaming或者flink data stream完成。目前Storm使用的情况比较少。与离线数据仓库的结构类似,这些计算引擎也都可以运行在Yan之上,同样也支持使用SQL处理数据。有了大数据平台层的支持,就可以创建数据仓库。数据仓库层主要讨论建模的问题,有了数据仓库中的各种模型,最后就可以支撑最上层的应用。现在你已经知道什么是拉姆的架构,那你知道大数据平台的开架构吗?好了,记得点加号关注赵宇强老师。
我来说两句