0

我想我了解如何存储 (x,y) 或 (lat, log) 以允许在对排序数据使用范围查询时检索某个空间范围内的所有点。Geohash 通过交替 lat(奇数位)和 log(偶数位)来实现这一点,这样随着 x 的分辨率增加,y 的分辨率也会增加。希尔伯特曲线等其他方法也依赖于这一基本原理,提高了两个维度的分辨率。但是,我无法理解添加额外的时间维度会完成什么。例如,GeoMesa 根据他们的网站使用看起来像“YXTTYXTTYX”的索引。我没有得到的是 TT 位如何允许提出诸如“在最小 < t < 最大间隔内获得 X、Y 范围内的所有点”之类的问题。我是否误解了地理空间索引中这些位和额外维度的目的?

我理解它的方式,将这些位放在那里会使时间分辨率随着空间分辨率的增加而增加。假设我们有 Ts 所在的 [10] [00] 之类的位。第一位将空间分成两块,零表示小于一半,1 表示大于一半,因此,对于四千年的假想集合,我们得到0 = year < 2000, 1 = year > 2000。这[10]导致2000 < t < 2500, 下一位0导致,2000 < t < 2250和。使用这种方法,我看不到如何在特定空间范围内检索特定时间范围内的所有事件,也不清楚这还能用于什么。到目前为止,我看到的所有地理空间论文和演示文稿主要集中在空间散列上,并没有详细讨论额外维度的使用。02000 < t < 2125

4

1 回答 1

1

GeoMesa 网站关于空间填充曲线是 geohash 的说法是错误的。geohash 是 G. Niedermayer 的发明!但是你也可以像 2d 一样将 3d 展平。sfc 还保留 3d 中的位置信息,但质量越高,工作量越大。我不会向您推荐 3d 希尔伯特曲线。z曲线更容易理解!

于 2016-04-18T02:20:43.657 回答