|NO.Z.00077|——————————|BigDataEnd|——|Hadoop&PB级数仓.V06|——|PB数仓.v06|总结|
一、项目总结与回顾
## --- 数据仓库概念
~~~ 数据仓库是一个面向主题的、集成的、相对稳定的、反映历史变化的数据集合,用于支持管理决策。
~~~ OLAP(数据仓库)与OLTP(数据库)的区别;
~~~ 数据仓库分层:ODS、DWD、DWS、ADS
## --- 为什么要分层:
~~~ 清晰的数据结构
~~~ 将复杂的问题简单化
~~~ 减少重复开发
~~~ 屏蔽原始数据的异常
~~~ 数据血缘的追踪
## --- 数据仓库建模:维度建模、ER建模:维度建模的4个步骤:
~~~ 选择业务
~~~ 定义粒度
~~~ 选定维度
~~~ 确定事实
## --- 集群的规划:
~~~ 集群可以做水平扩展
~~~ 初始时可依据数据量估算集群规模
~~~ 框架版本的选型:CDH国内选用最多的版本

二、数据采集模块
## --- 数据采集模块
~~~ Flume采集日志数据、DataX采集业务数据(数据的全量或增量);
~~~ Flume组成、Put事务(Source到Channel是Put事务)、Take事务(Channel到Sink是Take事务)
~~~ Taildir Source:断点续传、监控多目录。
~~~ Flume1.6以前需要自己自定义Source记录每次读取文件位置,实现断点续传。
~~~ File Channel:数据存储在磁盘,宕机数据可以保存。但是传输速率慢。
~~~ 适合对数据传输可靠性要求高场景,比如,金融行业;
~~~ Memory Channel:数据存储在内存中,宕机数据丢失。传输速率快。
~~~ 适合对数据传输可靠性要求不高的场景,比如,普通的日志数据;
~~~ Kafka Channel:减少了Flume的Sink阶段,提高了传输效率;
~~~ HDFS Sink:如何避免小文件(HDFS文件的滚动方式)
## --- Flume自定义拦截器:
~~~ initialize 初始化
~~~ intercept(Event event) 处理单个Event【实现的重点】
~~~ intercept(List events) 处理多个Event
~~~ close 方法
~~~ 设置Agent JVM heap为4G或更高,部署在单独的服务器上;
~~~ -Xmx与-Xms设置一致,减少内存抖动带来的性能影响,设置不一致容易导致频繁full gc;
三、主题分析模块【重点】
## --- 主题分析模块
~~~ 会员活跃度分析、广告业务分析、核心交易分析;
~~~ Json数据的处理、动态分区、拉链表、宽表(逆规范化)、Tez引擎(缺点:对资源要求高)
~~~ ODS、DWD、DWS、ADS、DIM各层模型如何建立;



## --- 调度系统
## --- 元数据管理数据、数据质量监控(扩展)
## --- 数据可视化
Walter Savage Landor:strove with none,for none was worth my strife.Nature I loved and, next to Nature, Art:I warm'd both hands before the fire of life.It sinks, and I am ready to depart
——W.S.Landor
分类:
bdv014-PB离线数仓
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· DeepSeek 开源周回顾「GitHub 热点速览」