数据仓库的数据模型
数据仓库的逻辑模型

数据仓库的逻辑模型介绍
数据仓库是一种面向主题的、集成的、稳定的、不同时间的数据集合,用于支持管理决策过程。
逻辑模型是数据仓库的核心,它描述了数据仓库中数据的组织和存储方式,以及数据仓库的结构和功能。
本文将介绍数据仓库的逻辑模型,包括数据仓库的数据源、数据存储、数据集市和数据访问。
一、数据源
数据仓库的数据源可以是多种类型的,包括关系数据库、OLAP 数据库、文件系统、外部数据源等。
不同的数据源具有不同的特点和优势,需要根据实际情况选择合适的数据源。
二、数据存储
数据仓库的数据存储是指将数据源中的数据加载到数据仓库中,并对数据进行处理和转换,以满足数据仓库的需求。
数据存储通常采用分布式存储架构,以支持大量数据的存储和查询。
三、数据集市
数据集市是数据仓库中面向特定主题的数据集合,它将数据仓库中的数据按照业务需求进行分类和组织。
数据集市通常包括多个表,每个表代表一个主题,例如销售、客户、产品等。
数据集市中的数据可以根据业务需求进行查询和分析。
四、数据访问
数据访问是指数据仓库中的数据如何被访问和使用。
数据仓库的数据访问通常采用OLAP(联机分析处理)和数据挖掘技术。
OLAP技术支持用户对数据仓库中的数据进行快速查询和分析,数据挖掘技术则可以帮助用户从大量数据中发现有价值的信息和规律。
总之,数据仓库的逻辑模型是数据仓库的核心,它描述了数据仓
库中数据的组织和存储方式,以及数据仓库的结构和功能。
数据仓库的数据源、数据存储、数据集市和数据访问是数据仓库逻辑模型的重要组成部分,它们共同构成了一个完整的数据仓库系统。
数据仓库的多维数据模型

数据仓库的多维数据模型数据仓库的多维数据模型是一种用于组织和表示数据仓库中数据的结构化方法。
它通过将数据组织成多维数据立方体的形式,提供了一种直观且高效的方式来分析和查询数据。
多维数据模型的核心概念是维度和度量。
维度是描述数据的属性,如时间、地点、产品等,它们用于对数据进行分类和分组。
度量是可以进行计量和分析的数据,如销售额、利润等。
维度和度量共同构成了多维数据模型中的数据立方体。
在多维数据模型中,数据立方体由多个维度和度量组成。
每个维度都有多个层次,用于对数据进行不同粒度的分析。
例如,时间维度可以包括年、季度、月份等层次。
每个层次都可以通过层次间的关系进行导航和聚合。
除了维度和度量,多维数据模型还包括事实表和维度表。
事实表是存储度量数据的表,它包含了与度量相关的各种属性。
维度表是存储维度数据的表,它包含了与维度相关的各种属性。
事实表和维度表通过共享维度的主键进行关联。
在多维数据模型中,还可以使用多种数据模型,如星型模型和雪花模型。
星型模型是最简单和最常见的多维数据模型,它由一个事实表和多个维度表组成,维度表与事实表直接关联。
雪花模型在星型模型的基础上,将维度表进一步规范化,以减少数据冗余和提高数据一致性。
多维数据模型的设计和建模是数据仓库开发中的关键步骤。
在设计多维数据模型时,需要考虑业务需求、数据源的结构和数据的粒度等因素。
合理的多维数据模型可以提高数据仓库的查询性能和分析效果,帮助用户更好地理解和利用数据。
在实际应用中,多维数据模型常用于OLAP(联机分析处理)系统和数据挖掘任务。
它可以支持复杂的数据分析和查询操作,如切片、切块、旋转和钻取等。
多维数据模型的灵活性和高效性使得它成为处理大规模数据和复杂分析任务的重要工具。
总结起来,数据仓库的多维数据模型是一种用于组织和表示数据仓库中数据的结构化方法。
它通过维度和度量的概念,将数据组织成多维数据立方体的形式,提供了一种直观且高效的方式来分析和查询数据。
数据仓库中的多维数据模型设计与实现教程

