数仓概念汇集

1、什么叫数据仓库?
数据仓库是一个面向主题的(Subject Oriented)、集成的(Integrate)、相对稳定的(Non-Volatile)、反映历史变化(Time Variant)的数据集合,它用于支持企业或组织的决策分析处理。
数据仓库是为了便于多维分析和多角度展现而将数据按特定的模式进行存储所建立起来的关系型数据库,它的数据基于OLTP源系统。
首先,用于支持决策,面向分析型数据处理,它不同于企业现有的操作型数据库;
其次,对多个异构的数据源有效集成,集成后按照主题进行了重组,并包含历史数据,而且存放在数据仓库中的数据一般不再修改

2、数据仓库的基本架构是什么?
1.数据源-> 2.ETL -> 3.数据仓库存储与管理-> 4.OLAP -> 5.BI工具

数据源:
是数据仓库系统的数据源泉,通常包括企业各类信息,包括存放于RDBMS中的各种业务处理数据和各类文档数据;各类法律法规、市场信息和竞争对手的信息等等;
数据的存储与管理:
数据的存储和管理是整个数据仓库的核心,是关键。数据仓库的组织管理方式决定了它有别于传统数据库,同时也决定了其对外部数据的表现形式。从数据仓库的技术特点着手分析,来决定采用什么产品和技术来建立数据仓库,然后针对现有各业务系统的数据,进行抽取、清理,并有效集成,按照主题进行组织。数据仓库按照数据的覆盖范围可以分为企业级数据仓库和部门级数据仓库(通常称为数据集市)。

OLAP服务器:
对需要的数据进行有效集成,按多维模型予以组织,以便进行多角度、多层次的分析,并发现趋势。其具体实现可以分为:ROLAP(关系型在线分析处理)、MOLAP(多维在线分析处理)和HOLAP(混合型线上分析处理)。ROLAP基本数据和聚合数据均存放在RDBMS之中;MOLAP基本数据和聚合数据均存放于多维数据库中;HOLAP基本数据存放于RDBMS之中,聚合数据存放于多维数据库中。

前端工具:
主要包括各查询工具、数据分析工具、数据挖掘工具、种报表工具以及各种基于数据仓库或数据集市的应用开发工具。
数据分析工具主要针对OLAP服务器。报表工具、数据挖掘工具主要针对数据仓库。

3、数据库和数据仓库有什么区别?
• 数据是面向事务处的,数据是由日常的业务产生的,常更新;数据仓库是面向主题的,数据来源于数据库或文件,经过一定的规则转换得到,用来分析的。
• 数据库一般是用来存储当前交易数据,数据仓库存储一般存储的是历史数据。
• 数据库的设计一般是符合三范式的,有最大的精确度和最小的冗余度,有利于数据的插入; .数据仓库的设计一般是星型的,有利于查询。

元数据:
描述数据及其环境的数据。两方面用途:
首先,元数据能提供基于用户的信息,如记录数据项的业务描述信息的元数据能帮助用户使用数据。
其次,元数据能支持系统对数据的管理和维护,如关于数据项存储方法的元数据能支持系统以最有效的方式访问数据。
元数据机制主要支持以下五类系统管理功能:
(1)描述哪些数据在数据仓库中;
(2)定义要进入数据仓库中的数据和从数据仓库中产生的数据;
(3)记录根据业务事件发生而随之进行的数据抽取工作时间安排;
(4)记录并检测系统数据一致性的要求和执行情况;
(5)衡量数据质量。

4、构建企业级数据仓库五步法:
l 确定主题
l 确定量度
l 确定事实数据粒度
l 确定维度
l 创建事实表

5、ODS: Operational Data Store
ODS为企业提供即时的,操作型的,集成的数据集合,具有面向主题性,集成性,动态性,即时性,明细性等特点
ODS作为数据库到数据仓库的一种过渡形式,与数据仓库在物理结构上不同,能提供高性能的响应时间,ODS设计采用混合设计方式。
ODS中的数据是”实时值",而数据仓库的数据却是"历史值",一般ODS中储存的数据不超过一个月,而数据仓库为10年或更多.

