Bonjour,
pour faire simple je dois faire une appli qui indexe et retrouve des documents semi-structurés et géolocalisés :
je souhaite stocker de données de différents fichiers semi-structurés dans une base et pouvoir réaliser des recherches.
L'idée naive serait de partir sur des technos genre "JSON" et une indexation sous forme de tag pour accélerer les recherches. Les éléments que je vais indexer vont être géolocalisés. J'ai donc besoin de faire une recherche par distance.
Se pose alors la question pour moi NoSQL ou pas ?
Mes réflexions sont : Le NoSQL est bien car je stocke un JSON ou autre chose très facilement, sans évolution de schéma relationnel. Sachant que j'ai besoin de souplesse et pas des contraintes d'intégrité, et plutot de performance ou de "scalability", c'est plutôt sympa.
L'inconvénient du noSQL c'est l'indexation , la recherche, et en particulier la présence de critère géographique dont il ne dispose pas. Donc autant partir sur un PostgresSQL qui embarque des API SIG, permet d'indexer, en utilisant d'un coté un mécanisme de tag pour les recherches et de requêtes indexés, et de l'autre coté qui possède un type de données NoSQL.
Alors je sais bien ce que je peux attendre de PG. Mais ma question est de savoir si le NoSQL répond à mes besoins. Les limites que j'entrevois en sont-elle ou existe-t-il des solutions que je ne maitrise pas et qui répondent à mon besoin (serveur NoSQL auquel j'ai pas pensé, Elastic Search,...) ?
Merci pour vos conseils.
Partager