数据仓库(Hive/ClickHouse/Doris)设计与开发培训课程
【培训对象】
数据仓库工程师、ETL开发工程师、BI工程师、数据分析师,希望系统学习现代数据仓库的设计与开发技术。
【培训目标】
一、 掌握数据仓库建模理论(如维度建模),能够根据业务需求进行合理的模型设计。
二、 熟练使用Hive进行海量数据的离线处理和ETL,掌握其调优方法。
三、 了解ClickHouse和Doris等MPP数据库的特点,能够利用它们进行高性能的实时OLAP查询分析。
四、 能够设计并构建一套完整的、分层清晰的现代数据仓库,支撑企业BI报表和数据应用。
【培训内容介绍】
一、 数据仓库理论基础:Kimball与Inmon方法论对比、维度建模(事实表、维度表、星型模型、雪花模型)。
二、 数仓分层架构(ODS-DWD-DWS-ADS):每一层的职责、模型设计原则与命名规范。
三、 Hive基础与数据定义:Hive架构、表类型(内部表、外部表)、分区与分桶、文件格式(Text, ORC, Parquet)与压缩。
四、 Hive数据操作与函数:复杂SQL编写、窗口函数、自定义函数(UDF/UDTF/UDAF)开发。
五、 Hive性能优化:SQL优化、join优化、小文件合并、并行执行、CBO优化器、数据倾斜处理。
六、 离线数仓ETL设计与调度:使用SQL和Shell/Python编写ETL任务,通过调度工具(如Airflow)进行任务编排。
七、 ClickHouse架构与核心特性:列式存储、向量化执行、MergeTree引擎家族、分布式表与本地表。
八、 ClickHouse查询与实战:常用SQL语法、物化视图、数据TTL、Join与窗口函数支持,性能调优与监控。
九、 Doris架构与核心特性:MPP架构、向量化执行引擎、数据模型(Duplicate, Unique, Aggregate)、物化视图、Rollup表。
十、 Doris查询与实战:标准SQL支持、高并发查询优化、数据导入(Stream Load, Broker Load)。
十一、 实时数仓构建:结合Flink CDC和Kafka,将实时数据同步至ClickHouse/Doris,构建实时数仓链路。
十二、 实战演练:设计一套电商数仓模型,使用Hive完成离线分层ETL,并将结果数据导入ClickHouse/Doris进行可视化分析。