数据仓库的设计开发应用(三)
目录
- 五、数据仓库的实施
- (一)数据仓库的创建
- (二)数据抽取转换加载
- 六、数据仓库系统的开发
- (一)开发任务
- (二)开发方法
- (三)系统测试
- 七、数据仓库系统的应用
- (一)用户培训
- (二)决策支持
- (三)维护评估
五、数据仓库的实施
数据仓库实施时期的任务包括DW创建、数据抽取、数据转换和数据装载等四个阶段。
(一)数据仓库的创建
根据逻辑设计阶段的结果,创建一个数据库文件,并在其中创建事实表、维度表以及详细类别表结构(没有任何数据记录),同时根据物理结构设计结果完成存储位置、存储分配等物理参数设置,等待数据抽取、数据转换直到完成数据的装载。
例 3-5 试根据例3-3和3-4的设计结果创建警务数据仓库。
解:根据例 3-3和3-4的设计结果,我们以 Windows 身份验证登录 SQL Server2008 R2 的数据库引擎服务器,并在 SSMS 环境中创建数据仓库 HuangDW_Hotel,具体创建步骤如下。
1、创建数据仓库名称 HuangDW_Hotel
2、创建维度表
按照以下顺序分别创建 DimDate,DimCaseType,DimAddress,DimPolice,Dimpeople 和 DimHotel 等6张维度表。
(1)创建时间维度表DimDate维度表的SQL命令。
CREATE TABLE DimDate (DateKey nchar(10) PRIMARY KEY,FullDateTime smalldatetime NULL,CYear smallint NULL,CMonth tinyint NULL,CDay tinyint NULL,CQuarter tinyint NULL,Cweek tinyint NULL,CHour tinyint NULL)
(2)创建前科类型表DimCaseType维度表的SQL命令。
CREATE TABLE DimCaseType(CrimeKey nchar(6) PRIMARY KEY,LaregeClassName nvarchar(100) NULL,SmallClassName nvarchar(100) NULL,SubClassName nvarchar(100) NULL)
(3)创建地址表DimAddress维度表的SQL命令。
CREATE TABLE DimAddress(AddressKey nchar(9) PRIMARY KEY,ProvinceKey nvarchar(2) NULL,…)
(二)数据抽取转换加载
在单击数据仓库名称 HuangDW_Hotel 前面的 “+” 号并逐层展开,我们可以看到已经创建的6张维度表和1张事实表,只是这7张表中没有任何记录。
下面的工作就是配置数据抽取、转换和装载(Extraction-Loading-Transformation,ETL)包,也称为 SSIS 包或 ETL 包,使其能够完成从事务数据库 OLTPHotel 中抽取数据,经转换后加载到 HuangDW_Hotel 这个数据仓库之中。
六、数据仓库系统的开发
(一)开发任务
其任务就是要开发查询类,验证型和发掘型三大类型的数据仓库访问工具,统称为决策支持工具。
1、查询类工具
(1)数据仓库的工具虽然是以分析工具为主,但查询类工具(Query Tool,QT)仍然是其重要组成部分。
(2)数据仓库的查询工具很少是对记录级数据的查询,而几乎都是对分析结果,如广义索引中的统计数据,或者发展趋势、模式总结等的查询,其主要用户为企业中高层领导或决策者。
2、验证型工具
(1)验证型工具也称为分析型工具(Analysis Tool, AT),一般是用户自己对数据仓库数据有某种假设或期待,然后利用各种分析工具通过反复的、递归的统计查询以验证或否定自己的假设,即从数据仓库中发现某种事实。
(2)多维分析工具就是一种验证型工具。它通过对数据的多种可能的观察角度(时间、地域和业务等)进行快速,一致和交互的存取,以对数据进行深入地分析和观察。
(3)联机分析处理(On Line Analysis Processing,OLAP)是一种基于多维数据模型的数据分析处理技术。
(4)基于 OLAP 技术的数据分析程序就是一种多维分析工具,也称为联机分析处理工具或 OLAP 工具。它通过 OLAP 服务器,将来源于关系型数据库或其它应用系统的数据抽取和转换为多维数据集,并对其包括切片、切块、旋转、下钻、上卷等多维分析处理。
(5)当数据仓库成功建立后,意味着 OLAP 再也无需自己劳神抽取和转换数据,只要围绕数据仓库直接创建多维数据集,即可完成各种多维数据分析处理功能,并为企业领导提供决策支持。
(6)多维分析工具或 OLAP 工具的使用是一个人机交互过程,即在数据分析处理的每一步都需要用户的 “指导” ,或者输入分析参数,或者做出某种选择后才能进行下一步的分析处理。
3、发掘型工具
(1)发掘型工具也称预测型工具,它可在没有用户指导或有少量指导的情况下,从数据中发现潜在而新颖的模式,预测趋势和经营行为。
(2)数据挖掘(Data Mining,DM)是典型的发掘型工具,它是从大型数据库中提取隐藏的预测性信息的一种技术。
(3)DM与验证型工具不同,数据挖掘是一种展望和预测型工具,它能挖掘出数据间潜在的模式,为企业提出具有前瞻性的、基于知识的决策信息。
(4)数据挖掘工具都依赖某种数据挖掘算法,如关联规则、分类规则、聚类分析、时序规则或离群点挖掘算法等。
4、三类工具的关系
(1)查询工具、验证型工具、发掘型工具是数据仓库应用工具的三个重要方面,它们各自具有不同的侧重点,适用的范围和针对的用户也各不相同。
(2)查询工具属于表面层次的工具,验证型工具处于较浅的层次,而发掘型工具则是深层次的分析挖掘工具。
(3)三类工具相互补充,完美结合可是 DW 更好地发挥决策支持功能。
(二)开发方法
数据仓库访问工具的开发一般有三种途径。
1、使用商品化开发平台
比如,使用 SQL Server 的分析服务等开发平台配置数据仓库访问工具。开发人员只要求做少量的配置工作或者少量的开发工作,即可让用户访问已经建成的数据仓库。但这种商品化的开发平台,缺乏灵活性,对一些查询分析过程复杂的访问工具开发,就显得能力不足,甚至难于实现。
2、使用程序设计语言
利用某种高级语言或 Web 程序设计语言,开发用户访问数据仓库的程序或应用工具,具有相当的灵活性和较强的应变能力。其访问工具能让用户方便地通过鼠标操作,或输入少量参数,即可实现对数据仓库的访问,完成查询、分析和挖掘等数据分析任务。
3、综合使用两种途径
因为商品化开发平台可能无法完成一些复杂的访问工具,这时就需要结合程序设计语言来开发部分复杂的功能,并集成为一个完整的数据仓库访问工具。
(三)系统测试
在完成访问工具开发工作之后,需要对数据仓库系统进行全面的测试,其测试工作主要包括单元测试和系统集成测试两个方面。
1、单元测试
当数据仓库系统访问工具的每个独立单元模块完成后,需要立即对它们进行单元测试,以查找存在于每个单元模块程序中的错误。
2、集成测试
在完成单元测试之后,需要进行数据仓库的集成测试。以检查每个单元模块与数据仓库系统和子系统之间的接口是否完好,是否能够正常传递数据和完成系统的整体功能。系统的集成测试需要对数据仓库的所有组件进行大量的功能测试和回归测试。数据仓库访问工具的开发,本质上属于软件的开发问题。
七、数据仓库系统的应用
(一)用户培训
(1)培训目的:使用户熟练地应用数据仓库系统并为企业管理决策提供支持。
(2)素质要求:参加培训的人员,应该具有一定的计算机使用技能。
(3)培训准备:选择一个完整的数据仓库主题数据作为培训案例,演示数据仓库系统的统计报表、OLAP 分析以及数据挖掘等功能,理解统计报表和 OLAP 分析结果对管理决策的支持作用。
(4)原理讲解:向用户较详细地介绍数据仓库的概念、多维分析概念和数据仓库的数据源;培训用户了解数据仓库中所有查询工具、分析工具与挖掘工具的类型,以及利用这些工具获得报表以及分析结果的方法。
(二)决策支持
用户利用数据仓库系统开发时期完成的决策支持工具,对数据仓库进行查询统计、 OLAP 分析和数据挖掘,并将其统计分析或挖掘结果提供给企业高层领导决策参考的过程。
1、决策的查询支持
以警务数据仓库系统为例,可以回答决策者关心的如下问题。
(1)哪个旅馆/辖区当天的入住人数最多?
(2)每个旅馆每月前科人员的入住量?
(3)各类前科人员在不同旅馆的入住时间长短?
(4)各类前科人员入住、离开的高峰时间是哪个时间段?
(5)某个时间段哪个旅馆入住率最高?比如,下半夜入住率高的旅馆有可能是犯罪分子的聚集地。
(6)哪个旅馆前科人员入住率有上升趋势?
2、决策的多维分析支持
利用 OLAP 多维分析工具,可以对数据仓库历史的或当前细节的数据,按照多个维度进行不同粒度的统计分析。
以警务数据仓库为例,多维分析可以回答许多粒度的分析结果。
(1)对以时间(月)、来源(省)、辖区(地市)的三维数据,可以回答 “某个月某个省份在某个市辖内旅馆的入住人次”。
(2)如果按来源将其进行下钻分析处理,可以得到 “某个月某个地市在某个辖区旅馆的入住人次”。
(3)如果按时间将其进行下钻分析处理,可以得到 “某一旬某个省份在某个辖区旅馆的入住人次”。或者“某一日某个省份在某个辖区旅馆的入住人次”
3、决策的预测性支持
利用数据仓库开发时期完成的发掘型工具,从数据仓库数据中发现潜在而新颖的模式,或发现企业经营的问题并找出其原因,为企业提出具有预测性的、基于知识的决策信息。
利用某种发掘型工具,如利用离群点检测工具,可以检测出某个酒店某天有异常人员入住(需要重点排查),或根据某地区或某旅馆某时段的异常人员入住情况,预测该地区某类案件可能发生;利用关联规则挖掘和分类规则工具,可以分析案发地点和旅馆入住地点的关联关系,预测某旅馆有重点人员入住时,某类案件发生的范围。
(三)维护评估
在数据仓库应用时期,不仅要适应数据仓库不断增长的现实,而且还要对数据仓库进行评估和维护。
1、数据仓库评估
(1)投资回报分析主要包括定量分析和定性分析。定量分析主要指收益与成本的比率;定性分析主要指企业与客户之间关系状态是否有所改善?即对外界变化的反应能力、企业管理能力是否有所增强等?
(2)数据质量评估,就是要对数据仓库数据的准确性、完整性和一致性进行评估。如数据是否符合它的类型要求和取值要求,数据是否具有完整性和一致性,数据保持时效性并且不能出现异常。
(3)系统性能评定主要包括硬件平台是否能够支持大数据量的工作和多类用户、多种工具的大量访问需求?软件平台能否用一个高效或优化的方式来组织和管理数据?系统是否适应数据和处理的扩展需求?
(4)系统功能评估主要包括两个方面,一是系统现有的功能是否达到项目规划时的预期目标,二是系统能否满足当前的决策支持需要。
2、数据仓库维护
(1)日常性维护
包括数据仓库的备份和恢复工作,保证系统出现故障或灾难时,可利用备份数据可以很快地将数据仓库恢复到正常的状态。随着时间的推移,要定期将数据源中新增的数据添加到数据仓库中来,还要不失时机地删除时间过于久远的、没有利用价值的数据。
(2)适应性维护
主要针对数据仓库数据质量、功能评估和系统性能结果对其进行适应性维护。对数据仓库数据进行规范整理以提高数据质量;取消某些细节数据和无用的汇总数据查询功能,增加实用的汇总数据查询功能;找出影响数据仓库性能的来源,并对数据仓库进行调整以提升系统性能。
(3)增强性维护
由于数据仓库建设初期可能存在尚未完成的决策分析主题,或者用户在数据仓库的使用过程中,由于对数据仓库的决策价值有了更深的理解,又提出了更多的决策分析主题。即进入数据仓库新一轮的生命周期,完成对新决策主题的规划、设计、实施、开发和应用等任务。
相关文章:
数据仓库的设计开发应用(三)
目录 五、数据仓库的实施(一)数据仓库的创建(二)数据抽取转换加载 六、数据仓库系统的开发(一)开发任务(二)开发方法(三)系统测试 七、数据仓库系统的应用&am…...
【04】WebAPI
WebAPI 和标准库不同,WebAPI 是浏览器提供的一套 API,用于操作浏览器窗口和界面 WebAPI 中包含两个部分: BOM:Browser Object Model,浏览器模型,提供和浏览器相关的操作DOM:Document Object Model,文档模型,提供和页面相关的操作BOM BOM 提供了一系列的对象和函数,…...
数据预处理在数据挖掘中的重要性
数据挖掘作为从大量数据中提取有用信息和知识的过程,其结果的准确性和可靠性直接受到数据质量的影响。因此,数据预处理在数据挖掘中扮演着至关重要的角色。让我们探讨数据质量对数据挖掘结果的影响,并介绍常见的数据预处理方法以及它们如何提…...
Java并发编程—JUC线程池架构
Java并发编程(JUC,Java Utilities Concurrency)中的线程池架构是Java提供的一种用于管理和复用线程的机制。线程池的主要目标是减少线程创建和销毁的开销,提高系统的响应速度,并通过合理的线程管理和资源分配ÿ…...
Android input输入子系统
一.Android input输入子系统简介 Input系统是Android系统中负责处理用户输入操作的核心组件,它负责从各种输入设备(如屏幕、键盘、鼠标等)获取原始的输入事件(如按键、触摸、滑动等),并将其转换为Android应…...
如何在webapp中于动发布一个应用
目录 第一步:在webapp文件夹内自定义文件夹第二步:生成一个文本,并把后缀改为 .html第三步:进入bin文件夹打开服务第四步:打开方式选择java第六步:输入你想输出的东西第七步:双击运行即可 第一步…...
部署一个本地的ChatGPT(Ollama)
一 下载Ollama Ollama下载地址:https://ollama.com/download 下载完后 二 安装运行 双击下载好的OllamaSetup.exe开发 安装Ollama: 安装完成后,多了一个Ollama的菜单如下图 : Ollama安装好默认是配置开机运行,如果没有运行可以在…...
Vue 3中的reactive:响应式状态的全面管理
🤍 前端开发工程师、技术日更博主、已过CET6 🍨 阿珊和她的猫_CSDN博客专家、23年度博客之星前端领域TOP1 🕠 牛客高级专题作者、打造专栏《前端面试必备》 、《2024面试高频手撕题》 🍚 蓝桥云课签约作者、上架课程《Vue.js 和 E…...
【网络】详解HTTPS及探究加密过程
目录 一、什么是HTTPS1、加密解密是什么2、为什么要加密3、常见的加密方式1、对称加密2、非对称加密 二、探究HTTPS如何实现加密1、方案一----只使用对称加密2、方案二----只使用非对称加密3、方案三----双方都使用非对称加密4、方案四----非对称加密 对称加密5、中间人攻击6、…...
【C语言】字符与字符串---从入门到入土级详解
🦄个人主页:修修修也 🎏所属专栏:C语言 ⚙️操作环境:Visual Studio 2022 目录 一.字符类型和字符数组(串)简介 1.ASCII 2.定义,初始化,使用 1>字符的定义及初始化 2>字符串的定义及初始化 二.…...
Github Copilot 工具,无需账号,一键激活
① 无需账号,100%认证成功!0风险,可联网可更新,,支持copilot版本升级,支持chat ② 支持windows、mac、linux系统等设备 ③一号通用,支持所有IDE(AppCode,CLion,DataGrip,GoLand,IntelliJ IDEA …...
node: -max-old-space-size=xxx is not allowed in NODE_OPTIONS
问题描述 在启动node项目时,出现了OOM参照网上的处理方案,设置了环境变量: export NODE_OPTIONS"–max-old-space-size8192"当再次通过npm run docs:dev运行node项目的时候出现了如下错误: node: -max-old-space-siz…...
k8s编排系统
Kubernetes(简称K8s)是一个开源的容器编排系统,由Google基于其内部的Borg项目开发,并于2014年正式对外发布。目前,Kubernetes已成为云原生计算基金会(Cloud Native Computing Foundation, CNCF)…...
samba服务器的配置
需求:在Linux上搭建一个文件共享服务,创建不同的账号给予不同的权限,在windows可以直接访问该共享目录 介绍 Samba 是一个强大的工具,使得不同操作系统之间可以无缝地共享文件和资源,促进了跨平台环境下的协作和通信…...
H12-821_279
279.第三类LSA的Link ID是: A.所描述的ABR的Router ID B.所在网段上DR的端口IP地址 C.所描述的目的网段 D.生成这条LSA的路由器的Router ID 答案:C 注释: OSPF的LSA可以单独描述网络信息、拓扑信息,也可以同时描述网络信息和拓扑信息。 LSA3…...
Stable Diffusion科普文章【附升级gpt4.0秘笈】
随着人工智能技术的飞速发展,我们越来越多地看到计算机生成的艺术作品出现在我们的生活中。其中,Stable Diffusion作为一种创新的图像生成技术,正在引领一场艺术创作的革命。本文将为您科普Stable Diffusion的相关知识,带您走进这…...
Lua 如何在Lua中调用C/C++函数
Lua调用C函数有两种方式 程序主体在C中运行,C函数注册到Lua中。C调用Lua,Lua调用C注册的函数,C或者Lua得到函数的执行结果。程序主体在Lua中运行,C函数作为库函数供Lua使用。 C的代码如下 如何在Lua脚本中调用这个C语言函数(ad…...
JVM学习-类加载
目录 1.类文件结构 2.类加载器 3.类加载的三个阶段 3.1加载 3.2链接 3.2.1验证 3.2.2准备阶段 3.2.3解析阶段 3.3初始化 4.拓展:反射 4.1获取类对象 4.2创建实例 4.3获取方法 4.4方法调用 1.类文件结构 2.类加载器 类加载器用来将类文件的二进制字节码加载到JV…...
PyCharm中如何使用不同的虚拟环境
1. 简介 有些项目用老的运行环境,而有些项目用新的运行环境,那么我们在运行这些代码(比如跑对比实验的时候)如何进行切换呢,这时候就可以使用虚拟环境啦 2. 虚拟环境的创建 首先启动Anaconda Prompt 并在其中执行如…...
Unity Live Capture 中实现面部捕捉同步模型动画
Unity Face Capture 是一个强大的工具,可以帮助你快速轻松地将真实人脸表情捕捉到数字模型中。在本文中,我们将介绍如何在 Unity Face Capture 中实现面部捕捉同步模型动画。 安装 |实时捕获 |4.0.0 (unity3d.com) 安装软件插件 安装 Live Capture 软件…...
XML Group端口详解
在XML数据映射过程中,经常需要对数据进行分组聚合操作。例如,当处理包含多个物料明细的XML文件时,可能需要将相同物料号的明细归为一组,或对相同物料号的数量进行求和计算。传统实现方式通常需要编写脚本代码,增加了开…...
《从零掌握MIPI CSI-2: 协议精解与FPGA摄像头开发实战》-- CSI-2 协议详细解析 (一)
CSI-2 协议详细解析 (一) 1. CSI-2层定义(CSI-2 Layer Definitions) 分层结构 :CSI-2协议分为6层: 物理层(PHY Layer) : 定义电气特性、时钟机制和传输介质(导线&#…...
多模态商品数据接口:融合图像、语音与文字的下一代商品详情体验
一、多模态商品数据接口的技术架构 (一)多模态数据融合引擎 跨模态语义对齐 通过Transformer架构实现图像、语音、文字的语义关联。例如,当用户上传一张“蓝色连衣裙”的图片时,接口可自动提取图像中的颜色(RGB值&…...
如何将联系人从 iPhone 转移到 Android
从 iPhone 换到 Android 手机时,你可能需要保留重要的数据,例如通讯录。好在,将通讯录从 iPhone 转移到 Android 手机非常简单,你可以从本文中学习 6 种可靠的方法,确保随时保持连接,不错过任何信息。 第 1…...
SQL慢可能是触发了ring buffer
简介 最近在进行 postgresql 性能排查的时候,发现 PG 在某一个时间并行执行的 SQL 变得特别慢。最后通过监控监观察到并行发起得时间 buffers_alloc 就急速上升,且低水位伴随在整个慢 SQL,一直是 buferIO 的等待事件,此时也没有其他会话的争抢。SQL 虽然不是高效 SQL ,但…...
现有的 Redis 分布式锁库(如 Redisson)提供了哪些便利?
现有的 Redis 分布式锁库(如 Redisson)相比于开发者自己基于 Redis 命令(如 SETNX, EXPIRE, DEL)手动实现分布式锁,提供了巨大的便利性和健壮性。主要体现在以下几个方面: 原子性保证 (Atomicity)ÿ…...
宇树科技,改名了!
提到国内具身智能和机器人领域的代表企业,那宇树科技(Unitree)必须名列其榜。 最近,宇树科技的一项新变动消息在业界引发了不少关注和讨论,即: 宇树向其合作伙伴发布了一封公司名称变更函称,因…...
LabVIEW双光子成像系统技术
双光子成像技术的核心特性 双光子成像通过双低能量光子协同激发机制,展现出显著的技术优势: 深层组织穿透能力:适用于活体组织深度成像 高分辨率观测性能:满足微观结构的精细研究需求 低光毒性特点:减少对样本的损伤…...
人工智能--安全大模型训练计划:基于Fine-tuning + LLM Agent
安全大模型训练计划:基于Fine-tuning LLM Agent 1. 构建高质量安全数据集 目标:为安全大模型创建高质量、去偏、符合伦理的训练数据集,涵盖安全相关任务(如有害内容检测、隐私保护、道德推理等)。 1.1 数据收集 描…...
API网关Kong的鉴权与限流:高并发场景下的核心实践
🔥「炎码工坊」技术弹药已装填! 点击关注 → 解锁工业级干货【工具实测|项目避坑|源码燃烧指南】 引言 在微服务架构中,API网关承担着流量调度、安全防护和协议转换的核心职责。作为云原生时代的代表性网关,Kong凭借其插件化架构…...
