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

目录

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


  

一、数据仓库设计的特点

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

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

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

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

MapReduce的原理分析

1.概述 MapReduce的思想核心是“分而治之,先分再合”,适用于大量复杂任务处理场景(大规模数据处理场景)。 MapReduce分两个阶段: map阶段(分):如果任何可以拆分并且没有依赖,那么就把复杂的任务拆分成小任务,拆分成小任务之后&a…

【云原生-kubernetes系列】--kubernetes日志收集

1、ELK架构 1.1、部署ES集群 https://mirrors.tuna.tsinghua.edu.cn/elasticstack/apt/7.x/pool/main/e/elasticsearch/ 1、下载软件包 rootes-server1:~# wget https://mirrors.tuna.tsinghua.edu.cn/elasticstack/apt/7.x/pool/main/e/elasticsearch/elasticsearch-7.12.0-…

QMI8658芯片I2C驱动开发指南

这个芯片纯国产挺好用的,电路很好设计,我这垃圾焊功,纯手焊,,居然能用。 第一部分 硬件连接 画的很简陋,看看就可以了,这里I2C总线需要接10K上拉没有画出来,这个需要注意一下。 …

【XR806开发板试用】基于WEBSOCKET实现人机交互(控制开关灯)以及开发问题记录

一、开发板编译、功能介绍 根据官方文档编译烧录成功后,我们修改下官方例子,进行开发来实现websocket。 整体流程:开发板先自动寻找指定的wifi并且连接,连接成功后,通过websocket来与服务端连接,连接成功后…

idea项目mapper.xml中的SQL语句黄色下划线去除

问题描述 当我们使用idea开发java项目时,经常会与数据库打交道,一般在使用mybatis的时候需要写一大堆的mapper.xml以及SQL语句,每当写完SQL语句的时候总是有黄色下划线,看着很不舒服。 解决方案: 修改idea的配置 Edi…

实验01 ASP.NET网站的建立及运行

【实验目的】 (1)能熟悉ASP.NET的开发环境Visual Studio Community 2019(VSC 2019)。 (2)能通过解决方案管理网站,会在解决方案中创建网站。 (3)会设置IIS 10中的网站…

Node.js(1)

跨平台的node.js运行环境,使开发者可以搭建服务器端的js应用程序 它可以编写服务器端程序; 编写数据接口;提供网页资源浏览功能 前端工程化:开发集成的所有工具和技术 与浏览器环境的区别 node.js环境中没有DOM和BOM fs模块-读…

Linux下安装多个nodejs并映射Jenkins

背景 需要Jenkins中切换多个Node,比如nodejs16和nodesjs18,所以在宿主机按照好这两个版本,然后再映射到Jenkins容器中 步骤 1.下载地址 https://nodejs.org/dist/ 放到 cd /opt/soft/2.解压 tar -xzvf node-v16.20.0-linux-x64.tar.gz tar -xzvf n…

SSM SpringBoot vue智能手机参数分析平台

SSM SpringBoot vue智能手机参数分析平台 系统功能 首页 图片轮播 新闻资讯 手机信息 手机百科 登录注册 个人中心 后台管理 登录注册 个人中心 手机百科管理 用户管理 手机对比管理 配置管理 新闻资讯管理 手机信息管理 对比信息管理 我的收藏管理 开发环境和技术 开发语言…

Kafka配置SASL_PLAINTEXT权限。常用操作命令,创建用户,topic授权

查看已经创建的topic ./bin/kafka-topics.sh --bootstrap-server localhost:9092 --list 创建topic 创建分区和副本数为1的topic ./bin/kafka-topics.sh --create --bootstrap-server localhost:9092 --topic acltest --partitions 1 --replication-factor 1 创建kafka用户 …

迷宫寻路[天梯赛 -- 栈]

文章目录 题目描述思路AC代码 题目描述 输入样例 8 8 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 0 0 1 1 0 0 0 1 1 1 0 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 1 0 0 0 1 1 1 0 1 1 0 1 0 0 0 0 0 0 0 4 4 0 0 1 0 0 0 0 0 0 0 1 1 0 1 0 0 -1 -1输出样例 1,1 2,1 3,1 4,1 5,1 5,2 5…

修复ElementUI中el-select与el-option无法通过v-model实现数据双向绑定的问题

1. 问题描述 需求:在使用ElementUI时,通过el-select和el-option标签实现下拉列表功能,当el-option中的选项被选中时,被选中的选项可以正确回显到已选择的列表中。 对于上面的下拉列表,当我们选中“超级管理员”的选项…

Tomcat的使用

1. Tomcat 1.1 Tomcat 是什么 Tomcat 就是基于 Java 实现的一个开源免费, 也是被广泛使用的 HTTP 服务器 1.2 下载安装 Tomcat官网选择其中的 zip 压缩包, 下载后解压缩即可,解压缩的目录最好不要带 “中文” 或者 特殊符号 进入 webapps 目录,每个文件夹都对应…

vue3项目随笔1

1,Eslint Prettier 报错情况: 解决办法: (1)下载Prettier - code formatter (2)配置setting.json文件 文件 -> 首选项 -> 设置 -> 用户 -> Eslint "editor.defaultFormatter":…

【Hadoop】Hadoop概述与核心组件

目录 Hadoop概述Hadoop 发展历史Hadoop 三大发行版本1.Apache Hadoop(常用)2.Cloudera Hadoop3.Hortonworks Hadoop优势优势总结——4高(高可靠、高扩展、高效、高容错) Hadoop组成1.HDFS管理者:NameNode(n…

【计算机网络_传输层】UDP和TCP协议

文章目录 1. 重新理解端口号端口号划分netstat指令pidof 2. UDP协议2.1 UDP协议端格式2.2 UDP的特点2.3 UDP的注意事项2.4 基于UDP的应用层协议 3. TCP协议(传输控制协议)3.1 TCP协议的格式和报头字段3.2 如何解包和分用3.3 理解TCP协议报头3.4 TCP协议的…

解决electron打包vue-element-admin项目页面无法跳转的问题

解决electron打包vue-element-admin项目页面无法跳转的问题 说明之前通过这个教程已经打包成功,但是发现进行账号密码登录后页面无法跳转的问题。现在已经解决,所以记录一下。 1、检查路由模式是否为hash模式,如果不是改成hash模式。 new Ro…

【DL经典回顾】激活函数大汇总(十五)(LogSoftmax附代码和详细公式)

激活函数大汇总(十五)(LogSoftmax附代码和详细公式) 更多激活函数见激活函数大汇总列表 一、引言 欢迎来到我们深入探索神经网络核心组成部分——激活函数的系列博客。在人工智能的世界里,激活函数扮演着不可或缺的…

【矩阵】54. 螺旋矩阵【中等】

螺旋矩阵 给你一个 m 行 n 列的矩阵 matrix ,请按照 顺时针螺旋顺序 ,返回矩阵中的所有元素。 示例 1: 输入:matrix [[1,2,3],[4,5,6],[7,8,9]] 输出:[1,2,3,6,9,8,7,4,5] 解题思路 1、模拟顺时针螺旋顺序遍历矩阵…

R语言语法基础(说人话版)

在Rstudio中使用ctrl回车来执行某一行的代码 在R语言中,通常不需要像C语言一样在每条语句的结尾添加分号来表示语句结束。R语言是一种脚本语言,它使用换行符来分隔语句,因此分号通常是可选的,除非你想在同一行上写多个语句。在R中…