6、Data Mart
为了特定的应用目的或应用范围,而从数据仓库中独立出来的一部分数据,也可称为部门数据或主题数据(subjectarea)。在数据仓库的实施过程中往往可以从一个部门的数据集市着手,以后再用几个数据集市组成一个完整的数据仓库。需要注意的就是在实施不同的数据集市时,同一含义的字段定义一定要相容,这样再以后实施数据仓库时才不会造成大麻烦。

7、DDS(decision-support system)决策支持系统:
用于支持管理决策的系统。通常,DSS包括以启发的方式对大量的数据单元进行的分析,通常不涉及数据更新。

8、什么叫OLAP?用途是什么?
联机分析处理,On-Line Analysis Processing 即从数据仓库中抽取详细数据的一个子集并经过必要的聚集,存储到OLAP存储器中供前端分析工具读取。
OLAP系统按照数据存储格式可以分为关系OLAP(RelationalOLAP,简称ROLAP)、多维OLAP(MultidimensionalOLAP,简称MOLAP)和混合型OLAP(HybridOLAP,简称HOLAP)三种类型。
ROLAP将分析要用的多维数据存储在关系数据库中,并根据应用的需要有选择的定义一批实视图也存储在关系数据库中
MOLAP将OLAP分析所要用到的多维数据物理上存储为多维数组的形式,形成“立方体”的结构。
HOLAP能把MOLAP和ROLAP两种结构的优点有机的结合起来,能满足用户各种复杂的分析请求。

9、事实表
事实表是包含大量数据值的一种结构。事实数据表可能代表某次银行交易,包含一个顾客的来访次数,并且这些数字信息可以汇总,以提供给有关单位作为历史的数据。
每个数据仓库都包含一个或者多个事实数据表。事实数据表只能包含数字度量字段和使事实表与维度表中对应项的相关索引字段.,该索引包含作为外键的所有相关性维度表的主键。
事实数据表中的“度量值”有两中:一种是可以累计的度量值,另一种是非累计的度量值。用户可以通过累计度量值获得汇总信息。

10、维度表
用来描述事实表的某个重要方面,维度表中包含事实表中事实记录的特性:有些特性提供描述性信息,有些特性指定如何汇总事实数据表数据,以便为分析者提供有用的信息,维度表包含帮助汇总数据的特性的层次结构

11、缓慢变化维:
在实际情况下,维度的属性并不是静态的,它会随着时间的流失发生缓慢的变化。
处理方法:
1新信息直接覆盖旧信息,
2,保存多条记录,并添加字段加以区分(用y,n;0,1,2或用时间来区别新旧记录)
3.保存多条记录,并添加字段加以区分4.另外建表保存历史记录.5混合模式

12、退化维
事实表中的外键都对应一个维表,维的信息主要存放在维表中。但是退化维仅仅是事实表中的一列,这个维的相关信息都在这一列中,没有维表与之相关联。比如:发票号,序列号等等。
那么退化维有什么作用呢?
1、退化维具有普通维的各种操作,比如:上卷,切片,切块等
(上卷汇总,下钻明细;切片,切块:对二维数据进行切片,三维数据进行切块,可得到所需要的数据)
2、如果存在退化维,那么在ETL的过程将会变得容易。
3、它可以让group by等操作变得更快

13、粒度:(granularity)
是指数据仓库的数据单位中保存数据的细化或综合程度的级别,细化程度越高,粒度就越小。

14、钻取:
首先从某一个汇总数据出发,查看组成该数据的各个成员数据。

15 .什么叫缓慢维度变化?(为了表现和记录基础数据变化情况在数据仓库中的记录,包括三大类维度处理方式,缓慢变化维包括三小类)
答:缓慢变化维:在实际情况下,维度的属性并不是静态的,它会随着时间的流失发生缓慢的变化。
处理方法:
1)新信息直接覆盖旧信息
2)保存多条记录,并添加字段加以区分(用y,n;0,1,2或用时间来区别新旧记录)
3).保存多条记录,并添加字段加以区分
4).另外建表保存历史记录.
5)混合模式
需要添加缓慢变化维的例子:

  1. 什么叫查找表,为什么使用替代键?(其实目的和上面一样,从基础表到缓慢维度表的过程中的一种实现途径)
    替代键(alternate key)可以是数据表内不作为主键的其他任何列,只要该键对该数据表唯一即可。换句话说,在唯一列内不允许出现数据重复的现象。

  2. 如何实现增量抽取?
    (主要采用时间戳方式,提供数据抽取和处理的性能)

  3. 用过什么ETL工具(informatica,ssis,owb,datastage),以及该工具简单讲述特点。

