G**O 发帖数: 147 | 1 网上找到的资料一般都是在说geo hash原理是什么,基本没找到讨论具体怎么存储,读
和写怎么弄的,特来请教各位大神。
比如我的use case是,支持
寻找附近 5km 内的POI, 可以返回所有POI, 但是同时要支持分类查询:饭店,酒吧
,电影院...
首先想到GeoHashing来做,就是获取用户的地理位置,算出一个位置,比如 9u9qvu,
六位应该精度就够了。
然后要找附近 9u9qv[0] -- 9u9qv[z] 的所有的东西。我们可以用SQL
poi_table
id geohash name category....
SQL 的query可以这样 S3L3CT FROM table WHERE geohash Iike 9u9qv[%]
如果要查询酒吧
可以 geohash Iike 9u9qv[%] and category = bar
这样即使通过geohash 建立一个 index,效率似乎还是不够高。
如果用NoSQL, 应该怎么存,效率会比较高
1. 用什么类型的NoSQL
2. 具体怎么存。
3. 怎么处理POI 跃变的问... 阅读全帖 |
|
|
p*********e 发帖数: 32207 | 3 【 以下文字转载自 Automobile 讨论区 】
发信人: Assailant (反恐精英 勇救人質 精炸拆彈), 信区: Automobile
标 题: CA 红灯相机 Red Light Camera GPS POI File
发信站: BBS 未名空间站 (Wed Jul 18 21:03:51 2007)
* 我不想有任何法律上的麻煩, 所以請勿 ZT this 貼 *
* And please don't share this information with anyone you don't know *
see 附件
这些来自 www.gps-poi-us.com 的 供全球卫星定位导航系统 (GPS) 用的
红灯相机 (red light camera) 的 POI (points of interest) 档案
我有完整 LA, LV, SF, SD 版区的档案 (不是完整包括所有红灯相机, 只是比现在他们
网站上的免费版本较完整).
Oak, OC, SJ, Sacramento 档案是他们现有的免费不全版本
用这个来设置GPS警戒, GPS在我驶向 红灯相机 |
|
p******a 发帖数: 130 | 4 可以用hbase存。查询的时候需要比较附近9个block的数据。
[在 GPRO (GoPro) 的大作中提到:]
:网上找到的资料一般都是在说geo hash原理是什么,基本没找到讨论具体怎么存储,
读和写怎么弄的,特来请教各位大神。
:比如我的use case是,支持
:寻找附近 5km 内的POI, 可以返回所有POI, 但是同时要支持分类查询:饭店,酒吧
:,电影院...
:首先想到GeoHashing来做,就是获取用户的地理位置,算出一个位置,比如 9u9qvu,
六位应该精度就够了。
:然后要找附近 9u9qv[0] -- 9u9qv[z] 的所有的东西。我们可以用SQL
:poi_table
:id geohash name category....
:SQL 的query可以这样 S3L3CT FROM table WHERE geohash Iike 9u9qv[%]
:如果要查询酒吧
:.......... |
|
G**O 发帖数: 147 | 5 思路和key value差不多吧?
row key 还是 9u9qv 。 然后里面可以存这个prefix下所有的POI。
问题就是如果要更大,或者更小范围,就需要另外存 9u9q, 。
还是说 row key 存的是每个POI 具体的位置,然后查询的时候做 range query
, |
|
g*********s 发帖数: 1782 | 6 【 以下文字转载自 PDA 讨论区 】
发信人: gandjmitbbs (Nothing), 信区: PDA
标 题: 谁给推荐Garmin POI editor?
发信站: BBS 未名空间站 (Fri Aug 6 02:33:25 2010, 美东)
放狗搜出来的不太放心。
另外Garmin怎么连这么重要的工具都不提供啊? |
|
p******a 发帖数: 130 | 7 不是指定要查5km范围的地点吗?
[在 GPRO (GoPro) 的大作中提到:]
:思路和key value差不多吧?
:row key 还是 9u9qv 。 然后里面可以存这个prefix下所有的POI。 |
|
G**O 发帖数: 147 | 8 建树应该是把树放在内存吧?
万一数据太大, 比如 9u9v 的范围很大,这一块人口密集。一个机器装不下。就要多
台机器了。(估算了下其实未必,方圆几十km,假设10000 POI, 每个1MB, 也就10GB)
似乎是个不错的策略。这样再DB里面不用存好多份,不用 9u, 9u9 , 每个key都存一
份。 |
|