我对使用通用图形数据库(neo4j)到 mongodb 来跟踪 gps 设备感到困惑。
我需要的功能:
- 跟踪和分析每个被跟踪设备的路径。
- 经纬度/基于地址的设备搜索
- 基于来自所有设备的聚合数据的流量估计
- 我将为其实现算法的一些更智能的东西。
- 应该有一个稳定的Nodejs接口
有什么建议么 ?
这里的一些答案建议使用 GIS 数据库,一些建议使用图表,有人可以澄清区别吗?
我对使用通用图形数据库(neo4j)到 mongodb 来跟踪 gps 设备感到困惑。
我需要的功能:
有什么建议么 ?
这里的一些答案建议使用 GIS 数据库,一些建议使用图表,有人可以澄清区别吗?
我建议使用对象关系数据库,而不是 mongo 等无 sql 数据库,因为听起来您的数据分析将利用 mongo 排除的许多关系特性。
根据您的规范,我建议使用 PostGis 插件的 PostgreSQL。PostGIS 是 PostgreSQL 关系数据库服务器的空间数据库插件。它包括对 OpenGIS “Simple Features for SQL”规范中定义的所有函数和对象的支持。使用 PostGIS 中的许多空间功能,可以完全在 SQL 命令行中进行高级空间处理和查询。
你可能想看看couchdb的geocouch扩展,它支持空间信息和边界框查询。显然,您可以为您的特定用例添加带有 map reduce 功能的自己的视图。
我的用例有点不同,但涉及每 5 分钟存储一次 GPS 坐标,持续时间约为 3 周,几乎没有停止超过 6000 公里。我有自定义视图来计算距离、平均速度等,以及列表函数以 KML 格式等输出行程。还提供了一个网络界面来实时跟踪当前位置。CouchDB 没有任何问题。
至于 node 的客户端库,我在一些项目中一直在使用cradle,我对它的稳定性和易用性感到满意。只要确保您在更改视图和所有内容时没有在开发中进行缓存。
考虑到具体实现决定采用 mongodb + postgis 配置。