【数据仓库设计基础(四)】数据仓库实施步骤

这篇具有很好参考价值的文章主要介绍了【数据仓库设计基础(四)】数据仓库实施步骤。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

实施一个数据仓库项目的主要步骤是:

  • 定义项目范围
  • 收集并确认业务需求和技术需求
  • 逻辑设计
  • 物理设计
  • 从源系统向数据仓库装载数据
  • 使数据可以被访问以辅助决策
  • 管理和维护数据仓库

1.定义范围

项目范围定义了一个数据仓库项目的边界。典型的范围定义是组织、地区、应用、业务功能的联合表示。

定义范围时通常需要权衡考虑资源(人员、系统、预算等)、进度(项目的时间和里程碑要求)、功能(数据仓库承诺达到的能力)三方面的因素。

项目范围是设定正确的期望值、评估成本、估计风险、制定开发优先级的依据。

 

2.确定需求

数据仓库项目的需求可以分为业务需求和技术需求。

1)定义业务需求

  • 建立数据仓库的主要目的是为组织赋予从全局访问数据的能力。数据的粒度必须能够满足用户执行分析的需求,并且数据应该被表示为用户能够理解的业务术语。
  • 对数据仓库中数据的分析将辅助业务决策:数据仓库的设计者应该清楚业务用户是如何做决策的,在决策过程中提出了哪些问题,以及哪些数据是回答这些问题所需要的。
  • 在为数据仓库收集需求的过程中,还要考虑设计要能适应需求的变化。

2)定义技术需求

  • 数据来源
    数据仓库的数据来源是操作型系统,这些系统日复一日地处理着各种事务活动。操作型系统大都是联机事务处理系统。数据仓库会从多个操作型源系统抽取数据。
  • ETL
    操作型系统里的数据需要一个中间处理过程,这就是所谓的ETL过程。需要知道如何清理操作型数据,如何移除垃圾数据,如何将来自多个源系统的相同数据整合在一起。
  • 数据的更新频率
    例如,如果需要进行长期的或大范围的数据分析,可能就不需要每天装载数据,而是每周或每月装载一次。注意,更新频率并不决定数据的细节程度,每周汇总的数据有可能每月装载。

 

3.逻辑设计

接着进行逻辑设计:需要定义特定数据的具体内容,数据之间的关系,支持数据仓库的系统环境等,本质是发现逻辑对象之间的关系。

1)建立需要的数据列表

很多情况下,为了得到所需的全部数据,需要适当扩展用户需求或者预测未来的需要,一般从主题域涉及的业务因素入手。

例如,销售主题域的业务因素可能是客户、地区、产品、促销等。然后建立每个业务因素的元素列表,依据也是用户提出的需求。最后通过元素列表,标识出业务因素之间的联系。

这些工作完成后,应该已经获得了如下的信息:

  • 原始的或计算后的数据元素列表
  • 数据的类型
  • 合理的数据分组,比如国家、省市、区县等分成一组,因为它们都是地区元素;
  • 数据之间的关系,比如国家、省市、区县的包含关系等。

 

2)识别数据源

现在已经有了需要的数据列表,现在考虑:从哪里可以得到这些数据,以及要得到这些数据需要多大的成本。需要把上一步建立的数据列表映射到操作型系统上

从哪里获取:

应该从最大最复杂的源系统开始,在必要时再查找其他源系统。数据的映射关系可能是直接的或间接的,比如销售源系统中,商品的单价和折扣价可以直接获得,而折扣百分比就需要计算得到。

通常维度模型中的维度表可以直接映射到操作型源系统,而事实表的度量则映射到源数据在特定粒度级别上聚合计算后的结果。

成本:

某些数据的获得需要较高的成本,例如,用户想要得到促销相关的销售数据就不那么容易,因为促销期的定义从时间角度看是不连续的。

 

3)制作实体关系图

逻辑设计的交付物是实体关系图(entity-relationship diagram,简称ERD)和对它的说明文档(数据字典)。实体对应关系数据库中的表,属性对应关系数据库中的列。

