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

目录

    • 一、数据仓库设计的特点
    • 二、数据仓库系统开发过程
    • 三、数据仓库系统的规划


  

一、数据仓库设计的特点

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、评审可行性分析报告和规划纲要

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

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/746131.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Talk|加州大学洛杉矶分校鲁盼:基于大型语言模型的多模态数学推理

本期为TechBeat人工智能社区第579期线上Talk。 北京时间3月14日(周四)20:00,加州大学洛杉矶分校博士生—鲁盼的Talk已准时在TechBeat人工智能社区开播! 他与大家分享的主题是: “基于大型语言模型的多模态数学推理”,向大家系统地介绍了多模态…

大语言模型智能体简介

大语言模型(LLM)智能体,是一种利用大语言模型进行复杂任务执行的应用。这种智能体通过结合大语言模型与关键模块,如规划和记忆,来执行任务。构建这类智能体时,LLM充当着控制中心或“大脑”的角色&#xff0…

【数据结构】模拟实现二叉搜索树

文章目录 1. 二叉搜索树的实现2. 二叉搜索树的应用3. 改造二叉搜索树为 KV 结构4. 二叉搜索树的性能分析 1. 二叉搜索树的实现 namespace key {template<class K>struct BSTreeNode{typedef BSTreeNode<K> Node;Node* _left;Node* _right;K _key;BSTreeNode(const…

YOLOv8独家改进:backbone改进 | 最新大卷积核CNN架构UniRepLKNet,ImageNet 88% | CVPR2024

💡💡💡本文独家改进:大核卷积一统多种模态!RepLK正统续作UniRepLKNet,代替YOLOv8 Backbone 改进结构图如下: 收录 YOLOv8原创自研 https://blog.csdn.net/m0_63774211/category_12511737.html?spm=1001.2014.3001.5482 💡💡💡全网独家首发创新(原创),适…

Windows系统搭建Cloudreve结合内网穿透打造可公网访问的私有云盘

目录 ⛳️推荐 1、前言 2、本地网站搭建 2.1 环境使用 2.2 支持组件选择 2.3 网页安装 2.4 测试和使用 2.5 问题解决 3、本地网页发布 3.1 cpolar云端设置 3.2 cpolar本地设置 4、公网访问测试 5、结语 ⛳️推荐 前些天发现了一个巨牛的人工智能学习网站&#xff…

通讯芯片D3232简介——主要用于工控主板、工业控制器、新能源充电桩等众多涉及RS232通讯的产品。

一、应用领域 D3232芯片主要用于工控主板、工业控制器、程序烧录下载器、仿真器、新能源充电桩等众多涉及RS232通讯的产品。 二、基本特性 D3232芯片由两个线路驱动器、两个线路接收器和双电荷泵电路组成&#xff0c;具有HBM>15kV、CDM>2kV的ESD保护能力&#xff0c;并且…

Seata 2.x 系列【10】回滚日志表 undo_log

有道无术&#xff0c;术尚可求&#xff0c;有术无道&#xff0c;止于术。 本系列Seata 版本 2.0.0 本系列Spring Boot 版本 3.2.0 本系列Spring Cloud 版本 2023.0.0 源码地址&#xff1a;https://gitee.com/pearl-organization/study-seata-demo 文章目录 1. 概述2. 表语句…

【Java 并发】AbstractQueuedSynchronizer 中的 Condition

1 简介 任何一个 Java 对象都天然继承于 Object 类, 在线程间实现通信的往往会应用到 Object 的几个方法, 比如 wait(), wait(long timeout), wait(long timeout, int nanos) 与 notify(), notifyAll() 几个方法实现等待 / 通知机制。同样的, 在 Java Lock 体系下也有同样的方…

工具篇--分布式定时任务springBoot--elasticjob简单使用(1)

文章目录 前言一、elasticjob 介绍&#xff1a;二、elasticjob 使用&#xff1a;2.1 部署zookeeper&#xff1a;2.2 引入库2.2 定义任务&#xff1a;2.3 任务执行&#xff1a;2.4 任务执行控制台输出&#xff1a; 三、elasticjob 启动错误&#xff1a;3.1 KeeperErrorCode Ope…

【Node.js从基础到高级运用】十二、身份验证与授权:JWT

身份验证与授权是现代Web应用中不可或缺的部分。了解如何在Node.js应用中实施这些机制&#xff0c;将使你能够构建更安全、更可靠的应用程序。本文将引导你通过使用JWT实现用户注册、登录和权限控制的过程。 JWT&#xff08;Json Web Token&#xff09; JWT是一种用于双方之间…

蓝桥杯深度优先搜索|剪枝|N皇后问题|路径之谜(C++)

搜索&#xff1a;暴力法算法思想的具体实现 搜索&#xff1a;通用的方法&#xff0c;一个问题如果比较难&#xff0c;那么先尝试一下搜索&#xff0c;或许能启发出更好的算法 技巧&#xff1a;竞赛时遇到不会的难题&#xff0c;用搜索提交一下&#xff0c;说不定部分判题数据很…

R语言tidycmprsk包分析竞争风险模型

竞争风险模型就是指在临床事件中出现和它竞争的结局事件&#xff0c;这是事件会导致原有结局的改变&#xff0c;因此叫做竞争风险模型。比如我们想观察患者肿瘤的复发情况&#xff0c;但是患者在观察期突然车祸死亡&#xff0c;或者因其他疾病死亡&#xff0c;这样我们就观察不…

基于单片机的太阳能热水器控制系统设计与仿真

目录 摘要 3 Controling system design and simulation of the solar water heater based on single chip microcomputer 4 第一章 前言 5 1.1设计背景和意义 5 1.2国内外的发展趋势 5 第二章 系统设计总览 7 2.1控制中心 7 2.2外围设备 7 第三章 系统硬件设计 8 3.1 总硬件的…

小程序路由跳转---事件通信通道EventChannel(二)

事件通信通道EventChannel实现两个页面之间的数据传输已在上篇小程序路由跳转—事件通信通道EventChannel&#xff08;一&#xff09;展开叙述&#xff0c;接下来讨论下多个页面&#xff08;三个及以上&#xff09;数据的通道如何构建。 本文重点&#xff1a;三个以上页面需将…

jenkin部署spring boot项目【从0到1】

写在前面&#xff0c;遇到的很多错误 本来想用docker启动Jenkins的&#xff0c;也这样做了&#xff0c;但是遇到了一个非常严重的问题&#xff0c;就是mvn命令在docker里面不生效&#xff0c;然后就修改文件&#xff0c;但是发现vi不存在&#xff0c;好的。接着用yum安装vi工具…

Vue2 引入自己下载的SVG图像的方式

Vue2 引入下载的SVG图像的方式 Step 1&#xff1a;安装依赖 npm i svg-sprite-loader --saveStep 2&#xff1a;创建文件路径 // index.js import Vue from vue import SvgIcon from /components/SvgIcon// svg component// register globally Vue.component(svg-icon, Svg…

《JAVA与模式》之抽象工厂模式

系列文章目录 文章目录 系列文章目录前言一、使用简单工厂模式的解决方案二、引进抽象工厂模式三、抽象工厂模式结构四、抽象工厂模式的优缺点前言 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站,这篇文章男女通用,看…

Hubspot 2023年推荐使用的11个AI视频生成器

视频是任何营销活动不可或缺的一部分&#xff1b;然而&#xff0c;如果你不懂编辑或时间紧迫&#xff0c;它们可能会很乏味&#xff0c;很难创建。一只手从电脑里伸出来&#xff0c;拳头碰到另一只手&#xff1b;代表AI视频生成器。 幸运的是&#xff0c;你可以利用许多人工智能…

【数据分析】数据分析介绍

专栏文章索引&#xff1a;【数据分析】专栏文章索引 目录 一、介绍 二、生活中的数据分析 1.无处不在的数据 2.为什么要进行数据分析&#xff1f; 三、数据挖掘案例 1.案例分析 一、介绍 数据采集&#xff1a;数据采集是指从不同来源收集原始数据的过程&#xff0c;包括…

考研失败, 学点Java打小工——Day3

1 编码规范——卫语句 表达异常分支时&#xff0c;少用if-else方式。   比如成绩判断中对于非法输入的处理&#xff1a; /*>90 <100 优秀>80 <90 良好>70 <80 一般>60 <70 及格<60 不及格*/Testpu…