首页 > 其他分享 >GIS空间索引技术

GIS空间索引技术

时间:2024-10-30 17:21:36浏览次数:3  
标签:GIS 网格 索引 划分 空间 四叉树 矩形

地理信息系统(Geography Information System,简称GIS)的主要任务之一是有效地检索空间数据及快速响应不同用户的在线查询
地理空间索引技术和方法是GIS的关键技术。是快速高效查询、检索和显示地理空间数据的重要指标。

常用的空间索引技术介绍和比较:
 网格空间索引四叉树空间索引R树系列空间索引最为常见。
 
 目前国内外主要的空间数据库也大都采用网格空间索引、四叉树 与 R树 这三类的空间索引结构。如著名的Oracle公司的数据库则同时采用 四叉树和R树两种索引结构。

1。 空间索引技术的发展和分类
   以传统的索引技术观点来看,可以把空间索引技术大致分为 四大类:基于B树、基于Hashing、基于二叉树和基于空间填充区。
   
   就目前的空间索引研究成果而言,在建立索引时,按照划分区域是否与空间对象的分布特征有关的标准,空间索引分为两大类:
                 划分区域与空间对象分布特征无关的;       ---包括 网格索引、四叉树;
                 划分区域与空间对象的分布特征有关的索引方法;  ---包括 BSP树、R树及其变种树、Cell树、KD树等
  
  
  1.1基于固定网格划分的空间索引
        基于固定网格划分的空间索引技术 面向地图对象的空间位置和分布。应该属于 栅格索引,是一种高效、简洁、易于实现的一种空间索引。
        固定网格划分的空间索引技术 顾名思义就是将一副地图数据按照固定的网格划分,如将一幅地图分割成 M行、N列,可表示为M*N,
        以落入每个网格内的地图目标建立索引,这样只需检索原来区域的1/(M*N),以达到 快速检索的目的。
        如下图所示:
         

       问题的关键在于 如何建立检索,将落入每个网格的目标正确放入该网格,在检索过程中,通过鼠标 点选 准确的判断出目标所在网格。
       并运用相应算法精确的剔出所选的目标,以获得其空间数据和对应的属性数据。
   
   
  1.2 四叉树
     四叉树是基于空间划分组织索引结构的索引机制,与规则网格划分不同。
     它将已知范围的二维空间划成4个相等的子空间。如果需要,可以将每个或其中几个子空间 继续划分下去,这样就形成了一个基于四叉树的空间划分。
     如下图所示:
      

      四叉树索引通过将 数据空间逐层细分来组织数据,结构和操作比较简单,实现比较方便。
      其中 满四叉树空间索引,还可用 顺序存储的线性表 来表示。内存需求小。
      
      
      关键是 建立四叉树空间索引,要预先知道空间对象分布的范围。因而不能满足 空间数据的动态要求;此外,一旦索引建立后,树的层次即被
      固定,无法根据 数据空间对象数目的变化来调整树高,可调节性差。
      
      
  
  1.3 R-树
     R-树是空间索引结构中最重要的一种层次结构,其构建思想是以最小边界矩形(简称MBR)递归的对数据集空间按照“面积”规则进行划分。
     R-树中的非叶子节点代表一个划分的空间区域,即一个矩形空间区域;
     R-树中的叶子节点包含的矩形区域对应空间对象的MBR。
     
     构造矩形空间的原则是:
         1) 矩形之间尽可能少重叠;
         2) 矩形尽可能的包含更多的空间对象;
         3) 矩形可以嵌套,即 矩形中可以包括更小的矩形;
         
     R-树的平面划分与数据结构如图所示:
      

      关键是 进行空间检索时,首先判断哪些矩形区域与检索窗口相交,再进一步判断落在检索窗口内的矩形区域中由哪些被检索的对象。
      
     优点:
        R-树具有很强的灵活性与可调节性,建树过程中无需预知整个空间对象所在的空间范围,同时他具有较高的执行效率。
        被公认为是 较好的空间索引结构,已经得到广泛应用。
        
     缺点:
        但是,R-树也存在许多问题,可归纳为两方面:
               。由于空间对象千姿百态,其索引空间经常重叠,且其重叠的程度随着数据量后空间维数的增加而剧增。
                 索引空间的重叠必然造成树的深度及存储空间的增加,从而导致遍历时间增加,查询效率下降。
              
               。在动态构建R-树时,还会产生大量“死空间”(不包含空间目标的索引空间),造成存储空间的浪费,产生无效的遍历。
              
   
   
   1.4 BSP树           
      BSP树是一种二叉树,它将 地理空间逐级进行一分为二的划分,如图所示:
      

      BSP树能很好地与地理对象的空间分布情况相适应,但对一般处理情况而言,BSP树深度较大,对各种操作均有不利影响。                
         

