a****i 发帖数: 1182 | 1 怎么在一个分布系统保存和读取geohash
比如说有个event在 wx4g0ec1,显然它也在w, wx, wx4...里
具体实现的时候,每一级geohash都会指向这个event,w -> "wx4g0ec1"
wx -> "wx4g0ec1" ...
还是说上一级只需要指向下一级就可以? w -> wx -> wx4 ... -> "wx4g0ec1"
在读取的时候又怎么做呢?比如说读最新的十个event,在某个location范围
zoom in/out |
|
a****i 发帖数: 1182 | 2 能明白geohash怎么来的,但是不太清楚这个怎么在一个分布系统保存和读取
比如说有个event在 wx4g0ec1,显然它也在w, wx, wx4...里
具体实现的时候,每一级geohash都会指向这个event,还是说上一级只需要指向下一级
就可以?
在读取的时候又怎么做呢?比如说读最新的十个event,在某个location范围 |
|
F****n 发帖数: 3271 | 3 geohash是给没有spatial data structure的检索系统用的
比如说你只能用一个全文本的搜索引擎,geohash可以用来mimic spatial indexing
你可以把event wx4g0ec1 用所有的prefixes(w, wx, wx4...)索引
这样对任何一级的搜索都能找到
但是如果你自己build一个搜索系统,没有必要用geohash
geohash就是一个很蹩脚的quadtree(essentially a trie), 并不efficient,
应该直接上spatial data structure.
一般来说r-tree is the best. |
|