在维度模型的ERD中,实体由事实表和维度表组成,关系体现为在事实表中引用维度表的主键。因此先要确认哪些信息属于中心事实表,哪些信息属于相关的维度表。维度模型中表的规范化级别通常低于关系模型中的表。

 
 

4.物理设计

物理设计指的是将逻辑设计的对象集合,转化为一个物理数据库,包括所有的表、索引、约束、视图等。

1)性能优化

比较通用的数据仓库优化方法有位图索引和表分区。

位图索引对索引列的每个不同值建立一个位图。

  • 和普通的B树索引相比,位图索引占用的空间小,创建速度快。
    但由于并发的DML操作会锁定整个位图段的大量数据行,所以位图索引不适用于频繁更新的事务处理系统而数据仓库对最终用户来说是一个只读系统,其中某些维度的值基数很小,这样的场景非常适合利用位图索引优化查询。
  • 遗憾的是有些数据库管理系统如MySQL,还没有位图索引功能。

大部分数据库系统都可以对表进行分区。

  • 表分区是将一个大表按照一定的规则分解成多个分区,每个表分区可以定义独立的物理存储参数。将不同分区存储到不同的磁盘上,查询表中数据时可以有效分布I/O操作,缓解系统压力。
  • 分区消除:分区还有一个很有用的特性,叫做分区消除。查询数据的时候,数据库系统的优化器可以通过适当的查询条件过滤掉一些分区,从而避免扫描所有数据,提高查询效率。

 

2)数仓的拓展性

从技术上讲,可扩展性是一种通过增加资源,使服务能力得到线性扩展的能力。

  • 比方说,一台服务器在满负荷时可以为一万个用户同时提供服务,当用户数增加到两万时,只需要再增加一台服务器,就能提供相同性能的服务。
  • 随着时间的推移,数据量会越来越大,因此在做数据仓库物理设计时,出于可扩展性的考虑,应该把对硬件、软件、网络带宽的依赖降到最低。?

 

5.装载数据

这个步骤实际上涉及整个ETL过程。

需要执行的任务包括:

  • 源和目标结构之间建立映射关系;
  • 从源系统抽取数据;
  • 对数据进行清洗和转换;
  • 将数据装载进数据仓库;
  • 创建并存储元数据。

 

6.访问数据

访问步骤是要使数据仓库的数据可以被使用,使用的方式包括:数据查询、数据分析、建立报表图表、数据发布等。根据采用的数据仓库架构,可能会引入数据集市的创建。

访问步骤需要执行以下任务:

  • 为前端工具建立一个中间层。在这个中间层里,把数据库结构和对象名转化成业务术语,这样最终用户就可以使用与特定功能相关的业务语言同数据仓库交互。
  • 建立和管理数据仓库里的中间表和汇总表。建立这些表完全是出于性能原因。
    中间表一般是在原始表上添加过滤条件获得的数据集合,汇总表则是对原始表进行聚合操作后的数据集合。这些表中的记录数会远远小于原始表,因此前端工具在这些表上的查询会执行得更快。

 

7.管理维护

这个步骤涵盖在数据仓库整个生命周期里的管理和维护工作。
这步需要执行的任务包括:

  • 确保对数据的安全访问
  • 管理数据增长
  • 优化系统以获得更好的性能
  • 保证系统的可用性和可恢复性等

 
 
参考:《Hadoop构建数据仓库实战》文章来源地址https://www.toymoban.com/news/detail-719591.html