19.用过什么报表工具(bo,hyperion,congo,reporing serVCe),以及该工具基本特点。

20.数据仓库项目最重要或需要注意的是什么,以及如何处理?(一般答数据质量,主要是数据源数据质量分析,数据清洗转换,当然也可以定量分析)

21、ETL
extract/transformation/load寻找数据,整合数据,并将它们装入数据仓库的过程。
ETL是将业务系统的数据经过抽取、清洗转换之后加载到数据仓库的过程,目的是将企业中的分散、零乱、标准不统一的数据整合到一起,为企业的决策提供分析的依据。

抽取方法有三种:
l 利用工具,例如datastage,informatic,OWB,DTS,SISS.
l 利用存储过程.
l 前两种工具结合.
抽取前的调研准备工作:
l 弄清数据是从哪几个业务系统中来,各个业务系统的数据库服务器运行什么DBMS.
l 是否存在手工数据,手工数据量有多大。
l 是否存在非结构化的数据。

抽取中的数据处理方法:

  1. 业务系统服务器与DW的DBMS相同时,在DW数据仓库服务器与原业条系统之间建立直接的链接关系就可以写select语句直接访问.
    
  2. 业务系统服务器与DW的DBMS不同时,对不能建立直接链接的话,可以将源数据导入.txt文件,在导入ODS中,或通过程序接口来完成.
    
  3. 对于文件类型数据源(.txt.xls)利用数据库工程将这个数据导入指定的数据库,如(oracle的SQL*LOADER,db2的import)
    

如何实现增量抽取:
业务系统会记录业务发生的时间,我们可以用来做增量的标志,每次抽取之前首先判断ODS中记录最大的时间,然后根据这个时间去业务系统取大于这个时间所有的记录。

清洗
数据清洗的任务是过滤那些不符合要求的数据,将过滤的结果交给业务主管部门,确认是否过滤掉还是由业务单位修正之后再进行抽取。清洗的数据种类: 1,不完整数据,2,错误数据,3重复的数据.
转换
1.不一致数据转换:编码转换(m,f;男女);字段转换(balance,bal);度量单位的转换(cm,m)
2.数据粒度的转换;业务系统数据存储非常明细的数据,而数据仓库中数据是用分析的,不需要非常明细,会将业务系统数据按照数据仓库粒度进行聚合.
3.商务规则的计算.不同企业有不同的业务规则,不同的数据指标,在ETL过程,将这些数据计算好之后存储在数据仓库中,供分析使用(比如KPI)

加载
经过前两步处理后的数据可直接加载入数据仓库

22、用过什么ETL工具(informatica,ssis,owb,datastage),以及该工具简单讲述特点。

23、星形模型与雪花模型的区别?
1.星星的中心是一个大的事实表,发散出来的是维度表,每一个维度表用一个PK-FK连接到事实表,维度表之间彼此并不关联。一个事实表又包括一些度量值和维度。
2.雪花模型通过规范维度表来减少冗余度,也就是说,维度表数据已经被分组成一个个的表而不是使用一个大表。例如产品表被分成了产品大类和产品小类两个表。尽管这样做可以节省了空间,但是却增加了维度表的数量和关联的外键的个数。这就导致了更复杂的查询并降低了数据库的效率

24、维度建模(dimensional modeling):
是数据仓库建设中的一种数据建模方法。按照事实表,维表来构建数据仓库,数据集市。这种方法最被人广泛知晓的名字就是星型模式(Star-schema)。

