课程简介
基于开源大数据平台数据分析和挖掘实训课程,该是一个理论与实践相结合的课程,阐述大数据主流的系统架构,数据分析。
本课程包含了开源大数据常用的技术Hadoop、Hive、Hbase、Flume和Spark等常用的技术。
本课程是目前基于大数据平台数据分析主流课程,涵盖了基于大数据平台数据分析整个流程和技术。
课程收益
帮助学员了解大数据体系架构基础知识,并掌握基础开发技能、运维技能,能够从事大数据应用项目的开发及运维工作
深度了解主流大数据系统的系统架构,组件交互,及其内核工作与运行机制;
了解大数据平台常用的以希望数据分析和挖掘的技术,如:Hadoop、Hive、Spark等
能够使用大数据平台技术让金融行业的应用落地
课程特点
以主流大数据系统的原理、架构、部署、运维为脉络,分别介绍Hadoop,Spark,Kafka,HBase等主流大数据平台系统;
原理和案例结合,让学员快速掌握常用大数据平台的技术,能够独立使用大数据平台相关的技术实现相关的数据应用。
课程对象
对大数据平台的开发感兴趣的同学、或转型大数据平台的技术人员
课程基础
至少熟悉掌握如下一名程序设计语言:Java,Scala;
了解Linux的常用指令、常用的SQL
对计算机有一定的了解
课程时长
4天(6小时/天)
课程大纲
时间 | 内容 |
Day1 | 第1个主题:大数据生态系统介绍(目的:整体了解开源大数据的技术体系)(1h) 开源大数据技术架构 开源大数据常用组件之间的依赖关系 离线计算框架介绍 —Mapreduce、Hive、Tez、Presto、Kylin 实时查询框架介绍 —NoSQL、Hbase 实时计算框架介绍 —Kafka、Pulsar、Structured Streaming、Flink 内存计算框架介绍 —SparkCore、SparkSQL、PySpark、SparkMllib、SparkR 实时大数据技术介绍 —Flink、ClickHouse、KUDU等 海量日志快速检索架构 —ELK(Elasticsearch、Logstash、Kibana)等 数据湖工具技术介绍 —Iceberg、Hudi和openDelta技术介绍 第2个主题;HDFS分布式存储(目的:掌握分布式存储的原理、架构和常用的应用场景)(2h) HDFS架构介绍 HDFS原理介绍 NameNode功能详解 DataNode功能详 HDFS HA功能详解 HDFS的fsimage和editslog详解 HDFS的block详解 HDFS的block的备份策略 Hadoop的机架感知配置 HDFS的权限详解 Hadoop的客服端接入案例 HDFS Snapshots的应用和原理介绍 课堂实操:HDFS常用命令使用(老师带领学员一起操作)
第3个主题:分布式计算Mapreduce详解(目的:掌握分布式计算的架构和原理、能够使用MapReduce离线批处理数据)(1h) Mapreduce原理 MapReduce流程 剖析一个MapReduce程序 Mapper和Reducer抽象类详解 Combiner详解 Partitioner详解 Tez的原理和架构 Tez的应用场景介绍 Tez和Mapreduce的比较 课堂实操:MapReduce离线日志处理实战、自定义partition实战,MapReduce在银行T+1的数据处理应用 第4个主题:Yarn分布分布式资源详解(目的:掌握Yarn的架构和原理、使用Yarn控制大数据平台的资源)(1h) Yarn的原理和架构 Yarn资源调度策略 Yarn资源调度Fair和Capacity详解 JobHistory的功能介绍 Yarn动态资源的设置 动态分配特定节点给每个应用(MR、Flink、Spark、Hbase等) 基于Yarn的资源控制详解 基于Yarn实现底层SLA的资源分配 课堂实操:使用Yarn配置大数据平台的资源 第5个主题:Hadoop3.0和Hadoop2.0的区别(1h) Hadoop3.0的重要特性介绍 HDFS的功能和性能改进 Yarn的功能和性能改进 Hadoop3.0资源调度的改进和优化 |
Day2 | 第6个主题:Hive数据仓库工具实操(目的:掌握Hive的使用、能够使用Hive基于Hadoop平台进行数据分析和挖掘)(2h) Hive的作用和原理说明 Hadoop仓库和传统数据仓库的协作关系 Hadoop/Hive仓库数据数据流 Hive的MetaStore详解 Hive的基本用法 Hive的server启动 HQL基本语法 Hive的加载数据本地加载和HDFS加载 Hive的partition详解 Hive的存储方式详解 RCFILE、TEXTFILE和SEQUEUEFILE Hive的UDF和UDAF Hive的JDBC连接 Hive3新特性介绍及使用 Hive3 ACID的原理和实操 课堂实操:Hive创建表、Hive加载数据、Hive的分区表、Hive的UDF实验 第7个主题:NoSQL和Hbase实操(目的:NoSQL的应用场景,了解Hbase的数据库的应用场景)(1h) NoSQL介绍 NoSQL应用场景 Hbase的架构原理 Hbase核心概念详解(HMaster、HRegionServer、Store、StoreFile、HFile、HLog和MetaStore) Hbase自带的namesapce和Meta表详解 HBase逻辑视图介绍 HBase物理视图介绍 HBase的RowKey设计原则 HBaseBloomFilter的介绍 Hbase表的设计案例 Hbase运维和优化介绍 课堂实操:hbase企业级使用场景介绍 第8个主题:Sqoop、Flume、kafka和Pulsar实战(目的:掌握大数据平台的数据采集和调度)(2h) Flume架构和应用场景 Flume用用场景 Flume Agent介绍 —Source —Channel —Sink Flume 采集数据到HDFS实战 Flume案例实战 Sqoop架构介绍 Sqoop抽取Oracle和Mysql的数据 Sqoop实战 Kafka的架构 Kafka的功能和应用场景介绍 Kafka的数据发布和订阅应用 Kafka企业级应用架构案例介绍 Pulsar技术架构和应用场景介绍 Pulsar和Kafka的比较 Flume、Sqoop和kafka实际应用的优化点和优化参数 课堂实操:Sqoop抽取Mysql数据到HDFS、Hive和hbase、 Flume采集数据到HDFS 第9个主题Spark技术栈介绍(目的:掌握Spark大数据平台的功能)(0.5h) Spark生态系统架构介绍 Spark Core介绍 Spark SQL介绍 Spark Streaming介绍 Spark 2.0 Structured Streaming介绍 Spark Mllib介绍 Spark Graphx介绍 第10个主题 Spark核心原理和常用功能介绍(目的:掌握Spark大数据平台的功能)(1.5h) Spark的编程模型 Spark编程模型解析 Partition实现机制 RDD的特点、操作、依赖关系 Transformation RDD详解 Action RDD详解 Spark的累加器详解 Spark的广播变量详解 Spark容错机制 lineage和checkpoint详解 Spark的运行方式 Spark的Shuffle原理详解 —Sort-Based原理 —Hash-Based原理 Spark3.0的新特性 Spark DataFrame和DateSet介绍 |
Day3 | 第11个主题:sparkSQL、DataFram和DataSet实战 (2h) Spark SQL原理 Spark SQL的Catalyst优化器 Spark SQL和Hive连接 DataFrame和DataSet应用 Dataframe、DataSet和SQL的比较 SparkSQL parquet格式实战 Spark SQL自定义UDF和UDAF Spark SQL 读取txt、json、csv等文件介绍 Spark SQL 读写关系型数据库介绍(mysql为例) Spark SQL reflect函数介绍 Spark SQL案例实操 课堂实操:SparkSQL数据分析案例实操 第12主题:Python+Spark数据分析和挖掘实战(目的:掌握使用Python和Spark实现数据分析和数据挖掘的使用)(1小时) Python数据分析和挖掘常用技术框架介绍 PySpark的原理和安装 Jupyter的安装和使用 PySpark特征工程构建 基于PySpark实战决策树、贝叶斯、随机森林、聚类等 PySpark的优化 课堂实操:基于PySpark实现信贷模型和用户分群模型 第13个主题:流式计算技术介绍(目的:掌握大数据平台流式计算任务的架构)(1h) Structured Streaming架构和原理介绍 Structured Streaming 功能介绍 Structured Streaming 应用场景介绍 Structured Streaming 实时性介绍 Flink 架构和原理 Flink的功能介绍 Flink的实时性介绍 Structured Streaming和Flink之间的优缺点比较 课堂实操:Kafka+Structured Streaming实时计算实操 第14个主题:Flink技术实战(目的:掌握大数据平台海量数据快速检索的应用的功能和场景)(2h) Flink和Spark的深度比较 Flink中的重要角⾊ 无界数据流与有界数据流 Flink数据流编程模型 Flink的应用场景 DataSet API开发 Flink Accumulators & Counters Flink的分布式缓存 DataStream开发 基于kafka的source操作 基于mysql的source操作 Flink的状态管理 Flink容错 Flink SQL实战 Flink CDC实战 课堂实操:Kafka+FlinkCDC+Flink SQL实战 第15个主题:大数据新技术介绍及发展趋势(目的:掌握目前主流的新技术及应用场景)(1h) ClickHouse架构介绍 ClickHouse功能介绍 Iceberg数据湖工具原理及架构介绍 Hudi数据湖工具原理及架构介绍 FlinkCDC原理及功能介绍 Ozone分布式对象存储原理及功能介绍 Ozone与HDFS的应用场景比较 大数据平台发展趋势介绍 |
Day4 | 第16个主题:大数据平台架构介绍及部署(目的:掌握离线数据平台、实时数据平台和流批一体数据架构)(1h) 离线大数据平台架构介绍 离线大数据平台技术栈介绍 实时大数据平台架构介绍 实时大数据平台技术栈介绍 流批一体数据平台架构介绍 流批大数据平台技术栈介绍 大数据平台部署架构介绍 大数据平台云架构介绍 OLTP与OLAP的应用场景和技术栈介绍 OLTP与OLAP的边界与融合 大数据组件技术选型案例分享 第17个主题:某商业银行企业级数据架构实战(1h) 流批一体数据平台架构实战 数据接入大数据平台 —离线数据接入 —实时的数据接入 数据处理过程 —数据的ETL —数据分层(ODS、DW和DM等) —数据建模 —数据校验 数据应用 —数据离线应用 —数据实时应用 —数据实验室 —数据展示工具(BI工具) 第18个主题:某商业银行企业级一线大数据平台部署实战(2h) 某商业银行700+节点的部署、运维、监控实战 企业级数据平台HDFS feredration实战 企业级大数据平台安全实战 OpenLDAP+SSSD+Kerberos+Ranger 大数据平台多租户、资源隔离案例介绍 大数据平台权限控制实战,HDFS、Hive、Hbase、Yarn Queues、Kafka等组件 大数据灾备/高可用介绍 大数据平台任务统一调度实战介绍 大数据平台任务ETL开发、任务编排、批量作业统一调度等介绍 DevOps/DataOps案例介绍 第19个主题:企业级大数据平台数据治理和数据服务(2h) 大数据体系/数据体系架构及方案 传统数据治理体系介绍 精益数据治理体系方法论介绍 数据资产管理 数据标准管理 数据质量管理 数据安全管理 元数据管理 —数据地图 — 数据血缘 — 数据追溯 企业级指标体系 数据服务体系 数据服务DataAPI 数据产品体系介绍 数据运营体系 第20个主题:新技术项目实战(RDBMS+Kafka+FlinkCDC+FlinkSQL+ES+Kibana):(1h) Docker演示环境介绍 项目需求分析和解决方案设计 流式数仓分层模型设计 1、Flink CDC mysql实战 2、Flink CDC postgres实战 3、Flink CDC Kafka实战 4、Flink CDC ES实现 5、Kibana结果展示 6、RDBMS+Kafka+FlinkCDC+FlinkSQL+ES+Kibana完整项目实战 实操:学员项目实操和问题解决 |