数据仓库的设计开发应用(一)

本文涉及的产品
阿里云百炼推荐规格 ADB PostgreSQL,4核16GB 100GB 1个月
简介: 数据仓库的设计开发应用(一)


一、数据仓库设计的特点

1、“数据驱动” 的设计

 数据仓库是从已有数据出发的设计方法,即从数据源抽取数据,经转换形成面向主题,支持决策的数据集合。


 以全面了解并利用现有数据为出发点。在进行设计之前就要清楚地知道数据源系统中已经有什么数据,它们与数据仓库设计的对应关系等。尽可能地利用已有的数据和编码等,而不可能 “无中生有”地产生数据和编码。


2、“分析驱动” 的设计

 是从决策分析需求出发的设计。从已有数据源出发,按照决策分析主题对数据源中数据及其之间的联系重新考察,并重新组织形成数据仓库分析需要的主题数据。


3、“需求模糊” 的设计

 数据仓库设计的数据分析处理需求更加灵活,也没有固定的模式,有时用户自己对所要进行的分析处理也不能事先确定。数据仓库的分析需求在设计初期往往是模糊或不明确的,通常只有在数据仓库设计过程中,或后来数据仓库的决策支持过程中逐渐明确。


4、“螺旋周期” 的设计

 数据仓库系统的开发是一个动态反馈启发式的循环过程,也称为螺旋上升的周期性开发过程,即 “螺旋周期”。数据仓库的数据内容、结构、粒度、分割以及其它物理设计,需要根据用户使用数据仓库所反馈的意见和建议进行调整,以提高系统的效率和性能;用户在使用数据仓库进行决策过程中,不断提出新的决策分析需求,增加新的主题,使数据仓库进入新一轮的设计周期,数据仓库进一步完善,为用户提供更准确、更有效的决策信息。


二、数据仓库系统开发过程

 数据仓库系统的开发过程的5个时期:规划时期、设计时期(需求分析、概念设计、逻辑设计、物理设计)、实施时期、开发时期和应用时期。


 数据仓库系统的开发过程的3个阶段:将规划和设计时期称为 “规划设计阶段”,实施和开发时期称为 “实施开发阶段”,应用时期称为 “使用维护阶段”。


 数据仓库设计过程的 “螺旋周期” 性:


通过这5个阶段的数据仓库开发应用的过程,实现了前期规定的数据仓库主题建设和应用开发任务,为决策者提供了基本的决策分析工具,同时也积累了数据仓库开发和应用的经验,可以转向其它主题的数据仓库开发应用;

通过对前期数据仓库的开发和应用经验积累,又对前期建设的数据仓库提出修改建议或者新的决策需求,使其数据仓库得到进一步的改进和完善,以便为决策者提供更加丰富、准确和有用的决策信息。

1、规划时期

  对建立数据仓库系统进行必要性、可行性、甚至不可行性分析。对不可行的项目提出取消数据仓库建设的建议,对可行的数据仓库项目提出全面的开发规划。

2、设计时期

决策需求调查、数据仓库环境分析,数据仓库开发需求确定;各种模型的建立,包括多维数据模型、星型模型、雪花模型和物理模型等,特别是数据源的属性列与数据仓库目标列的映射关系等,并根据选择的数据仓库管理系统,完成相应的物理设计。

3、实施时期

  根据逻辑阶段设计结果创建一个数据仓库文件,及其有关的事实表和维度表;为数据仓库中的每一个目标列确认数据抽取、转换与加载的规则,开发或者购买用于数据抽取、数据转换以及数据合并的中间件;将数据从现有系统(数据源)中装载到数据仓库之中并对数据仓库进行测试。

4、开发时期

  开发一系列对数据仓库进行查询、分析和挖掘的决策支持工具,建立基于数据仓库的决策支持应用平台。

5、应用时期

  对数据仓库的用户进行培训、指导;将数据仓库投入实际应用,充分发挥数据仓库在决策中支持效果;在应用中不断改进和维护数据仓库;对数据仓库进行评价,提出新的决策需求,为数据仓库下一循环的设计开发提供依据。

三、数据仓库系统的规划

规划的必要性:数据仓库系统的规划工作对一个企业或部门的发展都可能产生深远的影响。

实施规划工作:由系统的建设单位(投资方)和用户合作完成,可以聘请数据仓库系统设计开发方面的专家来指导建设单位完成;将整个规划任务委托在数据仓库系统设计和开发方面有资质的咨询公司负责完成(政府部门和事业单位常用这种方式),但投资人和用户也必须参与其中。

规划的任务:建立数据仓库系统的必要性、可行性、甚至不可行性分析。对可行的系统确定建立数据仓库系统的总体目标,包括可靠性和安全性等方面的设想,并制定数据仓库设计与实施计划。

1、确定开发目标和实现范围

(1)数据仓库使用部门、使用人员和使用目的?

(2)在为用户提供决策支持时,决策主题需要哪些数据源以及需要什么工具来访问?

