警务数据仓库的实现

目录

    • 一、SQL Server 2008 R2
      • (一)SQL Server 的服务功能
      • (二)SQL Server Management Studio
      • (三)Microsoft Visual Studio
    • 二、创建集成服务项目
    • 三、配置“旅馆_ETL”数据流任务
    • 四、配置“人员_ETL”数据流任务
      • (一)创建“人员_ETL”对象
      • (二)配置“人员_ETL”参数
    • 五、配置“时间_ETL”数据流任务
    • 六、配置“入住_ETL”数据流任务
    • 七、SSIS包package的部署
      • (一)将包另存到SSIS服务器
      • (二)创建作业代理



  本文介绍在警务信息数据仓库分析与设计的基础上,应用 Microsoft SQL Server 2008 R2 的集成服务(SQL Server Integration Services,SSIS)功能, 完成警务信息数据仓库 SSIS 包的配置任务,并最终实现将数据源 OLTPHotel 中的数据, 抽取转化后加载到数据仓库 HuangDW_Hotel 之中。

一、SQL Server 2008 R2

  Microsoft SQL Server 微软公司推出的一款商品化关系型数据库管理系统(RDBMS),因其中包括了数据仓库的管理功能,也是一款关系数据仓库管理系统(RDWMS),在国际国内有广泛用户群。

  Microsoft SQL Server 2008 R2 在 SQL Server 2008 基础上增加了许多新的功能,不仅能为用户的关键商业应用提供可信赖的、高效的、智能的开发平台,支持策略管理和审核、大规模数据仓库、空间数据、高级报告与分析服务等功能,还增强了应用开发能力,提高了可管理性,强化了对商业智能及数据仓库的支持。

  我们的警务信息数据仓库是在 SQL Server 2008 R2 平台上实现的,因此,简单介绍 SQL Server 2008 R2 与警务信息数据仓库实现有关的服务功能。

(一)SQL Server 的服务功能

  1. 数据库引擎(SSDE)是 SQL Server 系统的核心服务,包括传统数据库管理系统(DBMS)和数据仓库管理系统(DWMS)功能。
  2. 集成服务(SSIS)是一个功能强大的数据集成平台,可以完成有关数据的 “提取-转换-加载(ETL)” 功能。
  3. 分析服务(SSAS)提供了 OLAP 多维分析和数据挖掘功能,支持用户对所建立的数据仓库进行商业智能分析。
  4. 报表服务(SSRS)为用户提供了支持企业级的 Web 报表功能。通过使用 SSRS 服务,用户可以方便地定义和发布满足自己需求的报表,且无论是报表的布局格式,还是报表的数据源,用户都可以轻松地实现 Word,PDF,Excel,XML 等格式的报表。

(二)SQL Server Management Studio

  SQL Server Management Studio(SSMS)是一个集成的数据库/数据仓库管理环境,用于访问、配置、管理和创建 SQL Server 数据库/数据仓库有关的所有组件,使如数据库引擎(SSDE)、分析服务(SSAS)、报表服务(SSRS)、集成服务(SSIS)和嵌入式数据库(SSC)协同工作。

  在其【服务器类型】下拉框内有【数据库引擎】、Analysis Services、Reporting Services、Integration Services 和 SQL Server Compact 等5个选项。选择其中任何一个获得相应服务功能。

(三)Microsoft Visual Studio

1、商业智能开发平台简介

  • Microsoft Visual Studio(MVS)是微软公司推出的一个软件集成开发环境,称为商业智能开发平台(SQL Server Business Intelligence Development Studio),是目前最为流行的 Windows 应用程序开发环境之一。
  • SQL Server Integration Services(集成服务,简称SSIS)工具,可完成对数据源的数据抽取、转换并装载到数据仓库的集成项目开发,包括控制流、数据流任务参数配置。
  • SQL Server Analysis Services(分析服务,SSAS)工具,可完成对数据仓库数据的各种多维数据集重构,为 OLAP 分析提供支持。
  • SSIS 是 SQL Server 为用户提供的主要智能服务功能之一,是一个可视化的高性能数据 “抽取-转换-装载”(ETL)集成解决方案的配置和调试平台。
  • 对每一个实际应用问题,可利用 SSIS 为其开发一个数据集成方案(称为一个SSIS包)。SSIS 提供了一系列支持应用开发的内置任务和容器,数据源、数据查找、数据转换、数据目的等配置控件。用户只要配置数据流中各种控件的参数,几乎无需编写一行代码,就可以创建 SSIS 包来解决 ETL 等复杂的商业智能数据集成问题。

