数据仓库( Data Warehouse ),是为企业制定决策,提供数据支持的。可以帮助企业,改进业务流程、提高产品质量等。
数据仓库的输入数据通常包括:业务数据、用户行为数据和爬虫数据等
业务数据:就是各行业在处理事务过程中产生的数据。比如用户在电商网站中登录、下单、支付等过程中,需要和网站后台数据库进行增删改查交互,产生的数据就是业务数据。业务数据通常存储在MySQL、Oracle等数据库中
用户行为数据:用户在使用产品过程中,通过埋点收集与客户端产品交互过程中产生的数据,并发往日志服务器进行保存。比如页面浏览、点击、停留、评论、点赞、收藏等。用户行为数据通常存储在日志文件中
爬虫数据:通常是通过技术手段获取其他公司网站的数据。(属于灰色地带,在法律边缘徘徊)\\
- ODS层最好理解,基本上就是数据从源表拉过来,进行ETL,比如mysql 映射到hive,那么到了hive里面就是ods层。(有备份的这一种意思)
- ODS 全称是 Operational Data Store,操作数据存储.“面向主题的”,数据运营层,也叫ODS层,是最接近数据源中数据的一层,数据源中的数据,经过抽取、洗净、传输,也就说传说中的 ETL 之后,装入本层。本层的数据,总体上大多是按照源头业务系统的分类方式而分类的。但是,这一层面的数据却不等同于原始数据。在源数据装入这一层时,要进行诸如去噪(例如有一条数据中人的年龄是 300 岁,这种属于异常数据,就需要提前做一些处理)、去重(例如在个人资料表中,同一 ID 却有两条重复数据,在接入的时候需要做一步去重)、字段命名规范等一系列操作
- DWD层可以理解为数据的清洗和沉淀减少复杂程度,主要对ODS数据层做一些数据清洗和规范化的操作。
- DWT:data warehouse Topic 主题数据层,存储的是客观数据,一般用作中间层,可以认为是大量指标的数据层 DWS:data warehouse service 数据服务层,整合汇总成分析某一个主题域的服务数据层,一般是宽表。用于提供后续的业务查询,OLAP分析,数据分发等。
- 用户行为,轻度聚合
- 主要对ODS/DWD层数据做一些轻度的汇总。
- ADS:applicationData Service应用数据服务,该层主要是提供数据产品和数据分析使用的数据,一般会存储在ES、mysql等系统***线上系统使用。
- 我们通过说的报表数据,或者说那种大宽表,一般就放在这里
附录
ETL
- ETL :Extract-Transform-Load,用于描述将数据从来源端经过抽取、转换、加载到目的端的过程。