数据仓库中的多维数据模型设计与实现教程在数据仓库中,多维数据模型设计与实现是一项关键任务。
它不仅可以帮助企业组织和分析庞大的数据量,还能提供决策支持和洞察力。
本文将介绍数据仓库中多维数据模型的概念、设计原则以及实现方法,帮助读者全面了解和掌握这一重要主题。
一、多维数据模型的概念多维数据模型是基于数据的特征和关联性来组织数据的一种模型。
它通过将数据按照不同的业务维度进行分组和分类,将数据以多维方式呈现,从而提供了更加直观和灵活的数据分析能力。
多维数据模型主要由维度、度量和层次结构组成。
1. 维度:维度是描述业务问题的属性,它可以是时间、地理位置、产品、客户等。
维度用来描述数据的特征,例如销售额可以按照时间、地理位置和产品维度进行分析。
2. 度量:度量是可以进行数值计算和分析的数据,例如销售额、利润、数量等。
度量用来描述数据的量度,便于进行各种统计分析。
3. 层次结构:层次结构是维度之间的关系,它描述了维度之间的层次结构和上下级关系。
例如时间维度可以由年、月、日等层次结构组成。
二、多维数据模型的设计原则在设计多维数据模型时,需要遵循一些原则,以确保模型的合理性和有效性。
1. 简单性:多维数据模型应该尽可能简单,避免过于复杂的维度和层次结构。
简单的模型易于理解和维护,提高数据分析效率。
2. 一致性:多维数据模型中的维度和度量应该保持一致性,避免冗余和重复。
一致的模型有助于提高查询效率和数据一致性。
3. 可扩展性:多维数据模型应该具有良好的扩展性,能够容纳未来的需求变化和数据增长。
设计时需要考虑到未来可能发生的维度扩展和度量变化。
4. 性能优化:多维数据模型的设计也要考虑到查询性能的优化。
根据实际需求和查询模式,合理设计维度的层次结构、聚集表和索引等,以提高查询效率。
三、多维数据模型的实现方法在实现多维数据模型时,需要选择合适的工具和技术来支持模型的构建和数据的加载。
1. 数据抽取和转换:多维数据模型的实现通常需要进行数据抽取和转换,将源系统的数据转化为可用于多维模型的格式。
数据仓库的多维数据模型

数据仓库的多维数据模型数据仓库的多维数据模型是一种用于组织和表示数据仓库中数据的结构化方法。
它通过将数据组织成多维数据立方体来提供灵活的数据分析和查询能力。
本文将详细介绍数据仓库的多维数据模型的定义、特点、设计原则以及常用的多维数据模型。
一、定义数据仓库的多维数据模型是一种基于事实表和维度表的数据结构,用于描述和组织数据仓库中的数据。
事实表包含与业务过程相关的数值型度量数据,而维度表包含与事实表相关的描述性属性。
通过将事实表和维度表进行关联,可以构建多维数据立方体,实现对数据的多维分析和查询。
二、特点1. 多维性:多维数据模型将数据组织成多维数据立方体,可以同时从不同的维度对数据进行分析和查询,从而提供全面的视角和深入的洞察力。
2. 灵活性:多维数据模型可以根据业务需求进行灵活的扩展和调整,可以添加新的维度或度量,以适应不断变化的业务环境。
3. 高性能:多维数据模型通过预计算和聚合技术,可以提高数据查询的性能,加快数据分析的速度,满足用户对实时和快速的数据响应的需求。
4. 可理解性:多维数据模型采用直观的图形化表示方式,使用户能够直观地理解和探索数据,从而更好地支持决策和业务分析。
三、设计原则1. 选择合适的粒度:在设计多维数据模型时,需要根据业务需求选择合适的粒度,即事实表中的度量数据的精度。
粒度的选择应该能够满足用户对数据分析和查询的需求,同时避免数据冗余和过度复杂性。
2. 定义清晰的维度:维度是多维数据模型的核心,需要定义清晰、一致和可理解的维度。
维度应该包含与事实表相关的描述性属性,如时间、地理位置、产品等,以支持多维分析和查询。
3. 建立正确的关联:事实表和维度表之间的关联是多维数据模型的关键,需要确保关联的正确性和一致性。
关联的建立应该基于业务规则和数据的语义,避免数据的冗余和错误。
4. 使用合适的聚合:为了提高数据查询的性能,可以使用聚合技术对数据进行预计算和汇总。
聚合的选择应该基于业务需求和数据的访问模式,以平衡性能和精度的要求。
数据仓库的数据模型设计和数据库系统的数据模型设计有什么不同

