潮州移动网站建设,网站空间 按流量计费,做ic用什么网站,南宁希噢网站开发工作室了解数据建模之前首先要知道的是什么是数据模型。数据模型#xff08;Data Model#xff09;是数据特征的抽象#xff0c;它从抽象层次上描述了系统的静态特征、动态行为和约束条件#xff0c;为数据库系统的信息表示与操作提供一个抽象的框架。
一、概要#xff1a;数据…了解数据建模之前首先要知道的是什么是数据模型。数据模型Data Model是数据特征的抽象它从抽象层次上描述了系统的静态特征、动态行为和约束条件为数据库系统的信息表示与操作提供一个抽象的框架。
一、概要数据建模简介
数据基本用于两种目的1、操作型记录的保存2、分析型决策的制定。简单地说就是操作型系统保存数据分析型系统使用数据前者反映数据的最新状态后者反映数据一段时间的状态变化。操作型系统简称为OLTPOn-Line Transaction Processing联机事务处理分析型系统简称为OLAPOn-Line Analytical Processing联机分析处理。在OLTP场景中常用的是使用实体关系模型ER来存储从而在事务处理中解决数据的冗余和一致性问题。在OLAP场景中有多种建模方式有ER模型、星型模型和多维模型。
数据建模是一种用于定义和分析数据的要求和其需要的相应支持的信息系统的过程。从需求到实际的数据库有三种不同的类型。用于信息系统的数据模型作为一个概念数据模型本质上是一组记录数据要求的最初的规范技术。数据首先用于讨论适合企业的最初要求然后被转变为一个逻辑数据模型该模型可以在数据库中的数据结构概念模型中实现。一个概念数据模型的实现可能需要多个逻辑数据模型。数据建模中的最后一步是确定逻辑数据模型到物理数据模型中到对数据访问性能和存储的具体要求。数据建模定义的不只是数据元素也包括它们的结构和它们之间的关系。
1 概念数据模型Conceptual Data Model
简称概念模型 主要用来描述世界的概念化结构。概念数据模型是最终用户对数据存储的看法反映了最终用户综合性的信息需求它以数据类的方式描述企业级的数据需求数据类代表了在业务环境中自然聚集成的几个主要类别数据。概念数据模型的目标是统一业务概念作为业务人员和技术人员之间沟通的桥梁确定不同实体之间的最高层次的关系。
2 逻辑数据模型Logical Data Model
简称数据模型这是用户从数据库所看到的模型是具体的DBMS所支持的数据模型如网状数据模型(Network Data Model)、 层次数据模型 (Hierarchical Data Model)等等。 此模型既要面向用户又要面向系统 主要用于 数据库管理系统 DBMS的实现。逻辑数据模型的内容包括所有的实体和关系确定每个实体的属性定义每个实体的主键指定实体的外键需要进行范式化处理。逻辑数据模型的目标是尽可能详细的描述数据但并不考虑数据在物理上如何来实现。逻辑数据建模不仅会影响数据库设计的方向还间接影响最终数据库的性能和管理。
3 物理数据模型Physical Data Model
简称物理模型 是面向计算机物理表示的模型描述了数据在储存介质上的组织结构它不但与具体的DBMS 有关而且还与操作系统和硬件有关。每一种逻辑数据模型在实现时都有起对应的物理数据模型。DBMS为了保证其独立性与可移植性大部分物理数据模型的实 现工作又系统自动完成而设计者只设计索引、聚集等特殊结构。物理结构图显示物理数据模型是在逻辑数据模型的基础上考虑各种具体的技术实现因素进行数据库体系结构设计真正实现数据在数据库中的存放。
二、方法数据建模常用模型
1D-R模型
D-R模型Entity-relationship model实体关系模型E-R模型的构成成分是实体集、属性和联系集。其表示方法如下1 实体集用矩形框表示矩形框内写上实体名。2 实体的属性用椭圆框表示框内写上属性名并用无向边与其实体集相连。3 实体间的联系用菱形框表示联系以适当的含义命名名字写在菱形框中用无向连线将参加联系的实体矩形框分别与菱形框相连并在连线上标明联系的类型即1—1、1—N或M—N。如图1-1所示。 2多维模型
它是维度模型的另一种实现。当数据被加载到OLAP多维数据库时对这些数据的存储的索引采用了为维度数据涉及的格式和技术。性能聚集或预计算汇总表通常由多维数据库引擎建立并管理。由于采用预计算、索引策略和其他优化方法多维数据库可实现高性能查询。这种模型可以以星型模式雪花模式或事实星座模式的形式存在。
3星型模型
它是维度模型在关系型数据库上的一种实现。它是多维的数据关系它由事实表Fact Table和维表Dimension Table组成。每个维表中都会有一个维作为主键所有这些维的主键结合成事实表的主键。事实表的非主键属性称为事实它们一般都是数值或其他可以进行计算的数据。该模型表示每个业务过程包含事实表事实表存储事件的数值化度量围绕事实表的多个维度表维度表包含事件发生时实际存在的文本环境。这种类似于星状的结构通常称为星型连接。其重点关注用户如何更快速地完成需求分析同时具有较好的大规模复杂查询的响应性能。如图1-2所示。 4雪花模型
它是当有一个或多个维表没有直接连接到事实表上而是通过其他维表连接到事实表上时其图解就像多个雪花连接在一起故称雪花模型。雪花模型是对星型模型的扩展。如图1-3所示。 三、方案数据建模六步骤
数据建模通俗地说就是通过建立数据科学模型的手段解决现实问题的过程。数据建模也可以称为数据科学项目的过程并且这个过程是周期性循环的。具体可分为六大步骤如图2-1所示。 1 收集业务需求与数据实现在开始维度建模工作之前需要理解业务需求以及作为底层源数据的实际情况。通过与业务方沟通交流、查看现有报表等来发现需求用于理解他们的基于关键性能指标、竞争性商业问题、决策制定过程、支持分析需求的目标。同时数据实际情况可通过与数据库系统专家交流了解访问数据可行性等。
2 选择业务过程业务过程是组织完成的操作型活动。业务过程时间建立或获取性能度量并转换为事实表中的事实。多数事实表关注某一业务过程的结果。过程的选择非常重要的因为过程定义了特定的设计目标以及对粒度、维度、事实的定义。
3 声明粒度声明粒度是维度设计的重要步骤。粒度用于确定某一事实表中的行表示什么。在选择维度或事实前必须声明粒度因为每个候选维度或事实必须与定义的粒度保持一致。在从给定的业务过程获取数据时原子粒度是最低级别的粒度。强烈建议从关注原子级别粒度数据开始设计因为原子粒度数据能够承受无法预期的用户查询。
4 确认维度维度提供围绕某一业务过程事件所涉及的谁、什么、何处、何时、为什么、如何等背景。维度表包含分析应用所需要的用于过滤及分类事实的描述性属性。牢牢掌握事实表的粒度就能够将所有可能存在的维度区分开来。
5 确认事实事实涉及来自业务过程事件的度量基本上都是以数据值表示。一个事实表行与按照事实表粒度描述的度量事件之间存在一对一关系因此事实表对应一个物理可观察的事件。在事实表内所有事实只允许与声明的粒度保持一致。
6 部署方式选择一种维度模型的落地方式。既可以选择星型模型部署在关系数据库上通过事实表及通过主外键关联的维度表也可以选择多维模型落地于多维数据库中。