25、代理键:
在关系型数据库设计中,是在当资料表中的候选键都不适合当主键时,例如资料太长,或是意义层面太多,就会用一个attribute来当代理主键,此主键可能是用流水号,来代替可辨识唯一值的26、主键
在数据仓库领域有一个概念叫Surrogate key,中文一般翻译为“代理关键字”。代理关键字一般是指维度表中使用顺序分配的整数值作为主键,也称为“代理键”。代理关键字用于维度表和事实表的连接。可以避免通过主键的值就可以了解一些业务信息

27、总线矩阵

我们通常把行为不同的业务处理过程,即事实,在交叉点上打上标记表示该业务处理过程与该维度相关这个矩阵也称为总线矩阵(Bus Matrix) 总线架构和一致性维度、一致性事实共同组成了Kimball的多维体系结构的基础

28、一致性维度、一致性事实
一致性维度与数据仓库
1> 一致性维度概念
维度建模的数据仓库中,有一个概念叫Conformed Dimension,中文一般翻译为“一致性维度”。一致性维度是Kimball的多维体系结构(MD)中的三个关键性概念之一,另两个是总线架构(Bus Architecture)和一致性事实(Conformed Fact)。
在多维体系结构中,没有物理上的数据仓库,由物理上的数据集市组合成逻辑上的数据仓库。数据集市的建立是可以逐步完成的,最终组合在一起,成为一个数据仓库。如果分步建立数据集市的过程出现了问题,数据集市就会变成孤立的集市,不能组合成数据仓库,而一致性维度的提出正式为了解决这个问题(多个物理的数据仓库才需要一致性统一)。
一致性维度的范围是总线架构中的维度,即可能会在多个数据集市中都存在的维度,这个范围的选取需要架构师来决定。一致性维度的内容和普通维度并没有本质上区别,都是经过数据清洗和整合后的结果。
一致性维度建立的地点是多维体系结构的数据准备区。在多维体系结构的数据仓库项目组内需要有专门的维度设计师,职责就是建立维度和维护维度的一致性。在后台建立好的维度同步复制到各个数据集市。这样所有数据集市的这部分维度都是完全相同的。建立新的数据集市时,需要在后台进行一致性维度处理,根据情况来决定是否新增和修改一致性维度,然后同步复制到各个数据集市。这是不同数据集市维度保持一致的要点。
在同一个集市内,一致性维度的意思是两个维度如果有关系,要么就是完全一样的,要么就是一个维度在数学意义上是另一个维度的子集。例如,如果建立月维度话,月维度的各种描述必须与日期维度中的完全一致,最常用的做法就是在日期维度上建立视图生成月维度。这样月维度就可以是日期维度的子集,在后续钻取等操作时可以保持一致。如果维度表中的数据量较大,出于效率的考虑,应该建立物化视图或者实际的物理表。
这样,维度保持一致后,事实就可以保存在各个数据集市中。虽然在物理上是独立的,但在逻辑上由一致性维度使所有的数据集市是联系在一起,随时可以进行交叉探察等操作,也就组成了数据仓库。
2> 一致性维度的交付步骤
数据整合的关键就是生成一致性维度,再通过一致性维度将来自不同数据源的事实数据合并到一起,供分析使用。通常来说,生成一致性维度有如下三个步骤:
1》标准化(Standardizing)
标准化的目的是使不同数据源的数据编码方式,数据格式等相同,为下一步数据匹配打下基础(数据标准化中的代码标准化过程)。
2》匹配(Matching and Deduplication)
数据匹配的工作有两方面,一是将不同数据源的标识同一事物的不同属性匹配到一起(例如:客户的不同产品),使数据更完善;另一是将不同数据源的相同数据标识成重复,为下一步的筛选打下基础(例如:来源于不同数据源中重复的客户姓名)。
3》筛选(Surviving)
数据筛选的主要目的是选定一致性维度作为主数据(Master Data),也就是最终交付的一致性维度数据。

3> 维度建模要点