数据仓库的数据模型设计和数据库系统的数据模型设计
有什么不同
1.目的和应用:
数据仓库的数据模型设计主要用于支持分析和决策支持系统。
它的目标是将来自多个操作性数据库的数据集成在一个统一的存储中,以便于查询和分析。
数据库系统的数据模型设计主要用于支持业务应用系统的操作和事务处理。
2.数据结构:
3.数据粒度:
4.数据复杂性:
5.数据访问模式:
数据仓库的数据模型设计支持复杂的查询操作,如多维分析和数据挖掘等。
因此,数据仓库的数据模型设计通常需要进行优化,以提高查询性能和响应时间。
数据库系统的数据模型设计则更注重事务处理和并发控制等方面的性能优化。
总结起来,数据仓库的数据模型设计和数据库系统的数据模型设计主要在目的、数据结构、数据粒度、数据复杂性和数据访问模式等方面有所不同。
数据仓库的数据模型设计更注重于支持分析和决策支持系统,采用星型或雪花型的数据结构,关注大量和高层次的数据,需要复杂的数据转换和清洗过程,并进行查询性能优化。
数据库系统的数据模型设计更注重于支持业务应用系统的操作和事务处理,采用关系模型的结构,关注细节
和实时的操作数据,不需要涉及复杂的数据处理过程,并进行事务和并发性能的优化。
数据仓库之数据建模理论

数据仓库之数据建模理论数据仓库建模理论就像⼤厦的地基,只有把建模理论理解清楚,在数据建模时才能有理有据。
作为⼀个数据仓库开发⼈员,数据建模理论是我们必须要掌握和理解的⼀部分,只要充分理解了数据建模理论知识,在建设数据仓库时我们就可轻松上⼿。
数据建模理论Kimball维度建模 和 Inmon范式建模数据仓库的两⼤模式:Kimball维度建模 和 Inmon范式建模⼀、Inmon范式建模1.1、什么是Inmon范式模型?数据仓库是商业智能的⼀部分,⼀家企业或公司只有⼀个数据仓库,数据集市的信息皆来源数据仓库。
现在的数据库⼤多数都是依据3FN范式来建⽴的,⽽依据范式的思想来进⾏数据仓库建模,就是范式建模。
数据仓库中的数据信息必须符合第三范式。
范式是关系型数据库的基本概念。
是指符合某些条件、符合某些规则的关系集合。
范式是分级的,每向上⼀级,条件和规则更加严格,每⼀级是下⼀级的⼦集。
范式最主要的⽬的是消除冗余,每⼀份信息必须存放⼀次,也只能存储⼀次。
数据的冗余不仅仅会造成存储资源的浪费,⽽且可能会引发数据的更新异常。
⼆、Kimball维度建模2.1、什么是Kimball维度建模?数据仓库是公司内部所有数据集市的集合,信息总是被存储在多维模型中。
是⾯向数据集市、数据主题的,⼀般采⽤星型模型建模。
依据星型模型,构建事实表和维度表,建⽴数据仓库模型的过程,就是维度建模。
Kimball的核⼼思想就是星型模型和维度建模。
2.2、什么是星型模型?所有的表直接与事实表关联,整个图解就像星星⼀样,该模型称为星型模型。
星型模型是⼀种⾮正规化的结构,是反范式的。
因为多维数据集的每⼀个维度都直接与事实表相连接,不存在渐变维度,所以数据有⼀定的冗余,星型模型2.3、事实表和维度表事实表描述业务过程的度量、以可加数据为主题,每⼀⾏代表⼀个可以观察的实体或事件。
主要的是发⽣了业务过程,如卖出⼀件商品,⽤户购买⼀件商品,这都触发了业务过程。
数据仓库中的多维数据建模与查询优化技术研究