(3)数据仓库项目设计开发的起止时间,甚至资金预算。

2、确定数据仓库系统体系结构

 通常有虚拟数据仓库、单纯数据仓库、单纯数据集市、数据仓库和数据集市等4种体系结构可供选择。其实现的难易程度、实现所需的时间和费用各不相同,且决策支持的方式也不相同。


(1)虚拟数据仓库:决策支持功能直接在事务处理数据库上实现,这就是 “2合1” 系统。

(2)单纯数据仓库:从数据源中抽取、转换和加载到一个统一的数据仓库之中,各部门的查询和分析功能都从这个统一的数据仓库中进行。适合管理部门较多,用户较少的情况。

(3)单纯数据集市:一个部门使用的数据仓库,因为企业中的每个职能部门都有自己的特殊管理决策需要,而统一的数据仓库可能无法同时满足这些部门的特殊要求。适合企业个别部门对数据仓库的应用感兴趣,其它部门十分冷漠之。

(4)完整数据仓库:数据仓库从企业各种数据源抽取数据,部门数据集市从企业数据仓库中获取数据。适合各部门都对数据仓库应用感兴趣的企业。

3、确定数据仓库系统应用结构

  • 用户角度:系统的功能大致可以分为前端显示和后端处理两部分。
  • 软件开发人员的角度:系统功能应该将其分为数据管理、事务控制、应用服务和用户界面(表达逻辑)等四大部分。
  • 系统应用结构:系统四大功能在客户端和服务器之间进行划分的一种方式,每一种划分就称为一种应用结构(Application architecture)。

(1)集中结构

  一个主机带多个终端的多用户数据仓库系统应用结构。系统的数据源、ETL、数据仓库、数据集市、DWMS、应用工具及其客户端程序全部在主机上运行,终端仅具备基本的输入和输出功能。

(2)两层结构

① 客户机/服务器结构(Client/Server),简称 C/S 结构。数据仓库系统的数据源、ETL、数据仓库、数据集市、DWMS 等集中在主机上运行,客户机负责应用工具、客户端程序以及数据的输入输出功能。

② 浏览器/服务器结构(Browser/Server),简称 B/S 结构。数据源、ETL、数据仓库、数据集市、DWMS 以及应用工具等集中在服务上运行,客户机通过 URL(Uniform Resource Locator)向Web 服务器提出服务请求,Web 服务器将服务内容传送给客户机,并显示在浏览器上。

(3)三层结构

  在两层结构基础增加应用服务器一层。鉴于三层 C/S 结构仍然存在两层 C/S 结构的缺点,实际应用中主要采用三层 B/S 结构。

  三层B/S结构把数据仓库系统的四大功能分为三个层次。

① 表示层:客户机的浏览器负责表达逻辑并与用户交互(客户机)

② 功能层:Web 服务器及其应用扩展,实现应用服务(称为应用层)

③ 数据层: 数据仓库服务器 负责数据管理和事务控制

(4)多层结构

① 多层结构是在三层结构基础之上发展起来的数据仓库系统应用结构。在这种结构中,一般是根据系统应用规模,将功能层分为两层或者更多层。

② 它将功能层 Web 服务器中的应用服务功能分离出来放在不同的服务器上运行,可以使 Web 服务器专注于响应用户的 Web 服务请求,而应用服务器专注于应用服务功能的实现,以增加系统的灵活性和适应性。

4、确定数据仓库项目预算

  数据仓库的设计开发具有需求模糊,螺旋周期的特点,但可以根据决策使用部门、使用人数、基础软件和硬件平台、以及数据仓库设计开发等所需费用,对数据仓库系统开发方案预算进行粗略的宏观估计。

5、编写可行性分析报告和规划纲要

  在完成数据仓库规划后,应写出详尽的可行性分析报告,编制数据仓库系统规划纲要,内容包括数据来源、数据范围、人力资源、设备资源、软件及支持工具资源、开发成本估算、开发进度计划等。

6、评审可行性分析报告和规划纲要

  由决策部门的领导组织召开有数据仓库专家、决策部门负责人、决策分析人员以及其他行政领导参加的评审会,对其进行评价。

 如果评审认定该系统规划可行,应立即成立由企业主要领导负责的数据仓库设计开发领导小组,以便协调各个部门在数据仓库系统建设中的关系,保证系统开发所需的人力、物力和财力,保证设计开发工作的顺利进行。如果需要的话,应同时对外发表项目招标公告。