2、进入商业智能开发平台

  选择 Windows 的【SQL Server Business Intelligence Development Studio】菜单命令,进入 SQL Server 商业智能开发平台 Microsoft Visual Studio(MVS)的【起始页】窗口。

3、本章后续内容

  本章后面几节将要介绍的内容,就是在这个 MVS 平台上完成如下两项工作。

(1)创建集成服务项目

  每一个集成服务项目至少有一个 SSIS 包,所以,当 HuangDC_ETL 成功创建后,它有一个默认的 SSIS 包名称 Package.dtsx。

(2)配置数据流任务

  一个 SSIS 包通常由若干个数据流任务连接起来的控制流组成,它们是从数据源中抽取数据,并将其清理、合并转换后加载到数据仓库的一个集成解决方案。下图显示的是已经完成配置的教程实例 SSIS 包,它由7个数据流任务组成,其中的箭头表明了它们的执行顺序。

在这里插入图片描述
① 旅馆_ETL。负责将数据源 OLTPHotel 中旅馆信息表 LGXX 的数据抽取出来,经过转换后,加载到数据仓库 HuangDW_Hotel 目的表 DimHotel(旅馆维度表)之中。
OLTPHotel.LGXX → HuangDW_Hotel.DimHotel

② 人员_ETL。将 OLTPHotel 中常住人口表 CZRK、暂住人口表 ZZRK 和人员前科表 RYQK,加载到数据仓库 HuangDW_Hotel 目的表 DimPeople(人员维度表)之中。
OLTPHotel.CZRK, ZZRK, RYQK → HuangDW_Hotel. RYQK

③ 时间_ETL。将 OLTPHotel 中旅馆入住表 LGRZ 的入住时间 RZSJ 和离店时间 LDSJ 抽取出来,派生出年、月、日、时等新列,加载到数据仓库 HuangDW_Hotel 目的表 DimDate(时间维度表)之中。
OLTPHotel. LGRZ → HuangDW_Hotel.DimDate

④ 入住_ETL。将 OLTPHotel 旅馆入住表 LGRZ 的数据抽取出来,派生出年、月、日、时等新列,加载到数据仓库 HuangDW_Hotel 目的表 FactHotel(旅馆事实表)之中。
OLTPHotel.LGRZ → HuangDW_Hotel.FactHotel

⑤ 犯罪_ETL。将 OLTPHotel 中犯罪类型表 FZLX 的数据抽取出来,加载到 HuangDW_Hotel 目的表 DimCaseType(犯罪类型维度表)之中。
OLTPHotel.FZLX → HuangDW_Hotel.DimCaseType

⑥ 地址_ETL。将 OLTPHotel 中所属辖区表 SSXQ 的数据抽取出来,加载到 HuangDW_Hotel 目的表 DimAddress(地址维度表)之中。
OLTPHotel.SSXQHuangDW_Hotel.DimAddress

⑦ 派出所_ETL。将 OLTPHotel 中派出所表 PCS 的数据抽取出来,加载到 HuangDW_Hotel 目的表 DimPolice(派出所维度表)之中。
OLTPHotel.PCS → HuangDW_Hotel. DimPolice

二、创建集成服务项目

  在 MVS【起始页】窗口【文件】菜单中依次选择【新建】-【项目】菜单命令,弹出如图所示的【新建项目】窗口。

在这里插入图片描述
说明 SSIS 包的设计窗口主要有4个区域。

1、菜单命令及其快捷按钮区域,分布在窗口的第一行和第二行;

2、功能设计区域,在窗口的正中央——包括【控制流】,【数据流】、【事件处理程序】和【包资源管理器】等功能选项卡,是配置SSIS包的操作和显示区域。实例仅使用【控制流】和【数据流】选项卡。

