GeoMesa源码学习(3):空间索引——part 1

为了保证回复实时性,有任何问题欢迎加我QQ:451443165 讨论?(申请问题答案:xiaof22a)

分布式空间索引可以说是GeoMesa的灵魂了,它直接决定了空间数据的:(1)行主键(2)数据分区与负载均衡(3)索引高效查询。所以说要想真正了解GeoMesa的核心代码,必须要把索引这一部分弄懂吃透。空间索引方法是一套完整切复杂的理论体系,建议读者在阅读本文之前先看这篇论文:

Böhm, Klump, and Kriegel. “XZ-ordering: a space-filling curve for objects with spatial extension.” 6th. Int. Symposium on Large Spatial Databases (SSD), 1999, Hong Kong, China. (http://www.dbs.ifi.lmu.de/Publikationen/Boehm/Ordering_99.pdf)

下面进入正文。

1. 空间填充曲线(Space Filling Curve)

 

基于空间目标排序的索引方法的基本思想是按照某种策略将索引空间细分为许多均等的网格,并给每一网格分配一个编号,然后用这些编号为空间目标获得一具有代表意义的数字。这样,多维空间目标就可以背影射成一维的目标,从而也就可以使用现有的数据库管理系统中比较成熟的一维索引技术来提高对空间数据的快速查找和存取。问题的关键在于影射算法必须较好地保持多维空间目标间的临近关系以提供较好的空间查询性能。空间填充曲线(后面简称sfc)是一种降低空间维度的方法。sfc能够将高维空间中的数据映射到一维空间,使用经典线性索引结构存储数据。空间目标排序的技术很多,最常见的sfc是基于Z排序(Z-order)和Hilbert排序的空间索引技术,技术的区别主要在于建立的多维到一维的映射关系是否能够很好的保持多维空间目标间的临近关系。关于Z-order和Hilbert曲线本文不做详细阐述,请读者自己查阅相关文献。

Z-order:

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值