相关实践学习
阿里云百炼xAnalyticDB PostgreSQL构建AIGC应用
通过该实验体验在阿里云百炼中构建企业专属知识库构建及应用全流程。同时体验使用ADB-PG向量检索引擎提供专属安全存储,保障企业数据隐私安全。
AnalyticDB PostgreSQL 企业智能数据中台:一站式管理数据服务资产
企业在数据仓库之上可构建丰富的数据服务用以支持数据应用及业务场景;ADB PG推出全新企业智能数据平台,用以帮助用户一站式的管理企业数据服务资产,包括创建, 管理,探索, 监控等; 助力企业在现有平台之上快速构建起数据服务资产体系
目录
相关文章
|
7月前
|
SQL 存储 大数据
数据仓库(10)数仓拉链表开发实例
拉链表是数据仓库中特别重要的一种方式,它可以保留数据历史变化的过程,这里分享一下拉链表具体的开发过程。 维护历史状态,以及最新状态数据的一种表,拉链表根据拉链粒度的不同,实际上相当于快照,只不过做了优化,去除了一部分不变的记录,通过拉链表可以很方便的还原出拉链时点的客户记录。
342 13
数据仓库(10)数仓拉链表开发实例
|
6月前
|
存储 分布式计算 大数据
数据仓库与数据湖在大数据架构中的角色与应用
在大数据时代,数据仓库和数据湖分别以结构化数据管理和原始数据存储见长,共同助力企业数据分析。数据仓库通过ETL处理支持OLAP查询,适用于历史分析、BI报表和预测分析;而数据湖则存储多样化的原始数据,便于数据探索和实验。随着技术发展,湖仓一体成为趋势,融合两者的优点,如Delta Lake和Hudi,实现数据全生命周期管理。企业应根据自身需求选择合适的数据架构,以释放数据潜力。【6月更文挑战第12天】
233 5
|
5月前
|
存储 数据挖掘 BI
数据仓库深度解析与实时数仓应用案例探析
随着数据量的不断增长和数据应用的广泛深入,数据治理和隐私保护将成为数据仓库建设的重要议题。企业需要建立完善的数据治理体系,确保数据的准确性、一致性和完整性;同时加强隐私保护机制建设,确保敏感数据的安全性和合规性。
620 55
|
4月前
|
存储 机器学习/深度学习 数据采集
深入解析大数据核心概念:数据平台、数据中台、数据湖与数据仓库的异同与应用
深入解析大数据核心概念:数据平台、数据中台、数据湖与数据仓库的异同与应用
|
4月前
|
存储 SQL 分布式计算
MaxCompute 在大规模数据仓库中的应用
【8月更文第31天】随着大数据时代的到来,企业面临着海量数据的存储、处理和分析挑战。传统的数据仓库解决方案在面对PB级甚至EB级的数据规模时,往往显得力不从心。阿里云的 MaxCompute(原名 ODPS)是一个专为大规模数据处理设计的服务平台,它提供了强大的数据存储和计算能力,非常适合构建和管理大型数据仓库。本文将探讨 MaxCompute 在大规模数据仓库中的应用,并展示其相对于传统数据仓库的优势。
144 0
|
5月前
|
机器学习/深度学习 分布式计算 数据挖掘
数据仓库与数据挖掘技术的结合应用
【7月更文挑战第30天】数据仓库与数据挖掘技术的结合应用是现代企业实现高效决策和精准分析的重要手段。通过整合高质量的数据资源,利用先进的数据挖掘技术,企业可以更好地理解市场、客户和业务,从而制定科学的决策和战略。未来,随着技术的不断进步和应用场景的不断拓展,数据仓库与数据挖掘技术的结合应用将会为企业的发展提供更多机遇和挑战。
|
5月前
|
存储 消息中间件 数据挖掘
数据仓库的深度探索与实时数仓应用案例解析
大数据技术的发展,使得数据仓库能够支持大量和复杂数据类型(如文本、图像、视频、音频等)。数据湖作为一种新的数据存储架构,强调原始数据的全面保留和灵活访问,与数据仓库形成互补,共同支持企业的数据分析需求。
|
7月前
|
数据采集 SQL 数据挖掘
数据仓库的设计开发应用(三)
数据仓库的设计开发应用(三)
63 4
|
7月前
|
存储 数据采集 SQL
数据仓库的设计开发应用(二)
数据仓库的设计开发应用(二)
55 3
|
SQL Oracle 关系型数据库
【SQL开发实战技巧】系列(二十一):数据仓库中时间类型操作(进阶)识别重叠的日期范围,按指定10分钟时间间隔汇总数据
如何识别重叠的日期范围、日期出现次数、确定当前记录和下一条记录之间相差的天数【SQL开发实战技巧】这一系列博主当作复习旧知识来进行写作,毕竟SQL开发在数据分析场景非常重要且基础,面试也会经常问SQL开发和调优经验,相信当我写完这一系列文章,也能再有所收获,未来面对SQL面试也能游刃有余~。例如:以上就是今天要讲的内容,本文仅仅简单介绍了pandas的使用,而pandas提供了大量能使我们快速便捷地处理数据的函数和方法。
【SQL开发实战技巧】系列(二十一):数据仓库中时间类型操作(进阶)识别重叠的日期范围,按指定10分钟时间间隔汇总数据

热门文章

最新文章

下一篇
DataWorks