地理空间应用:mySql vs CouchDB vs其他

我正在谷歌地图上开发一个应用程序,并检出各种选项来存储和检索边界框中的空间信息。

最初我以为MySql不是一个好的select,但在检查http://dev.mysql.com/doc/refman/5.6/en/spatial-analysis-functions.html和http://code.google.com/apis /maps/articles/phpsqlsearch.html ,看起来像我可以使用MySql,它支持我的用例。

我也用geocouch来评估node.js和couchdb。对于像socket.io这样的模块,geo等看起来也是一个不错的select。 请查阅“GEO,CouchDB和Node.js入门”一书。 我的应用程序将是1页的应用程序,我不会预见,如果我将来需要任何时候rdbms。

我也看到了这个 – http://nodeguide.com/convincing_the_boss.html ,这让我有点担心是否去node.js-geocouch ….

如果您的下一个应用程序的体系结构像NoSQL成分的食谱一样,请暂停一下并阅读此内容。

是的,Redis,CouchDB,MongoDB,Riak,Casandra等都看起来很诱人,但是红苹果Eve也忍不住。 如果您已经在使用node.js来承担技术风险,那么您不应该使用更多可能还不完全了解的技术。

当然,select一个面向文档的数据库有合法的用例。 但是如果你试图在你的软件之上build立一个业务,坚持保守的数据库技术(比如postgres或者mysql)可能会超过满足你内心的书呆子和给你的朋友留下印象的好处。

你有什么意见 ?

GeoCouch听起来像是一个很好的解决scheme。 如果你想安装简单,你可以看看Couchbase Single Server ,它基本上是一个包含GeoCouch的CouchDB(查看Developer Preview for 2.0 。