赞
踩
目录
在正式阅读之前,首先需要理解以下基本概念以帮助你更好的了解数据仓库:
传统数仓:
数仓为什么要分层呢?
所以我们从理论上先来理解分层:
我们来做一个抽象,可以把数据仓库分为下面三个层,即:数据运营层、数据仓库层和数据产品层。
ODS全称是Operational Data Store,操作数据存储。
“面向主题”的数据贴源层,也叫ODS层,是最接近数据源中数据的一层,数据源中的数据,经过抽取、洗净、传输,也就说传说中的ETL之后,装入本层。本层的数据,总体上大多是按照源头业务系统的分类方式而分类的。
这一层是数据仓库的总体,它包含:
公共汇总粒度事实层的表通常也被称为汇总逻辑表,用于存放派生指标数据。
明细粒度事实层的表通常也被称为逻辑事实表。
数据产品层(APP),这一层是提供为数据产品使用的结果数据。
在这里,主要是提供给数据产品和数据分析使用的数据,一般会存放在es、mysql等系统中供线上系统使用,也可能会存在 Hive 或者Druid中供数据分析和数据挖掘使用。
当然在实际中,根据需要我们还可以扩充层次架构:
首先当然是明确需求:
之后就是考虑成本:这里不做建议
然后考虑规模:
之后就是易用性、运维等等
再之后我们搭建数仓分层和引擎架构:
相关技术栈:
可以参考下面的技术选型:
那么这样的数据仓库,sparksql有什么优势呢?
sparksql在其中有自己的架构体系:
最后我们来看一个真实的数仓架构:
写在最后,数据仓库也是很多表组成的,请永远记住什么是数据仓库?
数据仓库,英文名称为Data Warehouse,可简写为DW或DWH。数据仓库,是为企业所有级别的决策制定过程,提供所有类型数据支持的战略集合。它是单个数据存储,出于分析性报告和决策支持目的而创建。 为需要业务智能的企业,提供指导业务流程改进、监视时间、成本、质量以及控制。
更多数据仓库的介绍,请移步:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。