当前位置:  开发笔记 > 编程语言 > 正文

NoSQL和空间数据

如何解决《NoSQL和空间数据》经验,为你挑选了3个好方法。

你们有没有使用NoSQL(非关系型)数据库存储空间数据的经验?是否有任何潜在的好处(速度,空间......)使用这些数据库来保存桌面应用程序的数据(与使用SpatiaLite或PostGIS相比)?

我已经看过关于将MongoDB用于空间数据的帖子,但我对一些性能比较感兴趣.



1> Peter Neubau..:

像Neo4j这样的图形数据库非常适合,特别是因为你可以动态地添加不同的索引方案.您可以对基础数据执行的典型操作当然是1D索引(例如Timline或B-Trees)或者像Hilbert Curves等更有趣的东西,请参阅Nick的博客.此外,对于一些现场演示,请在此处查看AWE开源GIS桌面工具,底层索引图在07:00左右可见.



2> TheSteve0..:

Couchdb还具有简单的空间扩展

http://vmx.cx/cgi-bin/blog/index.cgi/category/CouchDB



3> John Powell..:

目前,MongoDB使用B树进行地理分割,这将比PostGIS的R树慢(我不能给出确切的数字,我担心,但是有很多关于这些差异的理论文献).但是,在这些幻灯片中,http://www.slideshare.net/nknize/rtree-spatial-indexing-with-mongodb-mongodc作者讨论了向MongoDB添加R-tree和在地理密钥上进行分片.您谈论桌面使用,因此地理分析可能不会引起关注,因为在大量数据集中会更多地感受到分片的好处.最终,它可能更多地取决于您想要对空间数据做什么.Postgis具有更多的功能和支持拓扑,栅格,3D,坐标系之间的转换,所以如果这是你正在寻找的,PostGIS仍然是最好的选择.如果您有兴趣存储数十亿/数万亿个空间对象,并且只是根据某些标准运行基本查找此点附近/内部的所有点,那么MongoDB可能是一个非常好的选择.

推荐阅读
谢谢巷议
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有