数据仓库的构建和ETL课程设计
如何使用MySQL进行数据仓库建设与ETL过程

如何使用MySQL进行数据仓库建设与ETL过程1. 引言在当今数字化时代,数据成为了企业决策和战略制定的重要驱动力。
而数据仓库作为数据集中存储和分析的重要组成部分,在企业中扮演着至关重要的角色。
本文将介绍如何使用MySQL进行数据仓库的建设和ETL(Extract, Transform, Load)过程,帮助读者更好地理解和应用这一技术。
2. 数据仓库概述数据仓库是一个面向主题的、集成的、时间变化的、非易失的数据集合,用于支持企业的决策分析过程。
与传统数据库相比,数据仓库更加注重数据的质量、一致性和可靠性,并通过集成和变换等操作,将多源的数据整合到一个统一的存储中。
3. MySQL与数据仓库建设MySQL是一种开源的关系型数据库管理系统,具备良好的稳定性和可扩展性,在数据仓库建设中广泛应用。
以下是一些关于MySQL在数据仓库建设中的应用注意事项:a. 数据库设计:合理的数据库设计是数据仓库建设的基础。
在设计阶段,需要根据业务需求和数据特点,进行数据模型的设计,包括维度表和事实表的设计等。
b. 数据抽取:数据仓库的建设需要从多个数据源获取数据,并进行抽取到数据仓库中。
MySQL提供了多种方式进行数据抽取,如使用ETL工具进行数据抽取、使用MySQL的数据导入导出工具进行数据抽取等。
c. 数据清洗:在将数据加载到数据仓库之前,需要对数据进行清洗,确保数据的完整性和一致性。
MySQL提供了丰富的函数和操作符,可以方便地进行数据清洗和变换。
d. 数据加载:数据加载是将清洗过的数据存储到数据仓库中的过程。
MySQL提供了高效的数据加载方式,如使用LOAD DATA语句进行数据加载等。
e. 数据查询和分析:数据仓库的最终目的是为了支持决策分析和数据挖掘。
使用MySQL的强大查询功能和丰富的分析函数,可以方便地进行复杂的数据分析和挖掘。
4. ETL过程概述ETL是数据仓库建设中的重要环节,包括数据抽取(Extract)、数据变换(Transform)和数据加载(Load)。
数据仓库建模与ETL设计实践指南

数据仓库建模与ETL设计实践指南在当今信息时代,数据的重要性日益凸显。
为了更好地管理和分析大量的数据,数据仓库的建模与ETL(提取、转换和加载)设计成为了企业数据管理的关键环节。
本文将详细介绍数据仓库建模与ETL设计的实践指南,帮助读者更好地理解和应用这些技术。
一、数据仓库建模1.1 数据仓库概述数据仓库是一个集成、主题导向、可用于决策支持的数据集合。
它将企业的各类数据从不同的来源进行提取、转换和加载,经过清洗和整合后形成一个统一、一致的数据视图。
数据仓库建模的目标是将跨越多个系统的数据转化为易于理解和使用的形式。
1.2 数据仓库建模方法在进行数据仓库建模时,可以选择多种建模方法,例如维度模型和归一化模型。
维度模型适合于分析型报表和高度聚焦的查询,而归一化模型则适合于大规模的交易处理。
根据实际情况选择合适的建模方法,既要考虑数据的业务需求,也要兼顾数据的性能和可维护性。
1.3 维度建模与事实建模数据仓库的维度建模是数据仓库建模的核心内容之一。
维度是指数据的关键特征或类别,例如时间、地点、产品等。
在维度建模中,需要考虑维度的层次结构和关系,以及维度之间的关联。
事实建模则围绕事实表展开,事实表记录了业务过程中发生的事件或度量,例如销售额、客户数量等。
二、ETL设计实践指南2.1 ETL概述ETL是指将数据从各个源系统中提取出来,经过转换和清洗后加载到数据仓库中的过程。
ETL设计是确保数据能够准确、完整地从源系统到数据仓库的关键环节。
一个好的ETL设计应该考虑数据的可扩展性、可维护性和性能。
2.2 ETL流程一个典型的ETL流程包括以下几个步骤:数据提取(Extract)、数据转换(Transform)和数据加载(Load)。
在数据提取阶段,需要确定数据提取的方式和频率,例如全量提取、增量提取或增量更新。
在数据转换阶段,需要对数据进行清洗、整合和转换,以满足数据仓库的需求。
在数据加载阶段,需要将转换后的数据加载到数据仓库中,确保数据的可用性和一致性。
数据仓库设计思路及ETL设计思路

