文章目录1. 前言2. 大数据生态体系2.1 底层架构HDFS、Yarn、MR的原理及操作2.2 计算引擎核心原理与性能优化2.2.1 Hive2.2.2 Spark2.2.3 Flink3. 数据仓库建设3.1 模型设计数仓分层架构、维度建模与指标体系3.2 数据治理数仓重构、指标归一、存储治理与成本优化3.3 常见问题4. 数据开发与工具4.1 数据采集4.2 数据存储4.3 OLAP引擎4.3.1 Doris/StarRocks4.3.2 Clickhouse4.4 任务调度1. 前言梳理了下现阶段对于数仓优化的浅显理解希望有一天可以成体系优化优先级业务数据链路架构设计→sql实现倾斜、避免非必要的多次关联 →参数引擎能力 →数据结构/udf不追求极致不推荐2. 大数据生态体系2.1 底层架构HDFS、Yarn、MR的原理及操作Hadoop–一文了解HDFSHadoop–一文了解MapReduceHadoop–一文了解YARN2.2 计算引擎核心原理与性能优化优化的思想分而治之并行并行并行移动存储不如移动计算能省就省 数据处理量 ↓→计算负载 ↓ 能拖就拖Shuffle越晚→落盘/分发的数据量 ↓→磁盘/网络开销 ↓2.2.1 HiveHive–一文了解Hive的优化从底层梳理hive–执行计划2.2.2 SparkSpark–一文了解SparkSql的优化从底层梳理Spark–一文了解WebUISpark–一文了解SparkSql的Join策略Spark–一文了解SparkSql参数含义spark–一文搞懂AQESparksql函数spark–Spark源码阅读思路sparksql源码学习-环境安装2.2.3 FlinkFlink–一文了解Flink优化Flink–必知概念Flink–一文了解WebUIFlink–一文了解参数含义3. 数据仓库建设3.1 模型设计数仓分层架构、维度建模与指标体系数仓–一文了解数仓建模规范规范规范表高内聚低耦合核心模型与扩展模型分开模块划分产出时效回刷周期模型清晰易理解模型定位清晰公共逻辑下沉一致性保障成本与性能平衡分区比如分区表根据数据特点构建多级分区字段比如map类型字段的使用数仓相关汇总数仓–理论知识浅谈如何建立数据指标体系3.2 数据治理数仓重构、指标归一、存储治理与成本优化3.3 常见问题数据倾斜数仓–拉链表原理、设计、实现4. 数据开发与工具4.1 数据采集数据抽取优化思路抽取策略全量 → 增量全表 → 核心字段抽数频次传统T1 → 小时级不建议 → hudi等实时落湖Flume、Canal、Kafka、DataX 等工具实现多源数据同步与实时采集。Flume–一文了解FlumeKafka–一文了解KafkaCanal–介绍及原理dataxdatax–分库分表mysql同步数据到hive中4.2 数据存储MySQL、HBase 等关系型与分布式数据库设计与使用。合理的文件数量、文件格式、块大小、压缩等4.3 OLAP引擎Doris、ClickHouse、StarRocks 等实时分析引擎建模与高性能查询优化。Doris与ClickHouse的对比4.3.1 Doris/StarRocksDoris–一文了解DorisDoris–数据表数据模型4.3.2 ClickhouseClickhouse–一文了解Clickhouse4.4 任务调度Azkaban、Airflow 等调度工具