2011-09-05 7 views
2

Je développe une application sur google map et vérifie diverses options pour stocker et récupérer des informations spatiales dans un cadre de délimitation.geo application spatiale: mySql vs CouchDB vs autres

Initialement, je pensais que MySql n'était pas une bonne option, mais après avoir vérifié http://dev.mysql.com/doc/refman/5.6/en/spatial-analysis-functions.html et http://code.google.com/apis/maps/articles/phpsqlsearch.html, on dirait que je peux utiliser MySQL et il prend en charge mes cas d'utilisation. J'évaluais aussi node.js et couchdb avec geocouch. Avec des modules comme socket.io, geo etc, c'est aussi un bon choix. consultez le livre "Premiers pas avec GEO, CouchDB et Node.js". Mon application serait une application de 1 page et je ne prévois pas si j'aurais besoin de rdbms à l'avenir.

j'ai vu cela - http://nodeguide.com/convincing_the_boss.html et cela me fait peu inquiet que d'aller avec Node.js-geocouch ....

Si l'architecture pour vos prochaines applications se lit comme le livre de cuisine de Ingrédients NoSQL, s'il vous plaît faire une pause pour une seconde et lisez ceci.

Oui, Redis, CouchDB, MongoDB, Riak, Casandra, etc .. tous semblent vraiment tentant, mais aussi que la pomme rouge Eve ne pouvait pas résister. Si vous êtes déjà en prenant déjà un risque technologique en utilisant node.js, vous ne devriez pas le multiplier par avec plus de technologie que vous ne comprenez probablement pas encore .

Bien sûr, il existe des cas d'utilisation légitimes pour choisir une base de données orientée document . Mais si vous essayez de créer une entreprise sur votre logiciel , s'en tenir à la technologie de base de données conservatrice (comme postgres ou mysql) pourrait dépasser les avantages de satisfaire votre nerd intérieur et impressionner vos amis.

Quelle est votre opinion?

+0

+1. Installations spatiales MySQL étaient underpowered jusqu'à 5.6.1 lorsque des requêtes spatiales appropriées [ont été ajoutés] (http://dev.mysql.com/doc/refman/5.6/en/functions-for-testing-spatial-relations-between-geometric-objects.html#functions-that-test-spatial-relationships -between-geometries) qui utilise les géométries de l'objet plutôt que le simple rectangle de délimitation minimum.Il serait intéressant d'obtenir une réponse de quelqu'un qui les a utilisé (je ne l'ai pas encore) – MarkJ

+1

Vous pouvez également consulter PostGIS: http: //postgis.refractions.net/ – djc

+0

Enfin j'utilise mongodb et ça fonctionne comme un charme jusqu'ici dans node.js .. Je suis capable de faire une recherche de rayon ... Jusqu'ici je stocke tous ba sic types de données (chaîne, nombre etc) ... Je ne sais pas comment je pourrais stocker un fichier/binaire/blob ... Je dois voir cela lorsque l'exigence se pose .. – user644745

Répondre

0

GeoCouch semble être une bonne solution dans votre cas. Si vous voulez avoir une installation facile, vous pouvez jeter un oeil à Couchbase Single Server, qui est essentiellement un CouchDB avec GeoCouch inclus (consultez la Developer Preview for 2.0.

+0

Je voulais juste préciser que Couchbase n'est pas la même chose que CouchDB. Par exemple, les API sont différentes, car il n'y a presque aucune interface REST dans Couchbase: http://www.couchbase.com/docs/couchbase-manual-2.0/couchbase-introduction-migration-couchdb.html – Vladtn