数据仓库设计思路及ETL设计思路⼀、数据仓库构建思想构造数据仓库有两种⽅式:⼀是⾃上⽽下,⼀是⾃下⽽上。
Bill Inmon先⽣推崇“⾃上⽽下”的⽅式,即⼀个企业建⽴唯⼀的数据中⼼,就像⼀个数据的仓库,其中数据是经过整合、经过清洗、去掉脏数据的、标准的,能够提供统⼀的视图。
要建⽴这样的数据仓库,并不从它需要⽀持哪些应⽤⼊⼿,⽽是要从整个企业的环境⼊⼿,分析其中的概念,应该有什么样的数据,达成概念完成整;(会考虑到很全⾯的设计)Ralph Kimball先⽣推崇“⾃下⽽上”的⽅式,他认为建设数据仓库应该按照实际的应⽤需求,加载需要的数据,不需要的数据不要加载到数据仓库中。
这种⽅式建设周期较短,客户能够很快看到结果。
(针对客户的需求,需求要什么就做什么)⼆者都要达到同⼀个⽬标:企业级数据仓库。
实际上在建设数据仓库的时候,⼀般都参照这两种⽅式结合使⽤没有硬性规定。
⼆、ETL(Extract/Transformation/Load)⽤户从数据源中抽取所需的数据,经过数据清洗、转换,最终按照预先定义好的数据仓库模型,将数据加载到数据仓库中去;ETL是数据仓库系统中最重要的概念之⼀,ETL在⼀个数据仓库系统项⽬中要花⼀半以上的时间。
1) ETL调度⽬标数据来源:数据库、数据库⽂件、⽂本⽂件、程序⽣成(派⽣列)系统数⽬:单个系统、多个系统(过多的系统可以考虑接⼝实现)数据库的类型:同种数据库/多种数据库2) ETL调度参数设计调度优先级/调度次序/中断标志/回滚标志/成功标志/调度开始结束时间等3) ETL调度⽇志管理⽂件记录/数据库记录作业名称/作业执⾏开始-结束时间/作业执⾏结果/异常信息捕获/作业编号等4) ETL调度JOB设计数据⽂本⽂件加载/SQL在程序中调⽤/存储过程/ETL⼯具的WORKFOLW5) ETL调度策略设计全量数据加载:⽤户信息类数据,状态会更新发⽣变化的数据增量数据加载:流⽔分批调度设计,抽取数据⼀般在⽐较闲暇的时候进⾏,凌晨时候⽐较多,⽽且按照要分析数据的周期,还分为按⽇、按⽉数据;由于涉及到的业务系统的数据量庞⼤,需要分批进⾏抽取,以及抽取数据后⾯的⼀系列处理过程。
通过Hive创建数据仓库与ETL流程

通过Hive创建数据仓库与ETL流程随着大数据时代的到来,企业面临着大量的数据积累和分析需求,为了更好地管理和利用这些数据,构建高效的数据仓库成为了重要的任务。
在数据仓库的构建过程中,使用Hive进行数据管理和ETL处理是一种常见的做法。
本文将介绍如何通过Hive创建数据仓库并实现ETL流程。
一、Hive简介Hive是一种基于Hadoop的数据仓库基础设施,提供了类似于SQL的查询语言HiveQL来进行数据管理和查询。
Hive主要由三部分组成:元数据存储、Hadoop MapReduce、HiveQL。
通过Hive,我们可以方便地使用SQL语言对存储在Hadoop中的数据进行处理和分析。
二、创建Hive数据仓库1. 配置Hive环境首先,我们需要在Hadoop集群中安装和配置Hive。
在安装Hive之前,需要确保Hadoop已经安装并正确配置。
然后,可以从官方网站或者软件仓库中下载Hive,并将其解压到所需的目录中。
接下来,需要修改Hive的配置文件,将Hadoop的配置信息与Hive关联起来,以便Hive可以通过Hadoop进行数据存储和计算。
2. 创建数据库在Hive中,一个数据库对应一个数据仓库。
我们可以使用HiveQL语句在Hive中创建数据库。
例如,可以使用以下语句创建一个名为"mydatabase"的数据库:```CREATE DATABASE mydatabase;```3. 表创建和数据导入在数据库创建完成后,我们可以使用HiveQL语句创建表并导入数据到表中。
首先,需要定义表的结构和字段,然后使用“LOAD DATA INPATH”命令将数据导入到表中。
例如,可以使用以下语句创建一个名为"mytable"的表,并将数据从本地文件导入到该表中:```CREATE TABLE mytable (id INT,name STRING,age INT);LOAD DATA INPATH '/path/to/localdata' INTO TABLE mytable;```通过以上步骤,我们就成功地使用Hive创建了一个数据仓库,并将数据导入到了表中。
数据仓库设计与ETL流程实操教程

