数据库第三章精.ppt
《数据库第三章精.ppt》由会员分享,可在线阅读,更多相关《数据库第三章精.ppt(43页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、数据库第三章第1页,本讲稿共43页关系account(branch-name,loan-number,balance),在branch-name和balance属性上分别都有索引。考虑针对该关系的一个多维查询:SELECT loan-number FROM account WHERE branch-name=Perryridge and balance=1000 第2页,本讲稿共43页有三种策略可处理这个查询:用基于branch-name的索引来找出所有branch-name=Perryridge的记录。然后,再检查这些记录,进一步挑选出balance=1000的记录。用基于balance的索
2、引来找出所有balance=1000的记录。然后,再检查这些记录,进一步挑选出branch-name=Perryridge的记录。先根据两个索引,分别找出满足branch-name=Perryridge和balance=1000的记录指针,然后,在内存中求这两组指针交集,再通过属于交集中的指针找出所有目标记录。利用位图索引可以加快这种方法的交集操作。第3页,本讲稿共43页5.1 需要多维索引的应用简介 5.1.1 数据仓库的数据立方体 在数据仓库中,通常需要建立一种称为“数据立方体”的多维数据结构,以更好支持决策分析。例如,一个全国连锁店,可能记录每一笔销售,包括销售时间、销售地区和商品的种类
3、等。可以把销售量、销售金额等数据作为希望观察的事实数据,而把可能影响这些销售事实数据的各因子,如时间、地区和商品类型等属性,作为不同的观察维度。每个元组是该空间的一个点。然后,分析人员可按某些维对数据进行分组,并通过聚集汇总这些分组。第4页,本讲稿共43页第5页,本讲稿共43页设销售事实表为Sales(dt_id,area_id,product_id,sales_count)它通过dt_id、area_id、product_id三个属性分别关联到时间维表dt_dim、地区维表area_dim和产品维表prod_dim。我们可通过发出如下的SQL语句,来获得与示图等效的数据立方体。SELECT
4、dt_dim.season,area_dim.city,prod_dim.prodtype,sum(sales_count)FROM sales INNER JOIN dt_dim ON sales.dt_id=dt_dim.dt_id INNER JOIN area_dim ON sales.area_id=area_dim.area_id INNER JOIN prod_dim ON sales.prod_id=prod_dim.prod_idWHERE dt_dim.year=2009GROUP BY dt_dim.serson,area_dim.city,prod_dim.prodty
5、pe第6页,本讲稿共43页5.1.2 空间数据与地理信息系统有两种类型的空间数据特别重要。计算机辅助设计(CAD)数据:包括如何构造物体的一些空间信息、集成电路设计信息等。地理数据:例如道路地图、行政区域地图。地理信息系统(GIS)是适用于存储地理数据的专用数据库系统.许多数据库系统都添加了对地理数据的支持,如IBM DB2 Spatial Extender,Informix Spatial Datablade和Oracle Spatial。第7页,本讲稿共43页地理数据库的用途地理数据库有多种用途,包括联机地图服务、交通导航系统、公共服务设施分布网络信息等。当前,基于Web的道路地图及相关设
6、施服务,已成为广受人们青睐的WEB应用程序。交通导航系统是装载在车辆上的、提供道路地图和旅行计划服务的移动地理信息系统。GPS是移动GIS的一个有效附件,能利用GPS卫星,以几十米的精度确定当前位置。第8页,本讲稿共43页几何信息表示方法 在DB中,各种几何结构有很多规范化的表示形式。可采用顺序列出多边形顶点来表示多边形,也可用三角形剖分多边形的方法表示多边形。复杂多边形被赋予一个标识符。第9页,本讲稿共43页地理数据 地理数据实际上就是空间数据。地图和卫星图像就是典型的例子。地图不仅可以提供位置信息,如边界、河流和道路等,而且还可提供很多与位置区域相关的信息,如海拔、年降水量等。第10页,本
7、讲稿共43页地理数据可分为两类:矢量数据(vector data)由基本几何对象构成,如点、线段、三角形和二维多边形,以及圆柱体、球体、立方体和其它多维几何体。光栅数据(raster data)。这种数据由二维或更高维的位图或象素图组成。二维光栅图的典型例子是卫星云图,其中每个象素存储了特定地区的云层可见度。这种数据也可以是三维的,例如,同样在卫星的帮助下测得的不同地区在不同高度下的温度分布。时间可以形成另一个维度。设计数据库通常不存储光栅本身数据。第11页,本讲稿共43页相应地理数据表示也有两种:地理特征可表示成复杂多边形。某些特征(如河流)可以表示成复杂曲线或复杂多边形。我们可用多边形表示
8、区域,每个多边形表示一个区域,区域内部的数组值是相同的。关于地区的地理信息(如年降水量),可以表示成一个数组,也就是光栅的形式。第12页,本讲稿共43页空间查询的三种主要类型 临近查询:要求找出指定位置的对象。最近邻查询(nearest-neighbor query)则要求找出离指定点最近的对象。部分查询:只指定部分维的值,查找维上匹配这些值的所有点或形状;区域查询:查找全部或部分位于指定区域内的对象。查询还可能要计算区域的交和并。例如,查询年降水量查询还可能要计算区域的交和并。例如,查询年降水量低和人口密度高的区域。计算区域交的查询可被看作计低和人口密度高的区域。计算区域交的查询可被看作计算
9、空间连接算空间连接。第13页,本讲稿共43页5.2 空间数据索引结构 5.2.1 用传统索引执行范围查询可采用的处理方案:为每一维(x和y)各建立一个辅助索引(不妨设索引结构是B树);通过x的B树索引,找出x在范围内的所有指针;通过y的B树索引,找出y在范围内的所有指针;如主存能存放下x,y 在查询范围内的所有指针,可直接在主存中求指针交集。执行查询所需的I/O数估算公式:B-树查找的少量树查找的少量I/OB-树需被检查的叶结点数树需被检查的叶结点数 读数据记录块的读数据记录块的I/O数数 第14页,本讲稿共43页示例问题考虑一个含100万个记录点的关系(x,y),随机分布在(0,0)(100
10、0,1000)矩形区域内。设:每个块可存放100个记录点的数据,B-树的1个叶结点约有200个键值指针对;x值落在450,550范围内的记录点数约有10万个,y也是如此,而x和y同时落在450,550范围内的记录点数约有1万个。试估算执行范围试估算执行范围450 x,y 550内的记录点内的记录点查询所需的查询所需的I/O次数。次数。第15页,本讲稿共43页I/O数估算每块可存放100记录点,100万记录点,共需1万个块存储数据。每个叶节点可存200记录指针,x落在450,550内约有10万记录个点,共需500个叶节点。如果B-树根节点驻留主存,则我们检索关于x的B-树,找出x在450,550
11、内的所有指针,需要501次的I/O同样,找出y在450,550内的所有指针,也需501次I/O。合计1002次I/O。最后对已找到的1万个交集指针,还需进行实际记录数据的读取。由于记录随机存放,可能需要检索包含1万个记录点的所有块。第16页,本讲稿共43页5.2.2 网格索引结构 本章后面介绍常使用的一个例子:有一个存放顾客购买金首饰记录的 关系表(age,salary,)表中有12个顾客,他们的记录表示成下列的年龄-薪水对:(26,0.6)(45,0.60)(51,0.75)(51,1.0)(51,1.28)(70,1.30)(85,1.4)(30,2.60)(26,4.0)(45,3.5)
12、(51,2.75)(60,2.6)第17页,本讲稿共43页基于年龄和月薪这两搜索键建立的网格索引结构 第18页,本讲稿共43页一个网格文件有一个网格数组(grid array)和两个与搜索键对应的线性标度(linear scale)。网格数组的每个单元(Cell)含有一个指向桶的指针,每个桶可以是一个块或物理相邻的块组,桶中直接存放记录。为了节省空间,网格数组的多个单元可以指向同一个桶。第19页,本讲稿共43页插入一个搜索键为(70,3.5K)的记录:首先,我们用顾客月薪的线性标度,来定位新Cell的行,按顺序它应位于第3行。如果搜索键所有现有标度元素,则取最后一行。其次,我们用顾客年龄的线性
13、标度定位新Cell的列。本例中,应定位到第3列。存储包含搜索键值(70,3.5K)的记录到桶j中。第20页,本讲稿共43页必须选择线性标度,使得记录能尽可能均匀分布在各Cell上。当需要往一个已经满的桶中插入记录时,系统必须为该桶添加挂接溢出块。但如果一个桶挂接的溢出块过多,会影响系统的性能。为改善这种情况的性能,如果指向有溢出块桶(令为A)的Cell数超过1,可先分裂A桶,即增加1个桶(令为B),并调原先指向A桶的部分Cell指针,使其指向B桶。如果指向有溢出块桶的Cell数只有1个,这是,我们只有重新组织网格文件,扩展网格数组和扩展某个搜索键的线性标度,这一过程很类似可扩展散列中扩展桶地址
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 第三
限制150内