2。主要空间索引方法对比
     在众多空间索引中,不同的索引有不同的优势和不足及使用范围。在选取哪一种作为空间数据库的空间索引时,要根据实际情况和需要来确定。
     所以,目前很多GIS软件中采用 多种索引机制并存、取长补短的策略

标签:GIS,网格,索引,划分,空间,四叉树,矩形
From: https://www.cnblogs.com/gangtie/p/18516223

相关文章

  • MYSQL索引相关
    原sqlSELECTid,user_id,package_id,term_id,source,type,order_id,code_record_id,created_at,updated_at,version,is_deletedASdeletedFROMtbl_purchased_packageWHERE(ter......
  • 2024年模型构建、多维空间与几何学国际学术会议(ICMBMSG 2024)
    2024年模型构建、多维空间与几何学国际学术会议(ICMBMSG2024)2024InternationalConferenceonModelBuilding,MultidimensionalSpaceandGeometry(ICMBMSG2024)会议信息大会官网:2024年模型构建、多维空间与几何学国际学术会议(ICMBMSG2024)投稿邮箱:[email protected]【......
  • iOS 18 升级后如何在 IPhone 上获得更多存储空间
    无论您是对酷炫的iOS18新更新感到兴奋,还是只是下载新应用程序,存储空间不足都可能会让人感到烦恼。您可能在iPhone上看到过那些烦人的警报,例如“iOS18需要更多空间”或“存储空间不足”。在本文中,我们将展示四种超级有效的方法来解决如何在iPhone上获得更多存储空间。......
  • MySQL的临时表空间
    InnoDB使用会话临时表空间和全局临时表空间。会话临时表空间会话临时表空间用于存储用户创建的临时表,以及在InnoDB被配置为磁盘上内部临时表的存储引擎时由优化器创建的内部临时表。从MySQL8.0.16开始,磁盘上内部临时表使用的存储引擎是InnoDB。(以前,存储引擎由internal_tmp_d......
  • 10.30 索引,外键
    索引一、索引的介绍1、什么是索引?(1)定义:索引是一种数据结构一个索引在存储的表中的数据结构;(2)索引是在表的字段上创建的(3)索引包含了一列值,这个值保存在一个数据结构中2、索引作用?(1)保证数据记录的唯一性(2)实现表与表之间的参照性(3)减少排序和分组的时间(例如在使用orderby,gr......
  • 第10课 数据库之索引
    一、索引的介绍1、什么是索引?(1)定义:索引是一种数据结构一个索引在存储的表中的数据结构;(2)索引是在表的字段上创建的(3)索引包含了一列值,这个值保存在一个数据结构中2、索引作用?(1)保证数据记录的唯一性(2)实现表与表之间的参照性(3)减少排序和分组的时间(例如在使用orderby,group......
  • 第13课—数据库之索引
    一、索引的介绍1、什么是索引?(1)定义:索引是一种数据结构一个索引在存储的表中的数据结构;(2)索引是在表的字段上创建的(3)索引包含了一列值,这个值保存在一个数据结构中2、索引作用?(1)保证数据记录的唯一性(2)实现表与表之间的参照性(3)减少排序和分组的时间(例如在使用orderby,group......
  • C#学习 [类型系统] 命名空间(12)
    作用1.组织类System.Console.WriteLine("HelloWorld!");System是一个命名空间,Console是该命名空间中的一个类。可使用using关键字,这样就不必使用完整的名称。usingSystem;Console.WriteLine("HelloWorld!");控制类和方法名称的范围namespaceSampleNamespace;......
  • 中国多时期土地利用遥感监测GIS数据1980至2020年土地利用数据LUCC-最新出炉 附下载链
    [GIS数据]仲科院1980-2020年土地利用数据(LUCC)下载链接-点它......
  • 文本列的性能优化?深入Oracle全文索引
    一.什么是全文索引?全文索引通过分析和处理文本,将文档中的单词分解为词条(tokens),然后存储词条与其所在文档的映射关系。这使得数据库可以快速定位包含特定关键字的记录,而不必对所有文本逐字匹配。二.实验CREATETABLEtest(TEST_IDNUMBER(6),TEST_NAMEVARCHAR2......