3、【工具箱】区域位于【控制流】选项卡的左边,可折叠/展开窗口。
(1)SSIS 包要想完成从数据源抽取数据,并将其转换和加载到数据仓库等各种操作步骤,都需要借助工具箱中的特定控件来实现。
(2)多个控件组成的一个执行顺序就构成一个数据流任务,多个数据流任务按照执行顺序连接起来称为一个控制流。

4、【解决方案资源管理器】区域分布在窗口的右边,显示了整个项目拥有的对象,如数据源,数据源视图、SSIS 包和杂项等,以方便用户随时查看和引用。

说明:在 SSIS 包的配置实验过程中,可随时停止配置并退出 SQL Server 商业智能开发平台(MVS)。重新启动商业智能开发环境,在【起始页】窗口的【最近的项目】区域内单击 HuangDC_ETL,可重新进入 SSIS 包的设计窗口。

三、配置“旅馆_ETL”数据流任务

  配置将数据源 OLTPHotel 中旅馆信息表 LGXX 的数据,抽取、转化并加载到数据仓库 HuangDW_Hotel 目的表 DimHotel 之中所需要的操作控件、操作顺序和相关参数。比如数据源 LGXX 所在的服务器名称、数据库名称,还有目的表 DimHotel 所属数据库名称,以及数据库所在的服务器名称等。

在这里插入图片描述

四、配置“人员_ETL”数据流任务

(一)创建“人员_ETL”对象

  添加 “数据流任务” 并重命名为 “人员_ETL”。

(二)配置“人员_ETL”参数

  “人员_ETL” 对象包括 “ADO NET源”、“数据转换”、“派生列”、“查找”、“排序”、“合并”、“合并联接” 和 “ADO NET Destination” 等多种控件组成。

在这里插入图片描述

五、配置“时间_ETL”数据流任务

  配置 “时间_ETL” 数据流任务,就是配置将旅馆入住信息表 LGRZ 的入住时间 RZSJ 和离店时间 LDSJ 两个数据,抽取到数据仓库目的表 DimDate 之中所需要的操作控件、操作顺序和相关参数。

在这里插入图片描述

六、配置“入住_ETL”数据流任务

  “入住_ETL” 对象创建的步骤和操作方法与前面创建 “人员_ETL” 对象完全相同。可以模仿完成 “入住_ETL” 对象的创建。

在这里插入图片描述

  此外,我们还需 “犯罪_ETL” 数据流任务,“地址_ETL” 数据流任务和 “派出所_ETL” 数据流任务,且其配置过程与旅馆_ETL、入住_ETL的类似。下图所示分别展示了每个数据流任务中所需的控件。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

七、SSIS包package的部署

  前面已成功创建了一个集成服务项目 HuangDC_ETL,并为该项目的 SSIS 包 package.dtsx 配置了 “旅馆_ETL”、“人员_ETL” 等7个数据流任务。将把包 package.dtsx 部署到 SQL Server 的 SSIS 服务器中,使其能够根据指定的时间节点自动运行这个包,完成从 OLTPHotel 不断抽取数据并追加到数据仓库 HuangDW_Hotel 的任务。

SSIS 包的部署包括如下2项工作。
(1)将 SSIS 包 package.dtsx 另存到 SSIS 服务器,并将其命名为 HDC_ETL_Hotel,使其成为一个 “已存储的包” 对象存储在 SSIS 服务器之中;
(2)配置包的运行作业参数,包括周期和时间,使代理能够在指定时间内执行该包。

(一)将包另存到SSIS服务器

1、进入 SSIS 包文件所在的文件夹

2、打开 SSIS 包的设计窗口

3、指定 SSIS 包另存的服务器

4、为 SSIS 包副本命名

5、配置包保护级别

6、将包另存到服务器

7、查看包另存的结果

  服务器类型选择 Integration Services 登录 SSMS。

在这里插入图片描述

(二)创建作业代理

1、登录数据库服务器

  【服务器类型】选择 “数据库引擎” 登录SSMS。

2、启动 SQL Server 代理

3、配置新建的作业

(1)打开 “新建作业” 窗口。
(2)配置 “常规” 属性。
(3)打开作业 “步骤” 窗口。
(4)配置 “新建作业步骤” 参数。
(5)打开作业 “计划” 窗口。
(6)配置 “新建作业计划”。