数据仓库中的多维数据建模与查询优化技术研究数据仓库作为企业数据管理的重要工具,扮演着集成、分析和查询大量数据的关键角色。
为了更高效地使用数据仓库中的数据,多维数据建模与查询优化技术成为研究的焦点。
本文将从数据仓库中多维数据建模和查询优化两个方面进行研究。
第一部分:多维数据建模在数据仓库中,多维数据建模是数据分析和决策的基础。
多维数据建模通过定义维度、度量和维表来描述数据仓库中的数据。
以下是一些常用的多维数据模型:1. 星型模型:星型模型是最常见的多维数据模型之一。
在星型模型中,事实表位于中心,围绕它是多个维度表。
这种模型结构简单,易于理解和维护,适用于规模较小的数据仓库。
2. 雪花模型:雪花模型是星型模型的扩展,通过将维度表进一步细分为多个子表来进行优化。
雪花模型的优点是可以节省存储空间,但查询性能相对较低。
3. 网络模型:网络模型是多维数据模型的另一种变体。
在网络模型中,维度表和事实表通过连接表进行关联。
这种模型结构复杂,适用于复杂的分析场景。
在进行多维数据建模时,需要根据具体业务需求选择合适的模型。
同时,还需要考虑数据的一致性和灵活性,以支持不同层次的数据分析和各种查询。
第二部分:查询优化技术数据仓库中的查询优化是提高系统性能和用户查询响应时间的关键。
以下是一些常用的查询优化技术:1. 聚集与分区:聚集和分区通过在事实表和维度表上创建预聚集和分区索引,以加速查询性能。
聚集和分区可以减少磁盘I/O访问次数,提高查询效率。
2. 查询重写:查询重写是对用户查询进行优化和重构的技术。
通过对查询语句进行重写,可以更高效地执行查询操作。
例如,使用子查询或连接查询代替嵌套循环,减少查询时间。
3. 数据压缩:数据压缩是另一种提高查询性能的关键技术。
将数据进行压缩可以减少存储空间的占用,并提高数据的读取速度。
4. 并行处理:并行处理是一种同时处理多个查询的技术。
通过将查询任务划分为多个子任务,并在多个处理单元上并行执行,可以提高查询效率。
数据仓库的多维数据模型