数据仓库设计与ETL流程实操教程数据仓库(Data Warehouse)是一个专门用来存储和管理数据的系统,主要用于支持决策分析和业务报告。
在企业中,数据仓库的设计和ETL(抽取、转换、加载)流程是非常重要的环节。
本文将详细介绍数据仓库的设计步骤和ETL流程的实操教程。
一、数据仓库设计步骤1.确定业务需求:在进行数据仓库设计之前,首先需要明确业务需求。
与业务相关的问题是什么?需要哪些数据来解决这些问题?这些问题对应的维度和指标是什么?明确业务需求是数据仓库设计的基础。
2.数据源分析:分析企业的各个数据源,确定需要从哪些数据源进行数据抽取。
了解数据源的结构、规模和质量,为后续的ETL流程做好准备。
3.数据建模:在数据仓库设计中,数据建模是一个关键的环节。
可以采用维度建模或者企业级建模的方法。
维度建模按照事实和维度进行建模,可以支持灵活的查询和分析;而企业级建模更加注重数据的整合和一致性。
根据具体的业务需求,确定合适的数据建模方法。
4.抽取规则定义:在设计ETL流程之前,需要定义数据抽取的规则。
数据抽取规则包括数据抽取的频率、抽取的条件和抽取的方式等。
根据业务需求和数据源的特点,制定合理的抽取规则。
5.数据清洗和转换:在ETL流程中,数据清洗和转换是非常重要的环节。
在数据抽取后,对数据进行清洗和转换,包括去除重复数据、处理缺失值、处理异常值以及数据格式转换等。
通过数据清洗和转换,可以保证数据的质量和一致性。
6.数据加载:数据加载是将经过处理的数据加载到数据仓库中的过程。
在数据加载时,可以根据需要选择全量加载或者增量加载的方式。
全量加载会将整个数据源的数据加载到数据仓库中;而增量加载只会加载新增或者变更的数据。
7.数据质量检查:在完成数据加载之后,需要对数据进行质量检查。
通过数据质量检查,可以发现数据仓库中可能存在的问题,如数据不一致、数据丢失等。
根据数据质量检查的结果,及时进行修复和调整。
二、ETL流程实操教程1.数据抽取:根据已定义的抽取规则,从数据源中抽取数据。
ETL的过程原理和数据仓库建设

ETL的过程原理和数据仓库建设数据仓库建立中的ETL(Extract, Transform, Load)是数据抽取、转换和装载到模型的过程,整个过程根本是通过掌握用SQL语句编写的存储过程和函数的方式来实现对数据的直接操作,SQL语句的效率将直接影响到数据仓库后台的性能。
目前,国内的大中型企业根本都具有四年以上计算机信息系统应用阅历,积存了大量可分析的业务数据,这些信息系统中的数据需要通过搭建数据仓库平台才能得到科学的分析,这也是近几年数据仓库系统建立成为IT领域热门话题的缘由。
2.优化的思路分析数据仓库ETL过程的主要特点是:面对海量的数据进展抽取;分时段对大批量数据进展删除、更新和插入操作;面对特别的数据进展规章化的清洗;大量的分析模型重算工作;有特定的过程处理时间规律性,一般整个ETL过程需要在每天的零点开头到6点之前完成。
所以,针对ETL过程的优化主要是结合数据仓库自身的特点,抓住需要优化的主要方面,针对不同的状况从如何采纳高效的SQL入手来进展。
3.优化的实例分析目前数据仓库建立中的后台数据库大局部采纳Oracle,以下的SQL 采纳Oracle的语法来说明,全部的测试在Oracle9i环境中通过,但其优化的方法和原理同样适合除Oracle之外的其他数据库。
3.1索引的正确使用在海量数据表中,根本每个表都有一个或多个的索引来保证高效的查询,在ETL过程中的索引需要遵循以下使用原则:(1) 当插入的数据为数据表中的记录数量10%以上时, 首先需要删除该表的索引来提高数据的插入效率,当数据全部插入后再建立索引。
(2) 避开在索引列上使用函数或计算,在WHERE子句中,假如索引列是函数的一局部,优化器将不使用索引而使用全表扫描。
举例: 低效: SELECT * ROM DEPT WHERE SAL * 12 > 25000;高效: SELECT * FROM DEPT WHERE SAL > 25000/12;(3) 避开在索引列上使用NOT和”!=”,索引只能告知什么存在于表中,而不能告知什么不存在于表中,当数据库遇到NOT和”!=”时,就会停顿使用索引转而执行全表扫描。
数据仓库ETL方案

