【发布时间】:2015-05-20 03:03:13
【问题描述】:
我正在启动一个分析项目,该项目将处理数百万个地理定位数据。 数据可能是这样的:
id{
userId,
long,
lat,
time,
appId
}
我的主要业务:
- 获取区域中包含的所有数据
- 找到属于一个userId的所有点
- 发布/订阅以显示所有新条目
- 在所有数据(或仅少数)上添加/删除字段
我想使用 Meteor.js 并且需要接近实时的性能(最大约 0.5 秒到 3 秒)。
也许这很重要:我的结果需要 3-15m 之间的精度。
所以我看了:
Redis : 接缝使用简单,有一个Redis Geo 插件。另外还有一个流星驱动。
PostGIS : 具有 M+ 个条目的实时性能?没有流星的驱动程序。
PostGre :有一个流星的驱动程序。
Hbase : 为大表构建接缝。没有流星的驱动程序。
你会用哪一个? (任何其他建议将不胜感激。)
【问题讨论】:
-
你为什么不测试一下? Postgis 应该能够毫无问题地处理这个问题,除非您没有正确的索引或编写非常糟糕的查询。如果 PostGre 是 PostgreSQL 的别名,那么 PostGIS 就是在 PostgreSQL 上运行的扩展。不要忘记,一百万条记录对于数据库来说几乎是零。
-
@FrankHeikensThw 为您提供建议。我还没有测试,因为我不知道我在做什么 :) 但是你已经把可能性降到最低了。所以谢谢:)
-
如果您需要获取地理信息,可以试试SmartyStreets API。
标签: postgresql geolocation redis hbase postgis