1 / 68

浙江工商大学信息学院计算机系

浙江工商大学信息学院计算机系. 第九章 数据库新技术. 数据仓库.

Download Presentation

浙江工商大学信息学院计算机系

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 浙江工商大学信息学院计算机系 第九章 数据库新技术

  2. 数据仓库 数据仓库(Data Warehouse,DW)。它正是为了建立这种新的分析处理环境而出现的一种数据存储和组织技术。这一概念是90年代初期,由Prism Solution公司副总裁W.H.Inmon在其里程碑式的著作《Building the Data Warehouse》一书中提出的概念:“数据仓库是一个面向主题的(Subject Oriented)、集成的(Integrate)、相对稳定的(Non-Volatile)、反映历史变化(Time Variant)的数据集合,用于支持管理决策”。

  3. 数据处理的分类 操作型处理(事务处理) 是指对数据库联机的日常操作,通常是对一个或一组记录的查询和修改,主要是为企业的特定应用服务的。人们关心的是响应时间,数据的安全性和完整性。 分析型处理(或信息型处理)。 用于管理人员的决策分析。例如,DSS,EIS和多维分析等,经常要访问大量的历史数据。

  4. 两种数据处理类型的不同 事务处理和分析处理的性能特性不同 数据集成问题 事务处理应用的分散 “蜘蛛网”问题 数据不一致问题 外部数据和非结构化数据 数据动态集成问题 历史数据问题 数据的综合问题

  5. 两种数据处理类型的不同

  6. 数据仓库 数据仓库就是一个用以更好地支持企业或组织的决策分析处理的、面向主题的、集成的、不更新的、随时间不断变化的数据集合。

  7. 面向主题 主题是一个抽象的概念,是在较高层次上将企业信息系统中的数据综合、归类并进行分析利用的抽象。在逻辑意义上,它是对应企业中某一宏观分析领域所涉及的分析对象 面向主题的数据组织方式,就是在较高层次上对分析对象的数据的一个完整、一致的描述,能完整、统一地刻画各个分析对象所涉及的企业的各项数据,以及数据之间的联系。

  8. 面向应用的例子 一家采用“会员制”经营方式的商场,按业务已建立起销售、采购、库存管理以及人事管理子系统。按照其业务处理要求,建立了相应的数据库模式: 采购子系统: 订单(订单号,供应商号,总金额,日期) 订单细则(订单号,商品号,类别,单价,数量) 供应商(供应商号,供应商名,地址,电话) 销售子系统: 顾客(顾客号,姓名,性别,年龄,文化程度,地址,电话) 销售(员工号,顾客号,商品号,数量,单价,日期)

  9. 面向应用的例子 库存管理子系统 领料单(领料单号,领料人,商品号,数量,日期) 进料单(进料单号,订单号,进料人,收料人,日期) 库存(商品号,库房号,库存量,日期) 库房(库房号,仓库管理员,地点,库存商品描述) 人事管理子系统: 员工(员工号,姓名,性别,年龄,文化程度,部门号) 部门(部门号,部门名称,部门主管,电话)

  10. 面向应用数据组织方式的特点 兼顾“数据”和应用 面向应用进行数据组织要反映一个企业内数据的动态特征,表达企业各部门内的数据流动情况以及部门间的数据输入输出关系。并按照实际应用即业务处理流程来组织数据,以提高日常业务处理的速度和准确性等,提高服务质量。

  11. 面向应用数据组织方式的特点 数据库模式与企业中实际的业务处理流程中所涉及的单据或文档有很好的对应关系 数据应用逻辑与数据在一定程度上又重新捆绑在一起了

  12. 面向主题的例子 商品: 商品固有信息:商品号,商品名,类别,颜色等 商品采购信息:商品号,供应商号,供应价,供应日期,供应量等 商品销售信息:商品号,顾客号,售价,销售日期,销售量等 商品库存信息:商品号,库房号,库存量,日期等

  13. 面向主题的例子 供应商: 供应商固有信息:供应商号,供应商名,地址,电话等 供应商品信息:供应商号,商品号,供应价,供应日期,供应量等 顾客: 顾客固有信息:顾客号,顾客名、性别,年龄,文化程度,住址,电话等 顾客购物信息:顾客号,商品号,售价,购买日期,购买量等

  14. 面向主题组织方式的特点 关心的是与分析对象、分析领域有关的数据,不再关心数据的处理过程。 需要集成分散于各个子系统中的有关分析对象的数据。 数据不再是流水帐,而是有了一定的综合 不同的主题之间也可以有重叠的部分

  15. 面向主题组织方式的特点

  16. 集成 数据仓库的每一个主题所对应的源数据在原有的各分散数据库中有许多重复和不一致的地方,且来源于不同联机系统的数据都和不同的应用逻辑捆绑在一起。需要解决冲突,构造统一的模式 数据仓库中的综合数据不能从原有的数据库系统直接得到。在数据进入数据仓库之前要经过综合与计算

  17. 不由应用程序更新 数据仓库的数据主要供企业决策分析之用,所涉及的数据操作主要是数据查询,一般情况下并不进行修改操作。 数据仓库的数据反映的是一段相当长的时间内历史数据的内容,及其统计、综合和重组的导出数据,而不是联机处理的数据。 数据库中进行联机处理的数据经过集成输入到数据仓库中,一旦数据仓库存放的数据已经超过数据仓库的数据存储期限,这些数据将从当前的数据仓库中删去。

  18. 不由应用程序更新 因为数据仓库只进行数据查询操作,所以数据仓库管理系统DWMS相比DBMS而言要简单得多。像完整性保护,并发控制等等,在数据仓库的管理中几乎可以省去。 但由于数据仓库的查询数据量往往很大,所以对数据查询提出了更高的要求,它要求采用各种复杂的索引技术; 同时由于数据仓库面向的是企业的高层管理者,因而对数据查询的界面友好性和数据表示提出更高的要求。

  19. 随时间不断变化的 数据仓库随时间变化不断增加新的数据内容。 数据仓库随时间变化不断删去旧的数据内容。 数据仓库中包含有大量的综合数据,这些数据要随着时间的变化不断地进行重新综合,并加以时间标记

  20. 多维数据模型 数据仓库基于多维数据模型,它以数据立方体(cube)的方式查看和组织数据。多维数据模型通常包括以下两个部分: 事实表:记录有关主题的数据,包括各种度量信息。 维表:记录了数据的角度 例如销主题sales可以按以下多维模型组织 维度表,例如商品(商品名称,品牌,类型)或者时间(天,星期,月,季度,年) 事实表包含各种度量信息如(销售金额)和每个相关维表的键

  21. 多维数据模型

  22. 多维数据模型

  23. 数据立方体 Date 2Qtr 1Qtr sum 3Qtr 4Qtr TV Product U.S.A PC VCR sum Canada Country Mexico sum All, All, All Total annual sales of TV in U.S.A.

  24. 三维方体 all 0-D(顶点) 方体 country product date 1-D 方体 product,date product,country date, country 2-D 方体 3-D(基本) 方体 product, date, country

  25. 四维方体 all 0-D(顶点) cuboid(方体) time item location supplier 1-D方体 time,item time,location item,location location,supplier 2-D 方体 time,supplier item,supplier time,location,supplier time,item,location 3-D 方体 item,location,supplier time,item,supplier 4-D(基本) 方体 time, item, location, supplier

  26. 多维数据库模式 星型模式:最常见的多维数据仓库组织模式,包括一个包含大量数据并且不含冗余的事实表,以及一组维表(每个维度一个) 雪花模式:是星型模型的变种,其中的维表是规范化的(即每个维度不止一个表) 事实星座模式:复杂的应用可能需要多个事实表共享维表。

  27. 星型模式的例子 创建和使用星型连接的好处是可以为决策支持系统的处理优化数据。通过数据预连接和建立有选择的数据冗余,极大地简化了访问和分析的数据,这正是数据仓库所需要的。

  28. 雪花模式的例子 雪花型的维表可能是规范化形式,这可减少冗余,利于维护,而且节省空间。但由于执行查询要更多的连接操作,雪花型可能降低浏览的性能。

  29. 事实星座模式的例子 多个事实表共享维表,这种模式可以看作星型模式的集合,因此也可以称为星系模式,或者事实星座。

  30. A Data Mining Query Language: DMQL Cube Definition (Fact Table) define cube <cube_name> [<dimension_list>]: <measure_list> Dimension Definition ( Dimension Table ) define dimension <dimension_name> as (<attribute_or_subdimension_list>) Special Case (Shared Dimension Tables) First time as “cube definition” define dimension <dimension_name> as <dimension_name_first_time> in cube <cube_name_first_time>

  31. 用DMQL定义星型模式 define cube sales_star [time, item, branch, location]: dollars_sold = sum(sales_in_dollars), avg_sales = avg(sales_in_dollars), units_sold = count(*) define dimension time as (time_key, day, day_of_week, month, quarter, year) define dimension item as (item_key, item_name, brand, type, supplier_type) define dimension branch as (branch_key, branch_name, branch_type) define dimension location as (location_key, street, city, province_or_state, country)

  32. 用DMQL定义雪花模式 define cube sales_snowflake [time, item, branch, location]: dollars_sold = sum(sales_in_dollars), avg_sales = avg(sales_in_dollars), units_sold = count(*) define dimension time as (time_key, day, day_of_week, month, quarter, year) define dimension item as (item_key, item_name, brand, type, supplier(supplier_key, supplier_type)) define dimension branch as (branch_key, branch_name, branch_type) define dimension location as (location_key, street, city(city_key, province_or_state, country))

  33. 用DMQL定义事实星座模式 define cube sales [time, item, branch, location]: dollars_sold = sum(sales_in_dollars), avg_sales = avg(sales_in_dollars), units_sold = count(*) define dimension time as (time_key, day, day_of_week, month, quarter, year) define dimension item as (item_key, item_name, brand, type, supplier_type) define dimension branch as (branch_key, branch_name, branch_type) define dimension location as (location_key, street, city, province_or_state, country) define cube shipping [time, item, shipper, from_location, to_location]: dollar_cost = sum(cost_in_dollars), unit_shipped = count(*) define dimension time as time in cube sales define dimension item as item in cube sales define dimension shipper as (shipper_key, shipper_name, location as location in cube sales, shipper_type) define dimension from_location as location in cube sales define dimension to_location as location in cube sales

  34. 维度的概念层次 概念分层定义了一个映射序列,将低层的概念映射到更为一般的高层概念。

  35. 维度的概念层次 all all Europe ... North_America region Germany ... Spain Canada ... country Vancouver ... city Frankfurt ... Toronto L. Chan ... M. Wind office

  36. 维度的概念层次 维度: Product, Location, Time 概念层次 Region Industry Region Year Category Country Quarter Product City Month Week Office Day Product Month

  37. 维度的概念层次 ¥0~1000 ¥0~200 ¥200~400 ¥400~600 ¥600~800 ¥800~1000 ……….. ¥0~100 ¥200~300 ¥100~200 ¥300~400

  38. 多维数据模型上的OLAP操作 上卷(Roll up)或者上钻(drill-up):通过一个维的概念分层向上攀升或者通过维规约来汇总计算数据 下钻(Drill down)或者下卷(roll down):是上卷的逆操作,下钻可以通过沿维的概念分层向下或者引入新的维来实现从较高的汇总级别到达较低的汇总级别或者细节数据的操作。

  39. 上卷和下钻 Product TV PC VCR MP3 Qtr4 Qtr3 Date Chicago Qtr2 New York Qtr1 Toronto City Vancouver TV PC VCR MP3 Qtr4 Qtr3 Date Qtr2 Country Qtr1 U.S.A Canada

  40. 多维数据模型上的OLAP操作 切片(Slice):在给定的数据立方体上的一个维进行选择,产生一个子方。 切块(dice):通过对两个或者多个维进行选择来定义子方 转轴(Pivot)或者旋转(rotate): 是一种目视操作,它转动观察数据的视角,提供数据的替代表示。

  41. 切片

  42. 旋转

  43. 旋转

  44. 钻取(Drill) 钻取包含向下钻取(Drill-down)和向上钻取(Drill-up)/上卷(Roll-up)操作,钻取的深度与维所划分的层次相对应。

  45. 旋转(Rotate)/转轴(Pivot) 通过旋转可以得到不同视角的数据。

  46. 多维数据模型上的OLAP操作 其它OLAP操作: 钻过(drill across):执行涉及多个事实表的查询 钻透(drill through):使用SQL从数据立方体的底层到后端的关系表

  47. 数据仓库体系结构 other sources Extract Transform Load Refresh Operational DBs Monitor & Integrator OLAP Server Metadata Analysis Query Reports Data mining Serve Data Warehouse Data Marts Data Sources Data Storage OLAP Engine Front-End Tools

  48. 数据仓库的类型 企业仓库(Enterprise Warehouse) 搜集关于主题的所有信息,跨越整个组织。它提供企业范围的数据集成,数据量大,需要强有力的服务器和广泛的商业建模,建造时间长。 数据集市(Data Mart) 包含企业范围数据的一个子集,适用于特定的用户组,其范围限定于指定的主题。可以在较低级的服务器上实现,建设时间较短。数据集市又分为独立的和非独立的两种。 虚拟仓库(Virtual warehouse) 是操作数据库上视图的集合。 只有物化了部分的汇总视图。

  49. 数据仓库的开发途径 Multi-Tier Data Warehouse Distributed Data Marts Enterprise Data Warehouse Data Mart Data Mart Model refinement Model refinement Define a high-level corporate data model

  50. OLAP服务器体系结构 关系型OLAP(Relational OLAP,ROLAP) 服务器 使用关系型或者是扩展关系型数据库管理系统存储和管理数据仓库的数据,并使用OLAP中间件来实现其它OLAP的功能 数据库管理系统需要针对OLAP进行优化,实现更为强大的聚集和分析逻辑,提供更多的分析工具和服务。 具有更好的可伸缩性 多维OLAP(Multidimensional OLAP,MOLAP)服务器 多维数据库存储引擎(基于数组) 预先汇总计算数据,并提供更快的索引访问技术

More Related