数据仓库的建立实验一
数据仓库与数据挖掘实验一(数据仓库的构建)
一、实验内容和目的目的:1.理解数据库与数据仓库之间的区别与联系;2.掌握典型的关系型数据库及其数据仓库系统的工作原理以及应用方法;3.掌握数据仓库建立的基本方法及其相关工具的使用。
内容:以SQL Server为系统平台,设计、建立数据库,并以此为基础创建数据仓库。
二、所用仪器、材料(设备名称、型号、规格等)操作系统平台:Windows 7数据库平台:SQL Server 2008 SP2三、实验原理数据仓库是在原有关系型数据库基础上发展形成的,但不同于数据库系统的组织结构形式,它从原有的业务数据库中获得的数据形成当前基本数据层,经过综合后形成轻度综合数据层,轻度综合数据再经过综合后形成高度综合数据层。
数据仓库结构包括当前基本数据(current detail data)、历史基本数据(older detail data)、轻度综合数据(lightly summarized data)、高度综合数据(highly summarized data)和元数据(meta data)。
数据仓库系统由数据仓库、仓库管理和分析工具3部分组成,结构形式如下图所示:数据仓库的逻辑数据模型是多维结构的数据视图,也称多维数据模型。
对于逻辑数据模型,可以使用不同的存储机制和表示模式来实现多维数据模型。
目前使用的多维数据模型主要有星型模型、雪花模型、星网模型、第三范式等。
ETL过程在开发数据仓库时,占去70%的工作量。
ETL过程的主要步骤概括为:(1)决定数据仓库中需要的所有的目标数据;(2)决定所有的数据源,包括内部和外部的数据源;(3)准备从源数据到目标数据的数据映射关系;(4)建立全面的数据抽取规则;(5)决定数据转换和清洗规则;(6)为综合表制定计划;(7)组织数据缓冲区域和检测工具;(8)为所有的数据装载编写规程;(9)维度表的抽取、转换和装载;(10)事实表的抽取、转换和装载。
四、实验方法、步骤要求:利用实验室和指导教师提供的实验软件,认真完成规定的实验项目,真实地记录实验中遇到的各种问题和解决的方法与过程,并绘出模拟实验案例的数据仓库模型。
数据仓库实验报告
数据仓库实验报告本次实验的目的是设计和构建一个数据仓库,并通过使用该数据仓库来进行数据分析。
本报告将分为三个部分:实验设计、实验过程和结果分析。
一、实验设计1. 数据需求:选取了一个电商平台的数据作为实验对象,包括订单数据、用户信息数据、产品数据等。
2. 数据清洗和预处理:对原始数据进行了清洗和预处理,包括数据去重、缺失值处理等。
3. 数据模型设计:根据需求,设计了一个星型模型,以订单信息作为事实表,以用户信息和产品信息作为维度表。
4. 数据仓库构建:使用开源的数据仓库工具进行了数据仓库的构建,包括创建表结构、导入数据等。
二、实验过程1. 数据清洗和预处理:首先对原始数据进行了去重操作,保证数据的唯一性。
然后对缺失值进行了处理,采用填充的方式进行处理。
2. 数据模型设计:根据数据需求,设计了一个星型模型,以订单信息表作为事实表,以用户信息表和产品信息表作为维度表。
通过主键和外键的关系,将这些表进行了关联。
3. 数据仓库构建:使用开源的数据仓库工具,将设计好的数据模型导入到数据仓库中,并创建相应的表结构。
然后将清洗好的数据导入到对应的表中。
三、结果分析1. 数据质量评估:对数据仓库中的数据进行质量评估,包括数据准确性、完整性等。
通过查询数据仓库中的数据,对每个维度表和事实表的数据进行了验证。
2. 数据分析:通过在数据仓库上进行复杂查询和分析操作,获取了一些有价值的信息。
例如:最受用户欢迎的产品、用户购买行为的趋势等。
根据实验结果可以得出以下结论:1. 数据仓库可以提供高效的数据访问和分析能力,对于大规模数据的查询和分析非常高效。
2. 数据仓库可以提供数据一致性和数据质量保证的能力,可以对数据进行清洗和预处理操作。
3. 数据仓库可以满足复杂查询和分析需求,可以提供多维分析、数据挖掘等功能。
总结:本次实验通过设计和构建一个数据仓库,对电商平台的数据进行了分析,得到了一些有价值的信息。
通过实验,我们了解到数据仓库的设计和构建过程,并掌握了使用数据仓库进行数据分析的方法和技巧。
数据库实验报告范文
实验一建立数据库班级:姓名:学号:分数:一、实验目的1、理解SQL Server 数据库的存储结构;2、掌握SQL Server数据库的建立方法和维护方法。
二、实验内容1、创建数据库(1)要求:创建一个test1数据库,该数据库的主数据文件逻辑名称为test1_data,物理文件名为test1.mdf,初始大小为10MB,最大尺寸为无限大,增长速度为10%;数据库的事务日志文件逻辑名称为test1_log,物理文件名为test1.ldf,初始大小为1MB,最大尺寸为5MB,增长速度为1MB。
并且要求主数据文件和事务日志文件的物理位置在不同的硬盘上。
(2)创建一个指定多个数据文件和日志文件的数据库。
该数据库名称为test2,有1个10MB 和1个20MB的数据文件和2个10MB的事务日志文件。
数据文件逻辑名称为test2_1和test2_2,物理文件名为test2_1.mdf和test2_2.mdf。
主文件是test2_1,由primary指定,两个数据文件的最大尺寸分别为无限大和100MB,增长速度分别为10%和1MB。
事务日志文件的逻辑名为test2_log1和test2_log2,物理文件名为test2_log1.ldf和test2_log2.ldf,最大尺寸均为50MB,文件增长速度为1MB。
(3)使用文件组创建数据库test3。
使用三个文件组(含主文件组,即默认的文件组),每个文件组包含两个数据文件,并且每个文件组要安排在不同的硬盘上。
2、修改数据库(1)修改建立的test1数据库,为之添加一个5MB大小的新数据文件。
(2)修改test1数据库,将其中的主数据文件增加一个5MB的存储空间。
3、删除建立的数据库。
三、实验过程1、创建数据库(1)创建test1数据库的步骤:在SQL Server的查询分析器中输入命令如下:create database test1on(name=test1_data,filename='f:\sqltest1\test1.mdf',size=10mb,filegrowth=10%)log on(name=test1_log,filename='f:\sqltest2\test1.ldf',size=1mb,maxsize=5mb,filegrowth=1mb)(2)创建test2数据库的步骤:在SQL Server的查询分析器中输入命令如下:create database test2onprimary(name=test2_1,filename='f:\sqltest1\test2_1.mdf',size=10mb,filegrowth=10%),(name=test2_2,filename='f:\sqltest1\test2_2.ndf',size=20mb,filegrowth=1mb)log on(name=test2_log,filename='f:\sqltest1\test2_log1.ldf',size=10mb,maxsize=50mb,filegrowth=1mb),(name=test1_log,filename='f:\sqltest1\test2_log2.ldf',size=10mb,maxsize=50mb,filegrowth=1mb)(3)创建test3数据库的步骤:(这里的例子给出定义了两个文件组,一个是默认的,它包括两个文件test3_1.mdf和test3_2.mdf,令一个是group1组,也包括两个文件test3_3.mdf和test3_3.mdf。
北京理工大学-数据库-实验1-建立数据库
北京理工大学数据库实验1主讲老师:赵晓林学生:李经2012/11/20实验 1:建立数据库 (1)1.1 作业声明 (1)1.2 实验目的 (1)1.2.1 熟悉数据库环境、建立表、插入数据、删除数据 (1)1.3 实验过程 (1)1.3.1 建立“学籍与成绩管理系统”表格 (1)1.3.2 使用“INSERT ”语句向主表插入至少5行数据,向子表插入至少30行数据; (2)1.3.3 在子表中输入含有不存在外键值的数据; (4)1.3.4 使用SELECT * FROM ......观察数据; (4)1.3.5 更新部分学生的学籍情况、成绩 (4)1.3.6 删除部分同学的学籍信息 (5)1.3.7 使用所有学习的查询语句对表格的进行查询(自拟题目) (5)1.4 实验结论 (7)1.5 实验体会 (7)实验 1:建立数据库1.1 作业声明本次作业全部由本人完成,若存在抄袭或雷同现象,本人愿意接受老师相应的处理1.2 实验目的1.2.1熟悉数据库环境、建立表、插入数据、删除数据1.3 实验过程1.3.1建立“学籍与成绩管理系统”表格•建立表之间的参照关系•建立适当的索引1.3.1.1 sql代码:create database xuejicreate table xb --系表(xdh char(2) not null PRIMARY KEY,xmc varchar(30) not null,)create table xs --学生表(xm varchar(8) not null,xh char(10) not null PRIMARY KEY,xdh char(2) FOREIGN KEY REFERENCES xb(xdh),bj char(8),chrq datetime,xb char(2),)create table kc --课程表(kcbh char(3) not null PRIMARY KEY,kcmc char(20) not null,lx char(10),xf decimal(5,1),)create table js --教师表(xm varchar(8) not null,jsbh char(10) not null PRIMARY KEY,zc char(6),xdh char(2) FOREIGN KEY REFERENCES xb(xdh),)create table sk --授课表(kcbh char(3) not null FOREIGN KEY REFERENCES kc(kcbh),jsbh char(10) not null FOREIGN KEY REFERENCES js(jsbh),constraint kj_pk PRIMARY KEY (kcbh,jsbh))create table xk --选课表(xh char(10) not null FOREIGN KEY REFERENCES xs(xh),kcbh char(3) not null FOREIGN KEY REFERENCES kc(kcbh),jsbh char(10) not null FOREIGN KEY REFERENCES js(jsbh),cj decimal(5,1),constraint xkj_pk PRIMARY KEY (xh,kcbh,jsbh))create index s_xs on xs(xh); --建立索引建立索引原因:提高查询速度1.3.2使用“INSERT ”语句向主表插入至少5行数据,向子表插入至少30行数据;1.3.2.1 Sql代码insert into xb values('01','计算机');insert into xb values('02','数学');insert into xb values('03','经济');insert into xb values('04','法律');insert into xb values('05','中文');insert into xs values('王一','1120100001','01','08111001','1990-1-1','男');insert into xs values('王二','1120100002','01','08111001','1990-1-2','男');insert into xs values('王三','1120100003','01','08111001','1990-1-3','男');insert into xs values('王四','1120100004','01','08111001','1990-1-4','男');insert into xs values('王五','1120100005','01','08111001','1990-1-5','男');insert into xs values('王六','1120100006','01','08111001','1990-1-6','男');insert into xs values('张一','1120100007','02','08111002','1990-2-1','男');insert into xs values('张二','1120100008','02','08111002','1990-2-2','男');insert into xs values('张三','1120100009','02','08111002','1990-2-3','男');insert into xs values('张四','1120100010','02','08111002','1990-2-4','男');insert into xs values('张五','1120100011','02','08111002','1990-2-5','男');insert into xs values('张六','1120100012','02','08111002','1990-2-6','男');insert into xs values('李一','1120100013','02','08111003','1990-3-1','男');insert into xs values('李二','1120100014','02','08111003','1990-3-1','男');insert into xs values('李三','1120100015','02','08111003','1990-3-1','男');insert into xs values('李四','1120100016','02','08111003','1990-3-1','男'); insert into xs values('李五','1120100017','02','08111003','1990-3-1','男'); insert into xs values('李六','1120100018','02','08111003','1990-3-1','男'); insert into xs values('陈一','1120100019','04','08111004','1990-4-1','女'); insert into xs values('陈二','1120100020','04','08111004','1990-4-1','女'); insert into xs values('陈三','1120100021','04','08111004','1990-4-1','女'); insert into xs values('陈四','1120100022','04','08111004','1990-4-1','女'); insert into xs values('陈五','1120100023','04','08111004','1990-4-1','女'); insert into xs values('陈六','1120100024','04','08111004','1990-4-1','女'); insert into xs values('孙一','1120100025','05','08111005','1990-5-1','男'); insert into xs values('孙二','1120100026','05','08111005','1990-5-1','男'); insert into xs values('孙三','1120100027','05','08111005','1990-5-1','男'); insert into xs values('孙四','1120100028','05','08111005','1990-5-1','男'); insert into xs values('孙五','1120100029','05','08111005','1990-5-1','男'); insert into xs values('孙六','1120100030','05','08111005','1990-5-1','男');insert into kc values('001','操作系统','必修','3');insert into kc values('002','模拟电子技术基础','必修','3.5');insert into kc values('003','数据库原理与设计','必修','3');insert into kc values('004','数字图象处理','专业选修','3');insert into kc values('005','游戏设计概论','专业选修','2');insert into js values('郭靖','9920100001','高级','01');insert into js values('黄蓉','9920100002','一级','02');insert into js values('郭襄','9920100003','二级','03');insert into js values('杨过','9920100004','高级','04');insert into js values('杨康','9920100005','一级','05');insert into sk values('001','9920100001');insert into sk values('002','9920100002');insert into sk values('003','9920100003');insert into sk values('004','9920100004');insert into sk values('005','9920100005');insert into xk values('1120100001','001','9920100001','90');insert into xk values('1120100002','001','9920100001','80');insert into xk values('1120100003','001','9920100001','70');insert into xk values('1120100004','001','9920100001','60');insert into xk values('1120100005','001','9920100001','50');insert into xk values('1120100001','002','9920100002','95');insert into xk values('1120100002','002','9920100002','85');insert into xk values('1120100003','002','9920100002','75');insert into xk values('1120100004','002','9920100002','65');insert into xk values('1120100005','002','9920100002','55');insert into xk values('1120100001','003','9920100003','75');insert into xk values('1120100002','003','9920100003','80');insert into xk values('1120100003','003','9920100003','80');insert into xk values('1120100004','003','9920100003','90');insert into xk values('1120100005','003','9920100003','70');insert into xk values('1120100001','004','9920100004','74');insert into xk values('1120100002','004','9920100004','88');insert into xk values('1120100003','005','9920100005','68');insert into xk values('1120100004','005','9920100005','67');insert into xk values('1120100005','005','9920100005','80');1.3.3在子表中输入含有不存在外键值的数据;•观察数据库系统的反应1.3.3.1 Sql代码insert into xs values('钱一','1120100090','06','08111005','1990-5-1','男');1.3.3.2 执行结果系统显示:消息547,级别16,状态0,第1 行INSERT 语句与FOREIGN KEY 约束"FK__xs__xdh__54968AE5"冲突。
实验1 数据库创建-实验报告
实验一创建数据库和表一、实验目的和要求熟悉上机环境和查询分析器界面;掌握如何启动、停止服务管理器和企业管理器的方法;掌握如何用企业管理器定义数据库、表、约束,如何向表中添加、修改、输出记录,如何查看表的内容等操作;掌握如何在查询分析器中,执行SQL语句、分析语句的执行结果;掌握如何在查询分析器中,用DDL语言定义数据库、表、约束,并用最简单的INSERT语句向表中添加记录。
二、实验内容及指导1.○1启动服务管理器○2使用企业管理器,创建StudentInfo数据库○3在该数据库里定义Students、Courses、Enrollment3个表,问题是开始的时候不清楚如何添加约束,后来知道是在默认值或绑定处添加,也可以右击列名,选择CHECK约束添加○4向3个表中添加若干记录,因为有约束存在,所以如果输入不在约束范围内就会报错。
○5查看已创建的数据库和3个表的内容2.实验2的“提高操作”,具体内容如下:表3- 1图书表结构表3- 2读者表结构表3- 3借阅表结构用SQL语句创建的数据库不知道放在了哪里,创建的3个表也不知道放在了哪里,而且那三个表建完后不在图书馆数据库里面,后来找到了图书馆数据库在安装盘D盘底下的DA TA文件中,3个表在master数据库里,于是又在每个表的前面加了一句话“USE 图书馆 GO”重新保存之后这三个表就在图书馆数据库里面了。
还有一个办法是这样建数据库,如创建一个名为scd3的数据库:create database scd3on primary(name='scd3',filename='g:\scd2\scd3.mdf')log on(name='scd3_log',filename='g:\scd2\scd3_log.ldf')这样所创建的数据库就放在了g盘底下scd2文件夹中。
USE scd3CREATE TABLE用户(ID CHAR(8)PRIMARY KEY,NAME NVARCHAR(20)NOT NULL,PWD NVARCHAR(20)NOT NULL)GO新建的用户表即在scd3数据库中。
实验一 数据仓库的创建
实验一数据仓库的创建(2学时)
【实验要求】
了解某种数据库管理系统,如oracle、MS SQL Server等的使用;了解数据库系统提供的数据仓库功能,利用现有的数据库系统设计并创建一个数据仓库。
【实验内容】
步骤1:熟悉现有的数据库系统,了解其中的数据仓库功能。
步骤2:利用现有的数据库系统创建一个数据库。
步骤3:针对数据库中的数据,面向某一主题域设计数据仓库结构。
步骤4:创建数据仓库。
实验二 OLAP分析(6学时)
【实验要求】
利用创建的数据仓库设计并实现数据仓库上的一系列操作。
【实验内容】
步骤1:实现数据仓库上的上卷和下钻操作,能够显示原始数据和操作结果。
(2学时)
步骤2:实现数据仓库上的CUBE操作,能够显示原始数据和操作结果。
(4学时)。
数据挖掘-实验一 数据仓库的构建(实验报告)
实验一数据仓库的构建
一、实验目的
1.理解数据库与数据仓库之间的区别与联系;
2.掌握典型的关系型数据库及其数据仓库系统的工作原理以及应用方法;
3.掌握数据仓库建立的基本方法及其相关工具的使用。
二、实验要求
利用实验室和指导教师提供的实验软件,认真完成规定的实验项目,真实地记录实验中
遇到的各种问题和解决的方法与过程,并绘出模拟实验案例的数据仓库模型。
实验完成后,应根据实验情况写出实验报告。
三、实验平台
Microsoft SQL Server 2000 的Analysis Services
四、实验方法与步骤
1、建立系统数据源连接
(1)、启动 Analysis Manager
(2)建立数据库结构(3)建立数据源
3、建立多维数据集
(1)打开多维数据集向导
(3)建立时间维度
(4)建立产品维度
(5)建立客户维度
(6)何生成商店维度
(7)完成多维数据集的生成
(1)启用多维数据集编辑器
(2)向现有多维数据集添加维度
5、设计存储和处理多维数据集
(1)使用多维数据集浏览器查看多维数据集数据
(2)替换网格中的维度
(3)按时间筛选数据
7、存档教程数据库
五、实验心得。
实验1 数据库建立数据库
实验1 建立数据库实验目的:理解sql server数据库的存储结构,掌握sql server数据库的建立方法和维护方法。
实验内容:在sql server环境下建立数据库和维护数据库。
用可视化方法建立数据库:1、在企业管理器中建立一个数据库,数据文件和日志文件放在自己建立的文件夹下;用命令方式建立数据库:1、创建数据库test1,要求指定一个数据文件、一个事务日志文件,并把它们安排在不同的磁盘上;2、创建数据库test2,要求使用3个数据文件盒两个事务日志文件;3、创建数据库test3,要求使用3个文件组,每个文件组包含两个数据文件,并且每个文件组要安排在不同的磁盘上;4、修改建立的数据库test1,为之添加一个5MB大小的新数据文件;5、修改建立的数据库test2,将其中的主数据文件增加5MB的存储空间;6、删除建立的数据库test1。
实验方法:在sql server环境下用create database命令建立数据库,用alter database命令修改数据库,用drop database命令删除数据库。
实验相关知识:1、数据库的逻辑结构和物理结构;2、创建、修改、删除数据库的命令。
参考sql语句:create database test1on(name='test1_data',filename='e:\db1\test1_data.mdf' )log on(name='test1_log',filename='f:\db1\test1_log.ldf')create database test2on(name='test2_data1',filename='e:\db1\test2_data1.mdf' ),(name='test2_data2',filename='e:\db1\test2_data2.ndf' ),(name='test2_data3',filename='e:\db1\test2_data3.ndf' )log on(name='test2_log1',filename='f:\db2\test2_log1.ldf' ),(name='test2_log2',filename='f:\db2\test2_log2.ldf' )create database test3on primary(name='test3_data1',filename='d:\db\test3_data1.mdf' ),(name='test3_data2',filename='d:\db\test3_data2.ndf' ),filegroup fg2(name='test3_data3',filename='e:\db\test3_data3.ndf'(name='test3_data4',filename='e:\db\test3_data4.ndf' ),filegroup fg3(name='test3_data5',filename='f:\db\test3_data5.ndf' ),(name='test3_data6',filename='f:\db\test3_data6.ndf')log on(name='test3_log1',filename='f:\db\test3_log1.ldf')alter database test1add file(name='test1_data2',filename='f:\db1\test1_data2.ndf', size=3MB)alter database test2modify file(name='test2_data1',size=8MB)drop database test1。
1-数据仓库实验指导书
数据仓库实验指导书实验目的:数据仓库构建实验内容:规划需求分析,数据仓库设计;设置数据源,数据清洗转换;建立多维数据库(Cube);在多维数据集上练习切片、切块、钻取、聚合、旋转等OLAP基本数据操作。
实验分析:下面进行两个关键的实验,数据清洗转换和建立多维数据库(使用Northwind数据库),先用数据清洗转换,将需要的表从源库转换到新数据库,为数据仓库提供需要的数据,要形成的维表有Products,Category,Employees,Dates,Facts(事实表),在实验二中Products和Category将组成雪花架构的维表。
实验一:数据清洗转换内容:为数据仓库新建一个数据库,将Products,Categories,Employees,Orders,Order Details转换到新数据库,为数据仓库提供需要的数据目的:为数据仓库事实表和各维表建立基本数据实验环境:企业管理器在数据清洗转换之前,请在企业管理器中Northwind数据库下了解下Products,Categories,Employees,Orders,Order Details表的属性内容及表与表之间主键和外键约束关系(如果用雪花模式把上述5个表关系表达出来的话,谁是事实表?维度表是什么?谁是详细类别表?)。
考虑下:如果以时间维、地区维和产品维构建一个数据立方体?步骤:1)新建一个数据库myNorthwind,并准备从Northwind导入数据。
2)建立Products和Categories两个维度表,将维度表需要的列从Northwind数据库复制到myNorthwind。
3)建立Employees维度表,将源表的列内容复制过来,并将源表中first name和lastname合成一个fullname列,在DTS导入/导出向导中使用SQL语句合成新的列fullname。
4)建立Dates维度表,由源表Orders表中OrderDate一列产生出年、月、日、周、季等列,同时保留OrderDate一列。
数据库及数据库表的建立实验报告
实验1 数据库及数据库表的建立实验一.实验目的使学生熟悉SQL Server的企业管理器的用法,初步了解SQL Server查询分析器的使用方法,熟悉SQL SERVER的常用数据类型,加深对SQL和SQL语言的查询语句的理解.熟练掌握简单表的创建与修改.二.实验时数3学时三.实验内容(一)基本表的建立:1.建立一个"学生"表Student,它由学号xh,姓名xm,性别xb,年龄nl,所在系xi五个属性组成,其中学号属性不能为空,并且其值是唯一的.2.建立一个"学生"表Student,它由学号xh,姓名xm,性别xb,年龄nl,所在系xi五个属性组成,其中学号属性不能为空,并创建检查约束(nl>0).3.建立一个"学生"表Student,它由学号xh,姓名xm,性别xb,年龄nl,所在系xi五个属性组成,要求学号为主键,xb有默认的值为'男'4.建立"课程kc"包括课程号kch,课程名称kcmc,先修课程xxkc,学分xf,要求建立主键5.建立"成绩登记表cjdj"包括学号xh,程号kch,成绩,要求建立主键及与student及kc表联接的外键(二)基本表的修改:1.在cjdj表中增加一列"任课教师rkjs"2.删除cj表中rkjs一列3.将student表的xm一列允许空值的属性更改成不允许为空,将列xm的长度由char(8)改为char(10)4.增加cjdj表的列cj增加一个约束要求cj>0 and cj<=1005.建立一个临时表,再将其删除6.索引的建立与删除(理解以下语句的含义并上机实践):create unique index stu_xh on student(xh)create index xh_kch on cj(xh asc,kch desc)drop index student.xh_kch四.实验方法在SQL查询分析器"完成以上的任务.并检查所做的操作表现.五.实验步骤:(一)基本表的建立1.建立一个"学生"表Student,它由学号xh,姓名xm,性别xb,年龄nl,所在系xi五个属性组成,其中学号属性不能为空,并且其值是唯一的.程序:CREATE TABLE student1(xh INT PRIMARY KEY,xm CHAR(20),xb CHAR (2),nl INT,xi CHAR(20) );SELECT * FROM student12.建立一个"学生"表Student,它由学号xh,姓名xm,性别xb,年龄nl,所在系xi五个属性组成,其中学号属性不能为空,并创建检查约束(nl>0).程序:CREATE TABLE student2(xh INT PRIMARY KEY,xm CHAR(20),xb CHAR (2),nl INT,xi CHAR(20),CHECK(nl>0));SELECT *FROM student23.建立一个"学生"表Student,它由学号xh,姓名xm,性别xb,年龄nl,所在系xi五个属性组成,要求学号为主键,xb有默认的值为'男'程序:CREATE TABLE student3 (xh INT PRIMARY KEY, xm CHAR(20),xb CHAR (2) DEFAULT'男', nl INT,xi CHAR(20));SELECT *FROM student34.建立"课程kc"包括课程号kch,课程名称kcmc,先修课程xxkc,学分xf,要求建立主键CREATE TABLE kc(kch INT PRIMARY KEY,kcmc CHAR(20),xxkc CHAR (2),xf INT );select *from kc5.建立"成绩登记表cjdj"包括学号xh,程号kch,成绩,要求建立主键及与student及kc表联接的外键程序:CREATE TABLE ciji(xh INT ,kch INT,cj CHAR (20),PRIMARY KEY(xh,kch),FOREIGN KEY(xh) REFERENCES student(xh), FOREIGN KEY(kch) REFERENCES kc(kch), );SELECT *FROM student2(二)基本表的修改:1.在cjdj表中增加一列"任课教师rkjs"程序:alter table cjadd rkjs char(20);select *from cj;2.删除cj表中rkjs一列程序:alter table cijidrop column rkjs ;select *from ciji;3.将student表的xm一列允许空值的属性更改成不允许为空。
数据仓库实验1
SQL Server数据库
ETL工具:SSIS(SQL Server Integration Services)
三、实验步骤
具体步骤(一)
具体操作(二):Integration Services项目11
1、在控制流窗口中新建一个数据流任务,命名为“Address表的复制转移”;
五、教师评语
签名:
日期:
成绩
1.使用SQL Server导入导出向导
2.创建一个ETL包,将数据库AdventureWorks中的address表导入到数据库AdventureWorks DW中。
3.创建一个ETL包,将文本文件SampleCurrencyData.txt中的数据导入到数据库AdventureWorks DW中的FactCurrencyRate表中。
5、添加第一个查找“查找CurrencyKey”。到DimCurrency中查找CurrencyKey。
6、添加第一个查找“查找DateKey”。到DimDate中查找DateKey。
7、用AdventureWorks DW的表FactCurrencyRate接收这批数据。
配置过程
四、实验总结
通过本次试验的学习,基本了解了SSIS的原理和流程,SSIS是BI解决方案的主要ETL工具,它提供了一系列支持业务应用程序开发的内置任务容器转换和数据适配器。我们不用编写代码,就可以创建SSIS解决方案来使用ETL和商业智能解决复杂的业务问题,管理SQL Server数据库以及在SQL Server实例之间复制SQL Server对象。操作起来更为直观和方便。
配置过程四实验总结通过本次试验的学习基本了解了ssis的原理和流程ssis是bi解决方案的主要etl工具它提供了一系列支持业务应用程序开发的内置任务容器转换和数据适配器
数据仓库实验报告
四.实验总结通过本次实验,对数据仓库中关联规则的应用以及如何发现关联规则有了简单的了解,通过使用Analysis Services服务进行关联规则模型的建立和处理,以可视化的方式查看模型结果对关联规则有了根本的了解。
关联规则可以反映一个事物与其他事物之间的相互依存性和关联性,如果两个或多个事物之间存在一定的关联关系,其中一个事物就能通过其他事物预测到。
处理进度完成之后,单击“关闭”按钮,建模完成。
7.查看挖掘结果再次选择“挖掘模型查看器”选项卡,由vTargetMail数据集生成的决策树。
四实验总结本次实验使用SQL Server2005中的决策树方法,进一步的了解数据库Analysis Services的功能,对它的使用方法有了更深入的了解,能做一些基本的操作。
通过应用数据库Analysis Services的一些功能,能够分析一些数据之间的联系,有利于做出判断与决策。
四实验总结本次实验使用SQL Server 2005中的Analysis Service服务进行k-means算法模型的建立和处理并且可视化的方式查看结果,本次实验使我对k-means的算法加深了认识与了解。
能做到简单的应用。
k-means聚类算法是将各个聚类子集内的所有数样本的均值作为该聚类的代表点,算法的主要思想是通过迭代过程把数据集划分为不同的类别,使得评价聚类的性能的准则函数达到最优从而使生成的每个聚类内紧凑。
实验名称实验五SQLServer 2005中贝叶斯网络应用四实验总结通过本次实验对贝叶斯网络有了更深入的了解,贝叶斯网络是一个白匣子,各个结点之间的影响程度和条件概率关系都可以显示地看到,并且意义明确,因此其更适合那些影响因素少而且关系明确的情况,但贝叶斯网络使用者更多地了解领域,以增加网络的可理解性和预测、诊断的准确性。
通过使用SQLService2005的朴素贝叶斯网络功能使用能够做预测、诊断然后查看各个变量对被预测和被诊断的各个值得影响力。
2023年数据仓库实验报告
试验汇报四.试验总结通过本次试验, 试验三SQL Server 2023中决策树旳应用挖掘模型”页上, 单击“运行”按钮, 出现“处理进度”窗口。
11.处理进度完毕之后, 单击“关闭”按钮, 建模完毕。
12.查看挖掘成果再次选择“挖掘模型查看器”选项卡, 由vTargetMail数据集生成旳决策树。
四试验总结本次试验使用SQL Server2023中旳决策树措施, 深入旳理解数据库Analysis Services旳功能, 对它旳使用措施有了更深入旳理解, 能做某些基本旳操作。
通过应用数据库Analysis Services旳某些功能, 可以分析某些数据之间旳联络, 有助于做出判断与决策。
四试验总结本次试验使用SQL Server 2023中旳Analysis Service服务进行k-means算法模型旳建立和处理并且可视化旳方式查看成果, 本次试验使我对k-means旳算法加深了认识与理解。
能做到简朴旳应用。
k-means聚类算法是将各个聚类子集内旳所有数样本旳均值作为该聚类旳代表点, 算法旳重要思想是通过迭代过程把数据集划分为不一样旳类别, 使得评价聚类旳性能旳准则函数到达最优从而使生成旳每个聚类内紧凑。
四试验总结通过本次试验对贝叶斯网络有了更深入旳理解, 贝叶斯网络是一种白匣子, 各个结点之间旳影响程度和条件概率关系都可以显示地看到, 并且意义明确, 因此其更适合那些影响原因少并且关系明确旳状况, 但贝叶斯网络使用者更多地理解领域, 以增长网络旳可理解性和预测、诊断旳精确性。
通过使用SQLService2023旳朴素贝叶斯网络功能使用可以做预测、诊断然后查看各个变量对被预测和被诊断旳各个值得影响力。
数据仓库实验报告
数据仓库实验报告数据仓库实验报告实验报告实验一基于SQLServer2005示例数据库的多维数据模型实验名称一.实验目的通过本实验的学习,使学生掌握在SQL Server 2005示例数据仓库环境下建立多维数据模型过程的知识,训练其把教材上的内容应用到实际中的技能,为今后继续数据挖掘技术的学习奠定基础。
二.实验内容在SQL Server 2005示例数据仓库环境下建立多维数据模型。
针对Adventure Works Cycle公司的销售分析需求,从Adventure WorksDW示例数据库中导出数据,建立并部署“销售分析”多维数据集,进而从多角度对Adventure Works Cycle 公司的销售状况作分析研究。
三.实验步骤1.创建一个新的数据仓库分析项目打开Visual Studio 2005分析项目,选择Analysis Serveices项目,并将项目名称更改为“销售分析示例”2.定义数据源在“数据源”文件夹上右击,在弹出的快捷菜单上选择“新建数据源”命令。
启动新建数据源向导,单机新建按钮。
出现”连接管理器“对话框,在“提供程序”下下拉列表框中确保已选中服务账户,并命名数据源为”销售分析数据源”。
3.定义数据源视图选择“数据源视图” 文件夹,新建一个数据原视图。
数据源选择上一步新建的“销售分析数据源”。
在“可用对象”列表框中,选择下列表(同时按下Ctrl键可选择多个表)。
4.定义多维数据集右键单击“多维数据集”,从弹出的快捷菜单中选择“新建多维数据集”命令;已选中“使用数据源生成多维数据集”选项和“自动生成”选项;在“时间维度表”下拉列表中选择“时间”别名。
下一步设置时间维,将时间属性名称映射到已指定为“时间”维度和维度表中的相应列。
选择事实表的度量值(去掉不是度量值的列),可以对度量值重新命名。
设置和校验维度的属性及层次结构和属性,在“查看新建维度”页上,通过展开树控制件显示该方向导检测到的三个维度的层次结构和属性,查看其中每个维度的维度层次结构(可根据需要去掉部分为度属性)。
数据仓库实验
实验:数据仓库设计实验1、实验目的与要求(1)掌握数据仓库需求分析方法;(2)掌握多维表设计的方法;(3)掌握数据仓库概念模型、逻辑模型、物理模型的设计方法;(4)掌握在SQL Server Management Studio中新建数据库的方法;(5)掌握在SQL Server Management Studio中进行关系表管理的方法。
2、实验内容(1)理解数据仓库设计的三级数据模型以及设计方法与步骤;(2)进行多维表设计;(3)创建新数据库;(4)创建多维表设计中的各个表;(5)维护表之间的联系。
3、实验操作步骤本实验包括以下部分:(1)进行需求分析,并写出需求分析文档;仓库在现实生活中用途十分广泛,各种商城、超市要利用仓库存放物资,药房、医院等要利用仓库存放药品,企业、工厂等要利用仓库存放原材料、生产成品,因此仓库的管理成了一项十分重要的工作。
人工管理仓库既费时又费力,而且容易造成混乱,严重时会影响商城、企业的正常运作,造成恶劣的后果。
随着信息技术的发展,办公自动化的普及,如何快速,高效,便捷的管理仓库受到了高度的关注;因此为了解决这个问题我们提供这个系统以满足仓库管理需求,本系统是基于超市仓库的管理系统。
本系统模拟仓库管理,系统主要针对于日常库存信息的管理,包括物资管理、仓库管理、入库操作、入库查询统计、出库操作、出库查询统计、库存查询统计等处理情况。
用户可以通过相应的模块,对仓库里的物品的基本情况和库存数量进行查询,管理员通过简单的操作即可轻松的管理仓库,查询各项相关信息,并能进行入库和出库操作等。
(2)根据需求分析结果设计数据仓库体系结构,画出数据仓库体系结构图。
(3)根据需求分析结果进行数据仓库模型设计。
a.确定主要主题域,画出主要主题域的概念模型(用ERD表示)b.画出星型模型。
c.将星型模型转成逻辑模型,给出事实表与维表。
d.进行物理模型设计。
(4)多维表的数据组织、设计;(5)创建数据仓库;。
实验一 仓库管理系统的建立(074)
实验目的1、熟练掌握创建数据库、表以及查询的操作;2、能综合运用窗体、查询等实现对数据的处理。
实验内容本次实验内容是为一家销售公司建立一个仓库管理系统,请按下列要求完成各项操作:1、数据表及关系的建立(1)、请按下列各表,建立数据表:表1:仓库表表2:供应商表表3:货物表表4:员工表(2)、为表建立关系2、查询的建立(SQL语句的验证)完成基本查询:(1)查询电话号码包含“8343”的仓库(2)统计“中”型仓库的数量(3)查询供应商名称中含“启天”关键字,以有联系人姓“王”的供应商(4)统计货号为“A00001”在“10”号仓库的库存数量(5)统计由供应商号“003”提供的,货号为“A00001”在“10”号仓库的库存数量(6)查询姓“王”的所有“男”职工完成关联查询:(1)、建立查询“货物明细”,显示货物名称、规格、数量、供应商名称、供应商电话号码、仓库号、地址和仓库电话;(2)、查询姓“王”的职工,所负责的所有仓库的仓库(地址、电话、类型),按仓库号排序(3)、查询“启天电脑有限公司”所提供的所有产品信息,按货号排序(4)、统计各仓库的库存总数量(难点)(5)、查询“启天电脑有限公司”所提供的各货物名称及数量后附实验报告要求:实验报告的编写要求:实验一、数据库的基本操作实验要求:1、熟练ACCESS数据库的基本操作,掌握创建数据库、表以及查询的方法;2、能综合运用窗体、查询等实现对数据的处理。
从而为以后信息系统软件的操作打下数据库基础。
书写要求:1、建库建表部分:(1)列表说明所建表的结构(表名、用途、表结构,各字段名称、数据类型及说明);(2)以某一个表的建立为例,说明建表过程,并配以截图;(3)表建立后的数据表浏览界面截图;(4)多个表关系的建立,说明关系的建立过程,并以截图;2、SQL语句验证(1)根据要求,写出SQL语句(2)在ACCESS软件的SQL视图界面进行设计,并运行验证,说明书写过程并配以截图(无法运行或运行错误的,也要配图说明)3、实验总结结合此次实验,对数据库设计过程进行说明;并就实验过程中所遇的问题或学习心得、体会,学习方法等进行总结说明(不少于300字)附实验报告模板化学与环境学院科目:环境信息系统实验实验一、数据库的基本操作班级:074班姓名:aaaaaa学号:2000000000实验名称:aaaaaaaaaaaaa实验要求:1、熟练ACCESS数据库的基本操作,掌握创建数据库、表以及查询的方法;2、能综合运用窗体、查询等实现对数据的处理。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
昆明理工大学信息工程与自动化学院学生实验报告(2014 —2015 学年第 1 学期)课程名称:数据库仓库与数据挖掘开课实验室:信自楼4442014 年12月28日一、实验内容和目的目的:1.理解数据库与数据仓库之间的区别与联系;2.掌握典型的关系型数据库及其数据仓库系统的工作原理以及应用方法;3.掌握数据仓库建立的基本方法及其相关工具的使用。
二、实验原理及基本技术路线图(方框原理图)数据库(DataBase,DB)是长期存储在计算机内、有组织的、统一管理的相关数据的集合。
DB能为各种用户共享,具有较小的冗余度、数据间联系紧密而又有较高的数据独立性等特点。
构成的三要素是数据结构、数据操作、约束性条件。
三、所用仪器、材料(设备名称、型号、规格等)PC机和Microsoft SQL Server 2008四、实验方法、步骤1、登录SQL Server登录名:localhost2、使用SQL语句构建数据库(1)还原数据库(2)建立数据--建立数据USE cdCREATE DATABASE[DW]ON PRIMARY(NAME=N'DW',FILENAME=N'G:\DW.mdf')LOG ON(NAME=N'DW_log',FILENAME=N'G:\DW_log.ldf') GO(3)建立数据库:数据库→新建数据库(4)建维表①SQL语句USE DW----------------------------------1、建维表/*1.1 订单方式*/CREATE TABLE DIM_ORDER_METHOD(ONLINEORDERFLAG INT,DSC VARCHAR(20))/*1.2 销售人员及销售地区*/CREATE TABLE DIM_SALEPERSON(SALESPERSONID INT,DSC VARCHAR(20),SALETERRITORY_DSC VARCHAR(50))/*1.3 发货方式*/CREATE TABLE DIM_SHIPMETHOD (SHIPMETHODID INT,DSC VARCHAR(20))/*1.4 订单日期*/CREATE TABLE DIM_DATE(TIME_CD VARCHAR(8),TIME_MONTH VARCHAR(6),TIME_YEAR VARCHAR(6),TINE_QUAUTER VARCHAR(8),TIME_WEEK VARCHAR(6),TIME_XUN VARCHAR(4))/*1.5 客户*/CREATE TABLE DIM_CUSTOMER (CUSTOMERID INT,CUSTOMER_NAME VARCHAR(100), CUSTOMERTYPE VARCHAR(20),AGE INT,SEX VARCHAR(2),MaritalStatus VARCHAR(10), YearlyIncome VARCHAR(50),Education VARCHAR(50),Occupation VARCHAR(50), NumberCarsOwned INT,TotalChildren INT,COUNTRY_NAME VARCHAR(100), STATEPROVINCE_NAME VARCHAR(100), CITY_NAME VARCHAR(100))/*1.6 订单状态*/CREATE TABLE DIM_ORDER_STATUS (STATUS INT,DSC VARCHAR(30))/*1.7 客户价值*/CREATE TABLE V_SUBTOTAL_VALUES (ORDER_VALUES_ID INT,DSC VARCHAR(30),MIN_VALUE INT,MAX_VALUE INT)(5)建维度表的ETL①SQL语句--二、维度表的ETL-------------------------------------INSERT INTO DIM_ORDER_METHODVALUES (0,'销售人员')INSERT INTO DIM_ORDER_METHODVALUES (1,'客户在线')INSERT INTO DIM_SHIPMETHODSELECT ShipMethodID,NAME FROM cd.Purchasing.ShipMethodINSERT INTO DIM_SALEPERSONSELECT A.SalesPersonID,'',FROM cd.Sales.SalesPerson A,cd.Sales.SalesTerritory B WHERE A.TerritoryID=B.TerritoryIDINSERT INTO DIM_ORDER_STATUSVALUES(1,'处理中')INSERT INTO DIM_ORDER_STATUSVALUES(2,'已批准')INSERT INTO DIM_ORDER_STATUSVALUES(3,'预订')INSERT INTO DIM_ORDER_STATUSVALUES(4,'已拒绝')INSERT INTO DIM_ORDER_STATUSVALUES(5,'已发货')INSERT INTO DIM_ORDER_STATUSVALUES(6,'已取消')INSERT INTO V_SUBTOTAL_VALUESVALUES(1,'0-100',0,100 )INSERT INTO V_SUBTOTAL_VALUESVALUES(2,'100-500',100,500 )INSERT INTO V_SUBTOTAL_VALUESVALUES(3,'500-1000',500,1000 )INSERT INTO V_SUBTOTAL_VALUESVALUES(4,'1000-2000',1000,2000 )INSERT INTO V_SUBTOTAL_VALUESVALUES(5,'2000-5000',2000,5000 )INSERT INTO V_SUBTOTAL_VALUESVALUES(6,'5000以上',5000,1000000000 )declare@day dateTIMESET@day='2001-01-01'while@day<'2005-01-01'BEGINinsert into DIM_DATESELECT CONVERT(CHAR(8),@day,112),CONVERT(CHAR(6),@day,112),CONVERT(CHAR(4),@day,112)+'年','第'+CAST(DATEname(QUARTER,@day)AS VARCHAR(1))+'季度',DATEname(weekday,@day),case WHEN DATEPART(DAY,@day)<11 THEN'上旬'WHEN DATEPART(DAY,@day)<21 THEN'中旬'ELSE'下旬'ENDSELECT@day=DATEADD(DAY,1,@day)ENDINSERT INTO DIM_CUSTOMERSELECT A.CustomerID,G.FirstName,CASE WHEN A.CustomerType='I'THEN'个人'ELSE'商店'END,DATEDIFF(YEAR,Demographics.value('declare namespace zhh="/sqlserver/2004/07/adventure-works/Individual Survey";(/zhh:IndividualSurvey/zhh:BirthDate)[1]','VARCHAR(10)'),GETDATE()), Demographics.value('declare namespace zhh="/sqlserver/2004/07/adventure-works/Individual Survey";(/zhh:IndividualSurvey/zhh:Gender)[1]','VARCHAR(2)'),Demographics.value('declare namespace zhh="/sqlserver/2004/07/adventure-works/Individual Survey";(/zhh:IndividualSurvey/zhh:MaritalStatus)[1]','VARCHAR(10)'),Demographics.value('declare namespace zhh="/sqlserver/2004/07/adventure-works/Individual Survey";(/zhh:IndividualSurvey/zhh:YearlyIncome)[1]','VARCHAR(20)'),Demographics.value('declare namespace zhh="/sqlserver/2004/07/adventure-works/Individual Survey";(/zhh:IndividualSurvey/zhh:Education)[1]','VARCHAR(20)'),Demographics.value('declare namespace zhh="/sqlserver/2004/07/adventure-works/Individual Survey";(/zhh:IndividualSurvey/zhh:Occupation)[1]','VARCHAR(20)'),Demographics.value('declare namespace zhh="/sqlserver/2004/07/adventure-works/IndividualSurvey";(/zhh:IndividualSurvey/zhh:NumberCarsOwned)[1]','int'),Demographics.value('declare namespace zhh="/sqlserver/2004/07/adventure-works/Individual Survey";(/zhh:IndividualSurvey/zhh:TotalChildren)[1]','int'),,,D.CityFROM cd.Sales.Customer A,cd.Sales.Individual B,cd.Sales.CustomerAddress C,cd.Person.Address D,cd.Person.StateProvince E,cd.Person.CountryRegion F,cd.Person.Contact GWHERE A.CustomerID=B.CustomerIDAND A.CustomerID=C.CustomerIDAND C.AddressID=D.AddressIDAND D.StateProvinceID=E.StateProvinceIDAND E.CountryRegionCode=F.CountryRegionCodeAND B.ContactID=G.ContactID②执行SQL语句后(6)建事实表--三、建事实表CREATE TABLE FACT_SALEORDER(SALEORDERID INT,TIME_CD VARCHAR(8),STATUS INT,ONLINEORDERFLAG INT,CUSTOMERID INT,SALESPERSONID INT,SHIPMETHOD INT,ORDER_VALUES INT,SUBTOTAL DECIMAL(10,2),TAXAMT DECIMAL(10,2),FREIGHT DECIMAL(10,2))(7)建事实表的ETL①SQL语句--四、事实表的ETL/*4.1 FACT_SALEORDER的ETL*/TRUNCATE TABLE FACT_SALEORDERINSERT INTO FACT_SALEORDERSELECT SalesOrderID,CONVERT(CHAR(8),A.OrderDate,112),A.Status,A.OnlineOrderFlag,ISNULL(A.CustomerID,0),ISNULL(A.SalesPersonID,0),A. ShipMethodID,B.ORDER_VALUES_ID,A.SubTotal,A.TaxAmt,A.FreightFROM cd.Sales.SalesOrderHeader A,V_SUBTOTAL_VALUES BWHERE A.SubTotal>=B.MIN_VALUE AND A.SubTotal<B.MAX_VALUE--缺省值处理INSERT INTO DIM_CUSTOMERselect DISTINCT CUSTOMERID,'未知','商店',0,'N','N','未知','未知','未知',0,0,'未知','未知','未知'from FACT_SALEORDERwhere CUSTOMERID not in(SELECT CUSTOMERIDFROM dbo.DIM_CUSTOMER)②执行SQL语句后五、实验过程原始记录(数据、图表、计算等)将还原后的数据库(cd)的数据转到建立好数据库(DW)维度表和事实表后,效果如下图六、实验结果、分析和结论(误差分析与数据处理、成果总结等。