选取业务处理,定义事实表的粒度,选定维度,确定事实;这四部是维度建模要点,这种方法,容易造成大量的数据烟囱,在模型管理和控制不好的情况下会造成数据与计算资源复用率低下,数据仓库数据量大量膨胀,同时存在数据模型缺乏体系性,使用数据复杂。
针对以上问题,应在于要在选取业务阶段,数据模型设计者需要具有全局和发展的视角,应该理解整体业务流程的基础上,从全局角度选取业务处理。首先数据仓库的模型设计者应该分析源系统的实体关系模型以及业务流程,选取在整体业务流程中的关键实体作为建模的基础,建立这些实体对象的数据粒度关系,因为不同粒度的数据是不能融合的一个事实表中的。通常可以从以下三个角度来建立事实表:
1)针对某个特定的行为动作,建立一个以行为活动最小单元为粒度的事实表。最小活动单元的定义,依赖于分析业务需求。比如用户的一次网页点击行为、一次网站登录行为,一次电话通话记录。这种事实表,主要用于从多个维度统计,行为的发生情况,主要用于业务分布情况,绩效考核比较等方面的数据分析。
2)针对某个实体对象在当前时间上的状况。我们通过对这个实体对象在不同阶段存储它的快照,比如账户的余额、用户拥有的产品数等,通过这种可以统计实体对象在不同的生命周期中的关键数量指标。
3)针对业务活动中的重要分析和跟踪对象,统计在整个企业不同业务活动中的发生情况。比如会员,可以执行或参与多个特定的行为活动。这种事实表是以上两种事实表的一个总结和归纳。它主要用于针对我们业务中的活动对象进行跟踪和考察。

4> 关系建模与多维建模的关系

5> 几个概念

维度(Dimension):
通俗的讲就是分析目标对象所采用的分析角度。维度是指一种视角,是一个判断、说明、评价和确定一个事物的多方位、多角度、多层次的条件和概念。
维度将业务比作一个立方体,产品维、时间维、地点维分别作为不同的坐标轴,而坐标轴的交点就是一个具体的事实。
维度表是维度属性的集合,是分析问题的一个窗口,是人们观察数据的特定角度,属性的集合构成一个维。

事实表:
事实数据表包含描述业务(例如产品销售)内特定事件的数据。
事实表是数据仓库结构中的中央表,它包含联系事实与维度表的数字度量值和键。

属性:
产品维度表:Prod_id, Product_Name, Category, Color, Size, Price
时间维度表:TimeKey, Season, Year, Month, Date
参考文献:1. Ralph Kimball, 数据仓库生命周期工具箱:设计、开发和部署数据仓库的专家方法 第5章
2. William H. Inmon, 数据仓库(第四版) 第13章

29、对数据切片
对数据进行分开存放的一种技术统称:详见https://jingyan.baidu.com/article/ce43664958a7f93772afd36d.html

30、三范式——3NF
第三范式(Third Normal Form,3rd NF)就是指表中的所有数据元素不但要能惟一地被主关键字所标识,而且它们之间还必须相互独立,不存在其他的函数关系。也就是说,对于一个满足2nd NF 的数据结构来说,表中有可能存在某些数据元素依赖于其他非关键字数据元素的现象,必须消除
三范式主要为了消除冗余,常应用于业务系统中。而数仓DW\BI中允许冗余

31、OLAP在线分析处理、OLTP在线事务处理、DSS决策支持系统、
.
.
.
.
.
下面是我的公众号,收集了现在主流的大数据技能和架构,欢迎大家一起来学习交流。