到了这里,关于【数据仓库设计基础(四)】数据仓库实施步骤的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • ETL数据集成和数据仓库的关键步骤

    在当今数据驱动的世界中,ETL(提取、转换和加载)过程在构建可靠和高效的数据仓库中扮演着关键角色。ETL数据集成和数据仓库的关键步骤对于数据质量和决策支持至关重要。本文将介绍ETL数据集成和数据仓库构建的关键步骤,以帮助读者了解构建一个可靠数据仓库所需的

    2024年02月12日
    浏览(101)
  • 实施ITIL项目的十个参考步骤

    ITIL是我们做好IT服务管理流程建设与治理的一个重要知识库,这个知识体系的内容非常丰富,做到全面领会并运用自如是比较困难的。因此,我们提供了这样的一份实施ITIL项目的参考步骤,在新建或治理企业IT管理流程时可以适当借鉴,希望可以帮助您在实施ITIL项目时更加地

    2023年04月19日
    浏览(38)
  • 【数据库 Microsoft SQL Server】实验六 物业收费管理系统数据库设计与实施综合实验

    实验六 物业收费管理系统数据库设计与实施综合实验 一、实验目的 1.掌握数据库概念模型和逻辑模型设计,学会使用数据库规范化理论规范关系模式。 2.熟练掌握和使用SQL语言定义数据库、表、索引和视图等对象。 3.熟练掌握和使用SQL语言完成数据库的完整性和安全性设置

    2024年02月01日
    浏览(55)
  • Github创建一个新仓库,关联本地数据并上传文件的图文步骤

    查看专栏目录 Network 灰鸽宝典专栏主要关注服务器的配置,前后端开发环境的配置,编辑器的配置,网络服务的配置,网络命令的应用与配置,windows常见问题的解决等。 工作中,我们经常会使用github来承享别人的代码果实,同时我们也会把自己的成果分享给别人,互相帮助

    2024年02月05日
    浏览(80)
  • 大数据技术spark基础

    目录 一、spark概述 1.1什么是spark? 1.2 spark的特点 1.3 spark生态圈组件 1.4 spark的核心原理 二、Spark和MapReduce的区别 三、3.MapReduce核心环节-Shuffle过程 四、了解spark架构 1.1 什么是spark? Spark 是当今大数据领域最活跃、最热门、最高效的大数据通用计算平台之一。 1.2 spark 的特点

    2024年03月22日
    浏览(32)
  • 【数据仓库基础(四)】数据仓库需求:基本需求和数据需求

    从基本需求和数据需求两方面介绍对数据仓库系统的整体要求。 数据仓库中含有机密和敏感的数据。为了能够使用这些数据,必须有适当的授权机制。这意味着只有被授权的用户才能访问数据,这些用户在享有特权的同时,也有责任保证数据的安全。 增加安全特性会 影响到

    2024年02月09日
    浏览(42)
  • 【数仓基础(一)】基础概念:数据仓库【用于决策的数据集合】的概念、建立数据仓库的原因与好处

    数据仓库的主要作用: 数据仓库概念主要是解决多重数据复制带来的高成本问题。 在没有数据仓库的时代,需要大量的冗余数据来支撑多个决策支持环境。尽管每个环境服务于不同的用户,但这些环境经常需要大量相同的数据。 数据仓库的概念: 数据仓库描述为一个 面向主

    2024年02月10日
    浏览(46)
  • 大数据基础设施搭建 - Spark

    内容: 到YARN WEB页面查看任务提交情况 内容: 4.3.1 启动SparkSQL客户端(Yarn方式) 4.3.2 启动Hive客户端 优势在哪里??

    2024年04月09日
    浏览(51)
  • [AIGC大数据基础] Spark 入门

    大数据处理已成为当代数据领域的重要课题之一。为了高效地处理和分析大规模数据集,许多大数据处理引擎应运而生。其中,Spark作为一个快速、通用的大数据处理引擎备受关注。 本文将从“是什么、怎么用、为什么用”三个角度来介绍Spark。首先,我们会详细探讨Spark的基

    2024年01月25日
    浏览(40)
  • 数据仓库与ETL:数据仓库设计和ETL流程

    数据仓库与ETL:数据仓库设计和ETL流程 数据仓库是一种用于存储、管理和分析大量历史数据的系统。它通常用于企业、组织和政府等机构,以支持决策过程。数据仓库的核心是ETL(Extract、Transform、Load)流程,它包括数据提取、数据转换和数据加载三个阶段。本文将深入探讨数

    2024年03月08日
    浏览(39)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包