在这里插入图片描述
4、查看新建作业

  在图窗口中右击【SQL Server代理】对象,并在快捷菜单中选择【刷新】命令,再展开【SQL Server代理】,即可在【作业】对象下面看见一个名为 “旅馆数据抽取作业” 的对象。这表明存储在 SSIS 服务器中的包 HDC_ETL_Hotel,已作为 SQL Server 数据库服务器中的一个代理作业。至此以后会,它将在规定时间节点(每天凌晨2点)自动抽取事务数据库 OLTPHotel 中新增加的数据,并将其追加到数据仓库 HuangDW_Hotel 之中。

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

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

相关文章

k8s安装traefik作为ingress

一、先来介绍下Ingress Ingress 这个东西是 1.2 后才出现的,通过 Ingress 用户可以实现使用 nginx 等开源的反向代理负载均衡器实现对外暴露服务,以下详细说一下 Ingress,毕竟 traefik 用的就是 Ingress 使用 Ingress 时一般会有三个组件: …

基于SSM的高校普法系统(有报告)。Javaee项目。ssm项目。

演示视频: 基于SSM的高校普法系统(有报告)。Javaee项目。ssm项目。 项目介绍: 采用M(model)V(view)C(controller)三层体系结构,通过Spring Spri…

inkscape中文版本 G代码生成器(支持中英文及数字)使用

inkscape G代码生成器(支持中英文及数字)使用 1 inkscape安装1. 界面介绍2. 基本操作3. 图形编辑4. 图层管理5. 文件操作6. 高级功能7. 学习资源 2 laserengraver插件安装3 inkscape 使用candle 验证G代码效果 1 inkscape安装 跟着提示默认按键即可。 软…

HTML网站的概念

目录 前言: 1.什么是网页: 2.什么是网站: 示例: 3.服务器: 总结: 前言: HTML也称Hyper Text Markup Language,意思是超文本标记语言,同时HTML也是前端的基础&…

Linux 环境安装Nginx—源码和Dokcer两种安装方式

一、源代码编译安装Nginx 1.下载最新nginx源码 以nginx-1.25.3.tar.gz为例: 可以使用命令(联网):curl -O http://nginx.org/download/nginx-1.25.3.tar.gz或在官网下载.tar.gz 2.解压缩 tar -zxvf nginx-1.25.3.tar.gz cd nginx-1.25.3/ 3.安装依赖…

HarmonyOS实战开发-实现自定义弹窗

介绍 本篇Codelab基于ArkTS的声明式开发范式实现了三种不同的弹窗,第一种直接使用公共组件,后两种使用CustomDialogController实现自定义弹窗,效果如图所示 相关概念 AlertDialog:警告弹窗,可设置文本内容和响应回调…

【javaWeb 第八篇】后端-Mybatis(万字详细学习)

Mybatis框架 前言MybatisMybatis入门配置SQL提示JDBC数据库连接池lombok Mybatis基础操作日志输出Mybatis的动态SQL 前言 这篇是作者学习数据持久层框架Mybatis的学习笔记,希望对大家有所帮助,希望大家能够与作者交流讨论 Mybatis Mybatis是一款优秀的…

Android 开发 Spinner setSelection 不起作用

问题 Android 开发 Spinner setSelection 不起作用 详细问题 笔者进行Android项目开发,根据上一个页面用户选择数据,显示当前页面Spinner选项,调用 Spinner setSelection 不起作用。 相关java代码 spinner.setAdapter(adapter); …

uniapp对接萤石云 实现监控播放、云台控制、截图、录像、历史映像等功能

萤石云开发平台地址:文档概述 萤石开放平台API文档 (ys7.com) 萤石云监控播放 首先引入萤石云js js地址:GitHub - Ezviz-OpenBiz/EZUIKit-JavaScript-npm: 轻应用npm版本,降低接入难度,适配自定义UI,适配主流框架 vi…

C语言例4-35:鸡翁一,值钱五;鸡母一,值钱三;鸡雏三,值钱一。百钱买百鸡、问鸡翁、鸡母和鸡雏各几何?

方法一&#xff1a; 代码如下&#xff1a; //鸡翁一&#xff0c;值钱五&#xff1b;鸡母一&#xff0c;值钱三&#xff1b;鸡雏三&#xff0c;值钱一。百钱买百鸡、问鸡翁、鸡母和鸡雏各几何&#xff1f; //方法一&#xff1a; #include<stdio.h> int main(void) {int x…

