空间数据库之空间索引

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

空间索引
空间索引
➢ 目前,国际上研究出许多高效的空间索引方法,常见的空间索引 方法一般是自顶向下、逐级地划分地理空间,从而形成各种树 状空间索引结构。比较有代表性的规则分割方法包括规则格网 索引方法(Jones,1997年)、BSP树(Fuchs,1983 年) 和KDB树(Robinson,1987年)等。基于对象的 分割方法包括R树(Guttman,1984年)、R+树(Sel lis,1987年)和Cell树(Guttman,1991年;刘 东,1996年;陈述彭, 1999年)等。
作业:绘出格网索引建立过程和基 于该所引开窗检索目标过程的程 序流程图
空间索引
主要的索引技术
为解决平衡问题,人们相继提出了平衡的二叉树及AVL树,但这 些树仍局限于内查找.为了寻找一种适合外查找且能动态维持索 引树平衡的结构,因而就应运面生了B-树和B+树
空间索引
•索引文件
•记录本身的主文件外,还利用索引法列出一个键值K与其对应记 录的磁盘地址的索引表,即索引是由关键字和指针组成的索引项 构成。
空间索引
索引非顺序文件
➢ 索引表中顺序列出所有可能的键值(稠密索引),利用二分查 找法查找所需键值,得到所需记录地址。该方法存取快,且无 需记录顺序排列。
➢ 建立方法:记录按输入的顺序放入数据区,同时软件在索引区 建立索引表,待全部数据输完后,软件自动将索引表排序。
索引排序
空间索引
索引非顺序文件
地理信息系统原理
空间索引
问题的提出
假想让我们在一个没有进行任何管理的图书馆中索取一份自己 想要的资料,让我们在一个没有字母索引的字典里查找生字, 用焦头烂额来形容是再合适不过了。为了避免这种毫无方向漫 无边际的检索我们必须提出一种能加快定位速度的有效方法, 于是索引技术应运而生。给一个庞大的数据集找到一个有效的 索引体系是十分重要的,特别对于空间数据这种海量数据而言 更是如此。所以有这样的说法“海量数据如无索引管理将寸步 难行,必将成为‘数据坟墓’,丢不敢丢,用不能用”。因此, 一个信息系统不论是一般的关系型数据库还是空间数据库,其一 项根本的任务就是信息的检索查询。能否快速的检索信息是数 据库性能高低的一个主要的标志。
空间索引
空间索引
➢ 构造一个高性能的空间索引系统要解决几个主要问题:1,高速查询, 在大资料量的条件下能进行实时查询;2,很快更新空间索引;4,不受坐标 系或投影变换的直接影响
➢ 空间索引的性能的优劣直接影响空间数据库和地理信息系统的 整体性能,它是空间数据库和地理信息系统的一项关键技术
➢ 删除 ✓ 删除索引项,数据区保留,重新组织文件时消除之。 ✓ 删除数据,索引保留,重新组织文件时消除之。
➢ 增加 ✓ 数据放在文件末尾,增加索引项,并排序。
➢ 修改 ✓ 查找相应位置,修改记录内容。
(修改前后内容大小不一致时,涉及到删除增加操作)
* 便于增删记录
空间索引
多级索引
空间索引
索引顺序文件 ➢ 是一种按照逻辑键值排序的索引文件,是用嵌入索引的手段 把顺序文件予以扩充,以加速查找,记录的物理顺序与索引 中键值的顺序是一致的。(采用稀疏索引)
空间索引
索引的概念
索引对大家来说并不陌生的,如日常生活遇到的词典中索引, 文献中的词条索引,等等这些生活中的索引(以及书籍目录等) 中就包括了计算机索引结构的基本原理
索引的基本构件是索引项。一个索引项中有关键词值和指针, 通过指针就可找到含有此关键词值的记录,即一个索引项为: (关键词值,指针)。多个索引项就构成了一个索引(表)
➢ 步骤: ✓ 划分行列(M X N); ✓ 计算网格大小及每个格网的矩形范围; ✓ 开辟目标空间(记录目标穿过的网格)和格网空间(记录 格网内的目标); ✓ 注册点、线、面、注记等目标,并记录之;
空间索引
格网索引(Grid Index)
➢ 查询:首先计算出用户查询对象所在的网格,然后通过该网格 快速查询所选地理对象。
空间索引
空间索引
➢ 就是指依据空间对象的位置和形状或空间对象之间的某种空间 关系按一定的顺序排列的一种数据结构,其中包含空间对象的 概要信息,如对象的标识、外接矩形及指向空间对象实体的指 针。
➢ 作为一种辅助性的空间数据结构,空间索引介于空间操作算法 和空间对象之间,它通过筛选作用,大量与特定空间操作无关 的空间对象被排除,从而提高空间操作的速度和效率
索引本身也是一个文件,当索引很大时,也可将其分块,建立 高一层的索引。如此继续下去,直到最高级索引不超过一个块 时为止,这样就得到了一个多级索引结构
索引通常置于磁盘或内存,内存中一般只存放最高级索引。一 旦对一个大型数据文件建立了索引而形成了索引文件,则不论 是对随机查找,还是对顺序查找都是方便的
空间索引
空间索引
空间索引
➢ 尽管有许多特定的数据结构和算法用来完成空间索 引,但基本原理相似,即采用分割原理,把查询空间划 分为若干区域(通常为矩形或多边形),这些区域或单 元包含空间资料并可唯一标识。目前,有两种分割方 法,一种是规则分割方法,另一种是基于对象的分割 方法。规则分割方法是将地理空间按照规则或半规 则方式分割,分割单元间接地与地理对象相关联,地 理要素的几何部分可能被分割到几个相邻的单元中, 这时地理对象的描述保持完整、而空间索引单元只 存储对象的位置参考信息。在基于对象的分割方法 中,索引空间的分割直接由地理对象来确定,索引单 元包括地理对象的最小外接矩形
空间索引
格网索引(Grid Index)
➢ 思路: 是将研究区域用横竖线条划分大小相等或不等的格网,
记录每一个格网所包含的空间实体。当用户进行空间查询时, 首先计算出用户查询对象所在格网,然后再在该网格中快速 查询所选空间实体,这样一来就大大地加速了空间索引的查 询速度。
空间索引
格网索引(Grid Index)
主要的索引技术
如何组织索引文件是索引技术中的主要问题.对名级索引可采 用定长记录固定组块的方式,并可对索引进行再索引,层层上去, 直到最高级索引不超过系统规定的一个块的大小为止.这样,整 个索引文件就构成了一棵以索引块和记录块为的索引树
空间索引
主要的索引技术
树状数据结构有很多,如二叉树,多叉树等,它们都可用来构成 索引文件.但是,这些结构主要有以两方面的问题,其一是大都只 适于内查找,即所要查找的资料均放在内存中;其二是易引起所 谓不平衡的问题.对后者我们以二叉树为例.当二叉插入记录时, 每次都从根开始比较关键词的大小,比根小的放到根的左子树中, 比根大的则放到根的右子树中,在子树中重复上述过程,直至找 到记录的正确位置.在这种不加控制的情况下,树中可能会出现 长短不一的分枝,即有的可能很长,有的可能很短.这种人根到叶 的路径不等长的现象就叫做不平衡.如果出现不平衡,则在检索 时平均查找次数可能变大,使得查找效率大为降低
➢ 建立方法:数据按顺序分块存放(块间相临),记录每块
的最后记录键值及块的首地址形成索引表。
空间索引
索引顺序文件
一级索引
两级索引
空间索引
索引顺序文件 ➢ 删除 ✓ 物理删除 ✓ 逻辑删除 ➢ 增加 ✓ 避免移动过多文件,将之暂放于溢出 取。(重新组织文件时归位) ➢ 修改 ✓ 查找相应位置,修改记录内容。
* 索引紧凑,查找速度快。
*不足:增删较麻烦,多次增删后,文件的空间利用率、 存储效率均降低,需要重新组织文件。
空间索引
空间索引
➢ 其一是由于计算机的体系结构将内存分为内存、外存两种,访 问这两种内存一次所花费的时间一般为30~40ns,8~10ms,可 以看出两者相差十万倍以上,尽管现在有“内存数据库”的说 法,但绝大多数资料是存储在外存磁盘上的,如果对磁盘上资 料的位置不加以记录和组织,每查询一个数据项就要扫描整个 数据文件,这种访问磁盘的代价就会严重影响系统的效率,因 此系统的设计者必须将资料在磁盘上的位置加以记录和组织, 通过在内存中的一些计算来取代对磁盘漫无目的的访问,才能 提高系统的效率,尤其是GIS涉及的是各种海量的复杂资料,索 引对于处理的效率是至关重要的
相关文档
最新文档