要求:1、需要业务系统生产库的一个用户账号,权限是能够查询业务系统生产库的数据,提供这个用户的连接串,这个需要在方案实施前一天提供。
2、需要在业务系统生产库上新建一个表空间,用户存储物化视图日志表,大小至少是业务系统生产库10天的数据量占用的空间大小3、数据仓库的服务器应该至少是业务系统生产库大小的6倍,数据库要求oracle10g说明:1、本次测试选择10数据块做测试。
2、时间点选择业务系统生产库用户少的时候。
3、试验物化视图日志对业务系统生产库的各种性能压力测试。
4、试验业务系统生产库增量数据抽取对业务系统生产库的压力测试及效率问题。
5、试验业务系统生产库存量数据抽取时对业务系统生产库空间的要求、抽取时间、以及效率计算等。
实施步骤:1、查看测试库是否正常,是否能符合数据仓库要求2、在测试库上新建表空间、用户3、把现在开发库上odm,ods,dw,dm,etl用户下的数据表(系统参数表),存储过程,视图,序列,数据库链等移植到新的测试库上。
4、由业务系统生产库的DBA新建用户,权限是能够查询业务系统生产库的数据,并创建表空间用于存放物化视图日志,然后告知营销分析系统项目组(前一天完成)5、根据业务系统生产库,营销分析系统项目组生成10块物化试图日志脚本、物化试图,ods 脚本,dw脚本(前一天完成)6、在odm库上创建业务系统生产库的dblink,检测是否能够查询数据(前一天完成)7、营销分析系统项目组提供创建物化试图日志脚本,由业务系统生产库dba审核并在业务系统生产库上创建8、营销分析系统项目组在数据仓库测试机上odm库创建物化试图,时间根据业务系统生产库和测试库存储来计算,初步估计在1到2小时(说明:ODM上创建物化视图的过程既存量数据抽取过程,第七第八步骤需要业务系统生产库停机操作,否则会产生数据仓库的数据不准确)9、营销分析系统项目组在odm库创建物化试图的物化试图日志。
10、营销分析系统项目组分别ods库、dw库上用前面生成的脚本创建库11、检查各个用户下的数据库链,存储过程、序列等是否正常12、启用etl调度开始抽取数据。
基于SQL的数据仓库设计与数据ETL流程优化