简易挛生分拣系统设计

1 工效组合展示 2 方案规划设计 3 数字挛生建模 基础建模、动画设计、模型导出 4 软件体系架构 5 Web交互设计 5.1 页面架构 5.2 初始构造 5.3 模型运用 5.4 WS通信 5.5 运行展现 6 服务支撑编码 6.1 整体调度 6.2 WS服务 6.3 C/S通信 7 系统级调试完善

李雅普诺夫函数

李雅普诺夫函数是一种用于描述动力系统稳定性的数学工具。它在动力系统和控制理论中具有广泛的应用&#xff0c;尤其是在研究非线性系统的稳定性方面。 李雅普诺夫函数通常用于证明动力系统在一些条件下是稳定的。一个李雅普诺夫函数是一个实数值函数&#xff0c;通常表示为 V…

使用mybatis的@Interceptor实现拦截sql

一 mybatis的拦截器 1.1 拦截器介绍 拦截器是一种基于 AOP&#xff08;面向切面编程&#xff09;的技术&#xff0c;它可以在目标对象的方法执行前后插入自定义的逻辑。 1.2 语法介绍 1.注解Intercepts Intercepts({Signature(type StatementHandler.class, method “…

【Java - 框架 - Lombok】(2) SpringBoot整合Lombok完成日志的创建使用 - 快速上手;

"SpringBoot"整合"Lombok"完成日志的创建使用 - 快速上手&#xff1b; 环境 “Java"版本"1.8.0_202”&#xff1b;“Lombok"版本"1.18.20”&#xff1b;“Spring Boot"版本"2.5.9”&#xff1b;“Windows 11 专业版_22621…

华硕ROG幻X笔记本GZ301VV原厂OEM预装Win11系统安装包下载

ASUS华硕幻X电脑原装出厂Windows11系统&#xff0c;恢复出厂开箱状态系统 链接&#xff1a;https://pan.baidu.com/s/1RkPr5IscTUolYJVUrxTyhQ?pwdhob2 提取码&#xff1a;hob2 适用型号&#xff1a;GZ301VV、GZ301VU、GZ301VF 原装出厂系统自带所有驱动、出厂主题壁纸、系统…

翔云身份证实名认证接口-PHP调用方法

网络平台集成实名认证接口&#xff0c;是顺应当下网络实名制规定&#xff0c;有效规避法律风险。互联网平台若没有实名认证功能&#xff0c;那么便无法保证网民用户身份的真实性&#xff0c;很有可能被虚假用户攻击&#xff0c;特别是在当网络平台产生垃圾信息乃至是违法信息时…

springmvc自定义http请求状态码

1.背景 在做微信支付后回调时,微信要求: 接收成功&#xff1a; HTTP应答状态码需返回200或204&#xff0c;无需返回应答报文。 接收失败&#xff1a; HTTP应答状态码需返回5XX或4XX&#xff0c;同时需返回应答报文 微信通知文档:支付通知 - H5支付 | 微信支付商户文档中心 …

Flink CDC 同步数据到Doris

Flink CDC 同步数据到Doris Flink CDC 是基于数据库日志 CDC(Change Data Capture)技术的实时数据集成框架,支持了全增量一体化、无锁读取、并行读取、表结构变更自动同步、分布式架构等高级特性。配合 Flink 优秀的管道能力和丰富的上下游生态,Flink CDC 可以高效实现海量…

《VideoMamba》论文笔记

原文链接&#xff1a; [2403.06977] VideoMamba: State Space Model for Efficient Video Understanding (arxiv.org) 原文笔记 What&#xff1a; VideoMamba: State Space Model for Efficient Video Understanding 作者探究Mamba模型能否用于VideoUnderStanding作者引入…

穿透业务报表和回报方案,看见广汽集团的长期价值

在大多数内卷的领域&#xff0c;企业总是有各种各样的理由延缓或者停止回馈资本市场。所以&#xff0c;当我们在竞争激烈的汽车市场&#xff0c;发现这样一家始终将投资者回报放在重要位置的老牌车企时&#xff0c;会觉得有些惊讶。因为伴随着经营和分红上的高确定性&#xff0…