第一章 数据仓库概念

数据仓库:是为企业提供数据支持,以协助企业制定决策,改进业务流程和提高产品质量等方面的工具。它可以接收多种类型的输入数据,如业务数据,日志数据和爬虫数据等。然后在本项目,只对业务数据统计和分析。

数据仓库:是为企业制定决策,提供数据支持,可以帮助企业,改进业务流程,提高产品质量等。

datax 

flink-cdc  ods --- >dwd  --->dws ---> ads 

ods 是数据仓库中的一个核心组成部分,该层主要用于保存原始数据,完成数据积压,通常反映了企业业务系统中的最新的操作,同时也是进行数据仓库的基础。

dwd :数据明细层 dwd 

DWD层指数据明细层,通常接收数据仓库ODS层的原始数据,并进行清洗、标准化、维度退化、异常数据剔除等操作,进行统一处理,为数据分析提供支持。DWD层一般按照业务主题建模,包含多个维度和事实表,维度表可以用来描述业务数据的特征,而事实表则包含了关键数据指标(如销量、价格等)。

DWS层指数据汇总层,其主要作用是通过聚合和汇总,将DWD层中的数据按照主题进行汇总,形成宽表,进而提升数据分析性能。DWS层通常包含多个宽表,每个宽表都是由多个事实表和维度表经过聚合和分组运算生成的。DWS层中的宽表可以满足特定主题和不同维度的分析需求,减少了对其他表的操作,提升数据分析性能。

数据仓库:并不是数据的最终目的地,而是为数据最终的目的地做好准备,这些准备包括对数据的:备份,清洗,聚合,统计等。

1、项目需求

业务数据采集平台搭建

数据仓库维度建模

分析,交易,理赔等车险核心主题,统计上百个报表指标。

采用即席查询工具,随时进行指标分析。

对集群性能进行监控,发生异常需要报警。

元数据管理

质量监控

权限管理。

二、思考题

项目技术如何选型

框架版本如何选型

服务器使用物理机和云主机

如何确认集群规模


项目框架:主要考虑因素:数据量大小,业务需求,行业内经验,技术成熟度,开发维护成本,总成本预算

数据采集传输:flume,kafka,datax,maxwell,sqoop,maxwall,logstash

数据存储:mysql,hdfs,hbase,redis,mongodb

数据计算:hive,spark,tez,flink,storm

数据查询:preto,kylin,impala,druid,clickhouse,doris

数据可视化:superset,echarts,quickbi,datav

任务调度:dolphinscheduler,azkaban,oozie,ariflow

集群监控:ZABBIX,prometheus

集群监控:zabbix,prometheus

元数据管理:atlas

权限管理:ranger,sentry


系统数据流程设计:


原始数据层:ODS层

公共维度层:DIM层

明细数据层:dwd层

汇总数据层:DWS层

数据应用层:ADS层

每天同步datax mysql 可视化 superset 

框架版本选型:

服务器选型:

服务器选择物理机还是云主机。

物理机:

以128G内存,20核物理cpu,40线程,8THDD和2Tssd硬盘。


如何确认集群规模:(假设:每台服务器8T磁盘,128G内存)

每天日活跃用户100万,每人一天100条:10万*100条=1亿条

每条日志1k左右,每天1亿条:10000000/1024/1024=约100G

半年内不扩容服务器来算:100G*180天=约18T

保存3副本 18T*3 =54T

预留 30%~20% buf=54T/0.7=77T

需要 约8T*10台服务器。

如果考虑数仓分层,数据采用压缩,需要重新计算。