基于SQL的数据仓库设计与数据ETL流程优化一、引言在当今大数据时代,数据成为了企业最宝贵的资产之一。
为了更好地管理和利用这些海量数据,数据仓库的设计和ETL(Extract, Transform, Load)流程优化显得尤为重要。
本文将深入探讨基于SQL 的数据仓库设计以及数据ETL流程的优化方法。
二、数据仓库设计1. 数据仓库概述数据仓库是一个面向主题的、集成的、非易失的、时间变化的数据集合,用于支持管理决策。
在设计数据仓库时,需要考虑到数据的来源、存储结构、数据模型等方面。
2. 数据仓库设计原则主题导向:数据仓库应该围绕主题进行建模,而不是按照应用系统或者业务过程进行建模。
集成性:将来自不同来源的数据集成到一个统一的数据仓库中,确保数据一致性和准确性。
非易失性:数据一旦进入数据仓库就不会被修改或删除,以保证历史数据的完整性。
时间变化性:支持历史数据的存储和查询,能够追溯数据随时间的变化。
3. 数据仓库设计步骤步骤一:需求分析首先需要明确业务需求,确定需要分析和报告的主题领域。
步骤二:数据建模根据需求分析结果设计维度模型和事实表,建立星型模式或雪花模式。
步骤三:物理设计确定物理存储结构,包括表空间、索引、分区等。
步骤四:ETL设计设计ETL流程,包括抽取源数据、转换清洗数据、加载到目标表等步骤。
三、数据ETL流程优化1. ETL流程中常见问题问题一:性能瓶颈在大规模数据处理时,ETL过程可能会遇到性能瓶颈,导致任务运行缓慢。
问题二:数据质量问题源数据质量低下或者转换过程中出现错误可能导致最终结果不准确。
2. ETL流程优化方法方法一:增量抽取采用增量抽取方式可以减少全量抽取的时间和资源消耗,提高ETL任务的效率。
方法二:并行处理通过并行处理可以将大任务拆分成多个小任务并行执行,提高整体处理速度。
方法三:索引优化在目标表中建立合适的索引可以加快查询速度,提高ETL过程中的性能。
方法四:缓存机制引入缓存机制可以减少对源系统的访问次数,降低系统负载,提高ETL任务的效率。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Northwind数据仓库的构建和ETL 课程设计与实验报告
课程设计与实验教学目的与基本要求
数据仓库与知识工程课程设计与实验是学习数据仓库与知识工程的重要环节,通过课程设计与实验,可以使学生全面地了解和掌握数据仓库与知识工程课程的基本概念、原理及应用技术,使学生系统科学地受到分析问题和解决问题的训练,提高运用理论知识解决实际问题的能力。
使学生在后继课的学习中,能够利用数据仓库与数据挖掘技术及实践经验,解决相应的实际问题,并能在今后的学习和工作中,结合自己的专业知识,开发相应的数据仓库与数据挖掘应用程序。
培养学生将已掌握的理论与实践开发相结合的能力,以及在应用方面的思维能力和实践动手能力。
课程设计与实验一数据仓库的构建和ETL
(一)目的
1.理解数据库与数据仓库之间的区别与联系;
2.掌握数据仓库建立的基本方法及其相关工具的使用。
3.掌握ETL实现的基本方法及其相关工具的使用。
(二)内容
1. 以SQL Server为系统平台,设计、建立创建数据仓库NorthwindDW(根据课程设计内容)。
2. 将业务数据库Northwind的数据经过ETL导入(或加载)到数据仓库NorthwindDW。
3. 将数据仓库NorthwindDW事实表的前100个记录导出到Excel中。
(三)数据仓库设计要求
Northwind数据库存储了一个贸易公司的订单数据、产品数据、顾客数据、员工数据、供货商数据等,假设贸易公司的经营者迫切的需要准确地把握贸易公司经营情况,跟踪市场趋势,更加合理地制定商品采购、营销和奖励政策。
具体的分析需求是:
●分析某商品在某地区的销售情况
●分析某商品在某季度的销售情况
●分析某年销售多少金额的产品给顾客
●分析某员工的销售业绩
任务:确定主题域、确定系统(或主题)的边界。
设计数据模型(星型模型)的事实表和维表。
实验步骤一、主题需求分析:
主题域:订单主题,商品主题,员工主题;
订单相关边界:Orders,Order Details,Employees;
商品相关边界:Products,Order Details;
员工相关边界:Employees,Orders;
实验步骤二、构建数据模型以及相应的事实表和维度表:1.原始关系图:
2.去除不需要的表和与需求分析无关的字段:
5.根据信息分析包以及表间关系图设计具体维度表和事实表:
字段名称数据类型功能描述原表名原字段
EmployeeID Int 员工号码Employees EmployeeID
ProductID Int 产品号码Products ProductID CustomerID nchar 顾客号码Customers CustomerID OrderDate datetime 订购日期Orders OrderDate
UnitPrice money 产品单价Order Details UnitPrice
Total money 单项总价无Quantity * UnitPrice*Discount Quantity smallint 订购数量Order Details Quantity
Discount real 折扣Order Details Discount
主键字段:EmployeeID, ProductID, CustomerID, OrderDate
字段名称数据类型功能描述原表名原字段EmployeeID Int 员工号码Employees EmployeeID FirstName nvarchar 员工名Employees FirstName LastName nvarchar 员工姓Employees LastName
主键字段:EmployeeID
6. 下图显示了Northwind数据库的星型雪花架构结构图:
Employees维表Orders事实表Products维表EmployeeID employeeID ProductID FirstName ProductID Productname LastName CustomerID UnitPrice
orderDate
Total
Quantity
UnitPrice
Discount
Customers维表
CustomerID
ContactName
City
Region
Country
实验步骤三、创建数据仓库并抽取转换导入数据:
1.首先打开SQL Server Business Intelligence Development Studio, 创建一个新的SQL Server Integration Services项目,并取名为northwind
2.点击确定后生成以下界面。
3.接下来在菜单栏中点击[项目]选择SSIS导入和导出向导,在弹出来的窗口里选择SQL Native Client 10.0 作为数据源,数据库下拉选择已装好的Northwind数据库,点击下一步。
4.进入数据目标的操作界面,这里需要新建一个数据仓库,以后数据经过ETL过程后,数据存放到这个数据仓库中。
5.选择数据的复制方式,如下图所示,有两种方式,一种是直接将表复制过去,这种方式不是很灵活,对多表连接存在一定的局限性。
这里采用的第二种方法。
6.接下来输入SQL语句,目前进行提取和转换的是事实表orders,sql语句必须写正确,要不然会影响后面的导入数据。
点击分析可以查看是否有误,没有的话即可进入下一步。
7.接下来可以编辑表之间的映射关系。
当时我想把表名改成其他更形象具体的名字,可是不知道为什么,如果把【查询】改了之后,后面的数据加载就会有问题。
这也是一个有待解决的问题。
8.点击完成后即可以完成本次表格的导入。
9接下来如下图箭头所示,准备sql任务以结束,进入数据流阶段。
按照选择屏幕左边的工具箱,拖出来数据流源的OLE DB源和数据流目标的OLE DB目标两个元件到界面上。
10. 右击OLE DB源选择编辑,OLE DB连接管理器那一定要看清楚是对什么进行的编辑,如果是源,就要选source..。
然后再对目标进行编辑,需要新建一个表来进行映射。
11.直到所有的与事实表相关的维表全部编辑完,右击右侧的你刚刚生成的包,设为启动项,再运行程序。
12.调试成功的话所有的元件底色都会变成绿色,如图所示:
13.此时回到NorthDW数据仓库中可以发现,全部的表已成功导入完毕,接下来回到数据库系统中给所生成的各表手动建立主键约束以及关系设置,全部操作完成之后本次数据仓库抽取-转换-导入数据宣告完成。
Orders事实表
Employee维表
实验步骤四、导出指定内容数据至Excel表格:
1.执行事实表Sales的数据导出至excel操作,首先右键单击NorthwindDW数据仓库,在
弹出的菜单下依次点击任务->导出数据。
2.接着在需要复制的数据源处选择SQL Native Client 10.0,数据库选择NorthDW,点击下
一步。
3.选择目标为Microsoft Excel,自行设置文件存放路径,Excel版本推荐选择97-2005,然
后点击下一步,选择编写查询以指定要传输的数据。
4.接着使用SQL语句写出想要导出来的表以及相应的内容即可。
本次目标是导出Sales事
实表的前100行
5.点击下一步后即可生成对应的Excel文件,导出任务成功,事实表前100个记录。
6.
实验结果:
1. 确定主题域、确定系统(或主题)的边界。
完成了NorthDW的星型雪花结构设计,确定全部维表和事实表。
2.设计、建立创建数据仓库NorthDW。
3.将业务数据库Northwind的数据经过ETL导入(或加载)到数据仓库NorthDW。
4.将数据仓库NorthDW事实表的前100个记录导出到Excel中。
实验问题和总结:
本次实验花了我很多的心思和心血,主要是觉得自己基础太薄弱。
实验的最终结果由于时间关系跟自己最初想做的不太一样。
主要是在开始花掉了太多的时间,但是整个流程自己还是了解得挺好了,所以说做出一个更好的东西出来也只是时间问题。
在做的过程中,遇到了很多小问题。
1.创建数据仓库表的时候,到底是从原有的数据库中复制还是用sql语句创建复制。
刚开始我是用的sql语句复制,当时就因为一个小小的圆点问题耽搁了很多时间,没有解决出来,就尝试用原有数据库中的表复制,但是问题就来了,多个表连接再映射没法做,最后还是通过sql语句实现的。
2.表映射完后,对数据的加载也出现了问题。
刚开始老不成功,最后发现时表重复的
原因,因为自己反复新建了很多个项目和相同的表,只要把书库仓库中的同名表删掉就可以加载了。
导出数据的时候也出现了问题,后来发现原来我的表名和关键字重复了,只需要将数据仓库的order表重新命名就好了。
3.
4.生成数据仓库表的关系图的时候,由于两张表的customerID数据类型不同,则不能添加主外键关系,本来想直接在数据库里改的,但是不允许修改,就只能借助数
据转换工具,但是数据转换现在还没有研究成功。
5. 其实还想做更多的任务,比如字段的拼接,由于时间关系这次没有做,但是下来会
花时间来做做。
遇到的问题肯定不止这一点点,但都是些很小的问题,通过自己的研究和同学的帮助最终做出一个勉强的东西,但是下来我会接着研究的,因为通过学习,感觉数据仓库还是挺有趣的。