sql - 需要数据存储建议 : Best way to store location + time data?

标签 sql language-agnostic nosql data-storage

我有一个项目,需要将大多数查询从纬度/经度以及日期 + 时间中剔除。

最初,我在考虑一个标准的 RDBMS,其中 lat、long 和 datetime 字段被正确索引。然后,我开始考虑基于文档的系统,其中文档本质上是一个时间戳,每个文档都包含经纬度。每个文档可以有 n 个与之关联的对象。

我正在寻找关于什么是最好的存储引擎类型的建议 - 上述哪个想法会更好,或者是否还有其他完全是理想的解决方案。

编辑:寻找开源/免费解决方案。不幸的是价格是一个问题!

谢谢

最佳答案

我使用 PostGres(免费开源数据库)和 PostGIS 扩展来处理位置数据。它们非常好,即使我在 MS 环境中工作,所有生产数据库都使用 MSSQL 2005,但我使用 PostGres w/GIS 来操作和预计算大量地理数据。

PostGis 具有用于导入 arcview .shp 文件的实用程序,这是一个巨大的优势,因为这是大多数地理数据的存在方式。它还提供了大量基于位置的 sql 函数,如 contains( ... ) 和 near( ... );它提供了一种索引空间数据的机制。

我已经有一段时间没有使用它了,但我记得它坚如磐石,非常有用。

PostGIS:http://postgis.refractions.net/

关于sql - 需要数据存储建议 : Best way to store location + time data?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2443381/

相关文章:

algorithm - 功能替代品?

mongodb - NoSQL 数据库之间有什么区别,它们与传统关系数据库有何不同?

mysql - SQL大表优化

sql - JSONB 到数组数据类型

parsing - 递归下降解析器中的错误报告

mysql - 数据库中的唯一 ID

node.js - 如何在 Mongoose 中动态地将值插入对象的属性?

PHP:安全地将 mySQL 中的字段日期从 'datetime' 转换为 'unix timestamp' 而不会丢失数据

mysql - T-SQL 存储过程 CASE 问题

c# - 提高编程能力