数据仓库的多维数据模型数据仓库是一个用于存储和管理大量数据的系统,它被广泛应用于企业和组织中,用于支持决策制定和业务分析。
在数据仓库中,多维数据模型是一种常用的数据建模方法,它能够提供灵活、高效的数据查询和分析功能。
本文将详细介绍数据仓库的多维数据模型的概念、特点和设计原则。
一、概念多维数据模型是一种以多维方式组织和表示数据的模型。
它将数据组织成多个维度和事实表的形式,通过维度之间的关联关系和事实表中的度量指标,可以对数据进行多维分析。
多维数据模型的核心思想是将数据组织成一个多维的立方体结构,其中每个维度都代表一个数据属性,而事实表则包含了度量指标和与维度相关的外键。
二、特点1. 多维性:多维数据模型能够同时考虑多个数据维度,包括时间、地理位置、产品、客户等。
通过在不同维度上进行切片、钻取和旋转等操作,可以快速获取不同层次的数据分析结果。
2. 立方体结构:多维数据模型可以被看作是一个立方体,其中每个维度都代表一个轴,而事实表则代表立方体的中心。
通过在不同维度上进行切片和钻取操作,可以从不同角度对数据进行分析。
3. 易于理解和使用:多维数据模型的结构清晰,易于理解和使用。
用户可以通过直观的界面进行数据查询和分析,无需编写复杂的SQL语句。
4. 高性能:多维数据模型采用了预计算和聚合等技术,可以提高数据查询和分析的性能。
通过事先计算和存储聚合结果,可以避免对大量数据进行复杂的计算操作。
三、设计原则1. 维度设计:在设计多维数据模型时,需要合理选择和定义维度。
维度应该具有明确的含义和层次结构,以便于用户理解和使用。
同时,维度之间应该具有清晰的关联关系,以支持多维分析。
2. 事实表设计:事实表是多维数据模型的核心,它包含了度量指标和与维度相关的外键。
在设计事实表时,需要选择合适的度量指标,并确定与维度之间的关联关系。
同时,事实表的结构应该尽量简化,以提高数据查询和分析的性能。
3. 聚合设计:为了提高数据查询和分析的性能,可以使用聚合技术对数据进行预计算和存储。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
业务驱动任何需求均来源于业务,业务决定了需求,需求分析的正确与否是关系到项目成败的关键所在,从任何角度都可以说项目是由业务驱动的所以数据仓库项目也是由业务所驱动的.但是数据仓库不同于日常的信息系统开发,除了遵循其他系统开发的需求,分析,设计,测试等通常的软件声明周期之外;他还涉及到企业信息数据的集成,大容量数据的阶段处理和分层存储,数据仓库的模式选择等等,因此数据仓库的物理模型异常重要,这也是关系到数据仓库项目成败的关键.数据仓库的结构总的来说是采用了三级数据模型的方式:概念模型: 也就是业务模型,由企业决策者,商务领域知识专家和IT专家共同企业级地跨领域业务系统需求分析的结果.逻辑模型:用来构建数据仓库的数据库逻辑模型。
根据分析系统的实际需求决策构建数据库逻辑关系模型,定义数据库物体结构及其关系。
他关联着数据仓库的逻辑模型和物理模型这两头.物理模型:构建数据仓库的物理分布模型,主要包含数据仓库的软硬件配置,资源情况以及数据仓库模式。
如上图所示,在数据仓库项目中,物理模型设计和业务模型设计象两个轮子一样有力的支撑着数据仓库的实施,两者并行不悖,缺一不可.实际上,我有意的扩大了物理模型和业务模型的内涵和外延.在这里物理模型不仅仅是数据的存储,而且也包含了数据仓库项目实施的方法论,资源,以及软硬件选型等等;而业务模型不仅仅是主题模型的确立,也包含了企业的发展战略,行业模本等等.一个优秀的项目必定会兼顾业务需求和行业的标准两个方面,业务需求即包括用户提出的实际需求,也要客观分析它隐含的更深层次的需求,但是往往用户的需求是不明确的,需要加以提炼甚至在商务知识专家引导下加以引导升华,和用户一起进行需求分析工作;不能满足用户的需求,项目也就失去原本的意义了.物理模型就像大厦的基础架构,就是通用的业界标准,无论是一座摩天大厦也好,还是茅草房也好,在架构师的眼里,他只是一所建筑,地基->层层建筑->封顶,这样的工序一样也不能少,关系到住户的安全,房屋的建筑质量也必须得以保证,唯一的区别是建筑的材料,地基是采用钢筋水泥还是石头,墙壁采用木质还是钢筋水泥或是砖头;当然材料和建筑细节还是会有区别的,视用户给出的成本而定;还有不可忽视的一点是,数据仓库的数据从几百GB到几十TB不等,即使支撑这些数据的RDBMS无论有多么强大,仍不可避免的要考虑到数据库的物理设计.接下来,将详细阐述数据仓库概念模型(业务模型),逻辑模型,物理模型的意义.概念模型设计进行概念模型设计所要完成的工作是:界定系统边界确定主要的主题域及其内容确定主题域的关系概念模型设计是,在原有的业务数据库的基础上建立了一个较为稳固的概念模型。
因为数据仓库是对原有数据库系统中的数据进行集成和重组而形成的数据集合,所以数据仓库的概念模型设计,首先要对原有数据库系统加以分析理解,看在原有的数据库系统中“有什么”、“怎样组织的”和“如何分布的”等,然后再来考虑应当如何建立数据仓库系统的概念模型。
一方面,通过原有的数据库的设计文档以及在数据字典中的数据库关系模式,可以对企业现有的数据库中的内容有一个完整而清晰的认识;另一方面,数据仓库的概念模型是面向企业全局建立的,它为集成来自各个面向应用的数据库的数据提供了统一的概念视图。
概念模型的设计是在较高的抽象层次上的设计,因此建立概念模型时不用考虑具体技术条件的限制。
1.界定系统的边界数据仓库是面向决策分析的数据库,我们无法在数据仓库设计的最初就得到详细而明确的需求,但是一些基本的方向性的需求还是摆在了设计人员的面前:. 要做的决策类型有哪些?. 决策者感兴趣的是什么问题?. 这些问题的需要什么样的信息?. 要得到这些信息需要包含原有数据库系统的哪些部分的数据?这样,我们可以划定一个当前的大致的系统边界,集中精力进行最需要的部分的开发。
因而,从某种意义上讲,界定系统边界的工作也可以看作是数据仓库系统设计的需求分析,因为它将决策者的数据分析的需求用系统边界的定义形式反映出来。
2,确定主要的主题域在这一步中,要确定所包含的主题域,然后对每个主题域的内容进行较明确数据仓库建模技术在XX行业中的应用的描述,描述的内容包括:. 主题域的公共码键;. 主题域之间的联系:. 充分代表主题的属性组。
概念模型的构建通常是企业的shakeholder,商务领域知识专家和IT专家共同企业级地跨领域业务系统需求分析的结果.通常企业决策者有自己的发展战略和规划, 他们会定期阅读由各部门经理上报的分析报告,他们也知道大致了解自己企业信息系统的功能, 但是未必清楚自己的每一个业务系统的每一个功能和每一部分数据,毕竟决策者不是信息专家,他们更关心的企业的经营业绩,资产负债,盈亏受益等等核心指标.各个部门经理往往很了解自己部门的信息系统,在信息系统规划时优先考虑的是自己的利益,因此每个部门往往都在独立的构建自己的信息系统,无法或者不可能从企业总体角度和其他业务系统接轨,如ERP系统,MIS系统,CRM系统等等,这就造成了企业在发展企业信息系统时的不平衡,导致了所谓的孤岛效应,他们会阅读下属提供的分析报告,然后进行归纳整理,形成部门报表进行上报,但是最终结果却是每个部门都在上报自己的经营业绩,却始终缺乏一个一致的统一的数字.普通用户更关注的是某一类与工作相关的报表,包括报表的数据准确性,报表的样式,图标格式这类的细节.而IT部门负责企业IT系统的预算,采购,但是因为职能部门不同,无法深入了解各个信息系统的业务.有这么一句话:如果你想实施某个企业信息系统,你必须能够具备担当这个企业副总的能力.这就要求项目负责人能够站在企业的战略高度考虑,同时具备很高的协调能力和管理能力;所以必须引入商务领域知识专家和IT专家的角色(就是通常所说的咨询顾问),这些人往往具备比较资深的行业背景,具备丰富的独立实施该行业信息系统建设的经验,了解该行业最先进和通用的标准和规范,同时在结合现有企业信息系统的基础上,以及融合企业发展战略的基础上,提出当前企业的业务模型,来帮助企业提高决策支持分析能力,但是这样的模型不能太超前,太超前则意味脱离了实际,不具备实际可操作性;当然更不能停留在于企业目前的信息建设水平上,否则就失去了意义.逻辑模型设计逻辑建模是数据仓库实施中的重要一环,因为它能直接反映出业务部门的需求,同时对系统的物理实施有着重要的指导作用。
通过实体和关系勾勒出真个企业的数据蓝图。
在这一步里进行的工作主要有:分析丰富主题域,确定当前要装载的主题;确定粒度层次划分;确定数据分割策略;关系模式定义;记录系统定义逻辑模型设计的成果是,对每个当前要装载的主题的逻辑实现进行定义,并将相关内容记录在数据仓库的元数据中,包括:适当的粒度划分;合理的数据分割策略;适当的表划分;定义合适的数据来源等。
1.分析主题域在概念模型设计中,我们确定了几个基本的主题域,但是,数据仓库的设计方法是一个逐步求精的过程,在进行设计时,一般是一次一个主题或一次若干个主题地逐步完成的。
所以,我们必须对概念模型设计步骤中确定的几个基本主题域进行分析,一并选择首先要实施的主题域。
选择第一个主题域所要考虑的是它要足够大,以便使得该主题域能建设成为一个可应用的系统;它还要足够小,以便于开发和较快地实施。
如果所选择的主题域很大并且很复杂,我们甚至可以针对它的一个有意义的子集来进行开发。
在每一次的反馈过程中,都要进行主题域的分析。
具体的实施细节需要和AAA业务部门和信息中心沟通。
2.粒度层次划分数据仓库逻辑设计中要解决的一个重要问题是决定数据仓库的粒度划分层次,粒度层次划分适当与否直接影响到数据仓库中的数据量和所适合的查询类型。
由于主题数据库响应企业级业务OLTP需求,所以必须保存最细类度数据,同时根据业务部门的查询需求考虑确定多重粒度来提高复杂查询速度。
3.确定数据分割策略在这一步里,要选择适当的数据分割的标准,一般要考虑以下几方面因素:数据量〔而非记录行数)、数据分析处理的实际情况、简单易行以及粒度划分策略等。
数据量的大小是决定是否进行数据分割和如何分割的主要因素;数据分析处理的要求是选择数据分割标准的一个主要依据,因为数据分割是跟数据分析处理的对象紧密联系的;我们还要考虑到所选择的数据分割标准应是自然的、易于实施的:同时也要考虑数据分割的标准与粒度划分层次是适应的。
4.关系模式定义数据仓库的每个主题都是由多个表来实现的,这些表之间依靠主题的公共码键联系在一起,形成一个完整的主题。
在概念模型设计时,我们就确定了数据仓库的基本主题,并对每个主题的公共码键、基本内容等做了描述在这一步里,我们将要对选定的当前实施的主题进行模式划分,形成多个表,并确定各个表的关系模式。
物理模型设计这一步所做的工作是根据信息系统的容量,复杂度,项目资源以及数据仓库项目自身的软件生命周期确定数据仓库系统的软硬件配置,数据仓库分层设计模式,数据的存储结构,确定索引策略,确定数据存放位置,确定存储分配等等。
这部分应该是由项目经理和数据仓库架构师共同实施的.确定数据仓库实现的物理模型,要求设计人员必须做到以下几方面:1. 确定项目资源根据预算和业务需求,并参考以往的数据仓库项目经验,对该项目的成本周期和资源进行估算.关于项目周期的估算,主要基于ETL函数功能点以及加权后的复杂度进行估算,因为ETL 过程占据了整个数据仓库项目的70%,;ETL过程主要是基于源<=>目的的原则进行处理的,而不同的功能点具有不同的复杂度,通过以往项目经验和专家评估,然后再根据软件生命周期的划分,可以有效的得知项目的整体周期.关于人员的估算,主要取决于人员的工作经验,素养,对新技术的掌握能力,还要考虑到人员流动等方面的人员备份.协作,每一个IT企业都应该具备一个丰富的技能和人力资源库,当项目资源遇到瓶颈的时候,就可以考虑需求协作.2. 确定软硬件配置数据仓库项目与其他业务系统不同,尤其需要对数据容量进行估算,这是因为数据仓库是历史的稳定的基于主题的集成的等等特性所决定的,他是对以往历史数据的集成,如果项目初期不加以考虑,很快就会造成灾难性的后果.数据仓库的容量估算应该是可预见的,首先确定核心明细数据的存储年限,相关表的平均字段长度值*每年的记录数*(每年预计的增长),然后再加上20%的冗余,以及磁盘预留的20%的冗余,我们不难得到数据仓库的预计容量.数据仓库的处理能力和容量息息相关,也和具体的关系数据库的性能息息相关,如何在Oracle,SQLServer,DB,Sybase甚至MySQL 之间寻找平衡,既要考虑实际的预算,也要视实际的需求而定.关于硬件的配置,既需要发挥软件的功能,满足实际的处理要求,也要为将来的系统扩展保留一定的空间.3. 数据仓库存储设计数据仓库一般采用分层设计,即ODS层,数据仓库层,数据仓库聚合层数据集市等等;数据仓库的分层是灵活的,没有固定的模式,一切视实际情况而定.ODS层存放从原系统采集来的原始交易数据,只保存一定期限内的数据,同时ODS支持部分近实时性报表的展示.数据仓库层保存经过清洗,转换和重新组织的历史业务数据,数据将保留较长时间(5~10年不等),满足系统最细粒度的查询需要.数据仓库聚合层面向KPI指标计算和分析,支持汇总层面交易级的指标查询,提高汇总级的KPI数据展示速度和数据保存时间。