数仓之基础概念汇集1相关推荐

  1. 数仓的基本概念【精】

    一.数仓基本概念 1. 数据仓库概念 英文名称为Data Warehouse,可简写为DW或DWH.数据仓库的目的是构建面向分析的集成化数据环境,为企业提供决策支持(Decision Support) ...

  2. 【HBZ分享】数仓里面的概念-宽表-维度表-事实表概念讲解

    数仓概念 1. 度量值: 可被统计的,比如:次数,销量,营销额,订单表中的下单金额等可以统计的值叫度量值2. 维度表:(1). 对事实描述的信息,每一张表都对应现实世界中的一个对象或概念,比如:用户, ...

  3. 谈笑间学会数仓—维度表概念及设计案例

    维度表 维度定义 从某个角度观察事实数据的窗口,存储的数据用来从某个角度描述事实.维度表可以看成是用户用来分析一个事实的窗口,它里面的数据应该是对事实的各个方面描述,比如时间维度表,它里面的数据就是一 ...

  4. 数仓建设保姆级教程,离线和实时理论+实战)

    文档大纲: 一.数仓基本概念 1. 数据仓库架构 我们在谈数仓之前,为了让大家有直观的认识,先来谈数仓架构,"架构"是什么?这个问题从来就没有一个准确的答案.这里我们引用一段话:在 ...

  5. 数仓建设(离线和实时)

    文档大纲: 一.数仓基本概念 1. 数据仓库架构 我们在谈数仓之前,为了让大家有直观的认识,先来谈数仓架构,"架构"是什么?这个问题从来就没有一个准确的答案.这里我们引用一段话:在 ...

  6. 数仓建设保姆级教程,离线和实时一网打尽(理论+实战)

    本文大纲: 因内容较多,带目录的PDF查看是比较方便的,点击下方链接获取完整PDF版: 数仓建设保姆级教程PDF文档 一.数仓基本概念 1. 数据仓库架构 我们在谈数仓之前,为了让大家有直观的认识,先 ...

  7. 50000字,数仓建设保姆级教程,离线和实时一网打尽(理论+实战) 上

    文档大纲: 一.数仓基本概念 1. 数据仓库架构 我们在谈数仓之前,为了让大家有直观的认识,先来谈数仓架构,"架构"是什么?这个问题从来就没有一个准确的答案.这里我们引用一段话:在 ...

  8. 实时数仓与离线数仓总结(一)

    精选30+云产品,助力企业轻松上云!>>> 今天主要聊聊数仓的基础知识,分为两篇文章介绍,这是第一篇. 主要内容: 数仓基本概念 数仓架构演变 实时数仓和离线数仓的区别 数仓基本概念 ...

  9. 数仓建模—数仓架构发展史(02)

    发展史 时代的变迁,生死的轮回,历史长河滔滔,没有什么是永恒的,只有变化才是不变的,技术亦是如此,当你选择互联网的那一刻,你就相当于乘坐了一个滚滚向前的时代列车,开往未知的方向,不论什么样的技术架构只 ...

最新文章

  1. VIM 必知必会12大类型操作
  2. 一行js_Node.js 一行命令上传本地文件到服务器
  3. 【备用】关于BOM替代物料与CK11N取数逻辑
  4. 虚拟机的分类_虚拟化精华问答 | 虚拟化技术分类
  5. 【数据结构与算法】之深入解析“冗余连接”的求解思路与算法示例
  6. 2013\National _C_C++_B\1.猜灯谜
  7. WPF开源控件扩展库 - MaterialDesignExtensions
  8. Java中的binarySearch方法
  9. bash shell是如何识别特殊符号的
  10. 兼容彩虹支付系统商户登录模板(彩虹系统版本)
  11. 离线安装python环境
  12. getprofile()获取不到路径_钰泰推出ETA4098,充电+路径管理+锂电保护三合一,超小封装...
  13. 给大家分享10个值得关注的C语言开源项目
  14. PID算法的简单了解
  15. 【报错】Cannot uninstall ‘certifi‘. It is a distutils installed project and thus we cannot accurately
  16. java爬虫抓取nba_利用Python爬虫爬取NBA数据功能实例分享
  17. Python -- Matplotlib:画一条水平线或竖直线
  18. CreateCompatibleDC 解释
  19. 论文分区和影响因子 IF 查询
  20. IME模内电子导电方案

热门文章

  1. Ps|神奇的液化海报
  2. [Excel]Excel函数和用法(9)——MID/SUBSTITUTE/MOD函数
  3. FantaVerse 和亚洲区块链游戏联盟 (ABGA) 结成联盟
  4. java孤岛余生怎么砍树,《孤岛余生》游戏食物配方攻略
  5. 希捷和西数移动硬盘哪个好_移动硬盘选择希捷还是西数?很多人的想法其实都错了!...
  6. 【转载】解决latex里面的:Bibliography not compatible with author-year citation
  7. (四)活动目录:server 2012域控制器的迁移
  8. String数组的拆分
  9. 无法定位序数385 于动态链接库 licurl.dll
  10. 2005年全国高考最牛的作文!