Des sources de données hétérogènes : une problématique bien connue.

Beaucoup de projets nécessitent l’utilisation et la transformation de données hétérogènes. Si les outils utilisés ne sont pas judicieusement choisis, le projet peut vite devenir un calvaire à maintenir ou à faire évoluer.

Gérer plusieurs types de base : Spring à la rescousse !

Pour cela, GoPivotal (anciennement SpringSource) a créé Spring Data : une librairie générique pour l’accès aux données. On peut ainsi accéder à des base orientées « document », « graphe » ou « clé-valeur » de manière unifiée. Cela permet d’avoir la même API que ce soit pour une base MongoDB ou une base Neo4j, par exemple.

Pourquoi avons-nous contribué ?

Dans le cadre d’un de nos projets, nous avons pu explorer différents aspects d’Elasticsearch (souvent considéré comme une base NoSQL). Nous utilisions déjà Spring Data pour les bases Redis (clé-valeur), Neo4j (graphe) et MongoDB (document) mais Elasticsearch ne faisait malheureusement pas encore partie de l’écosystème de Spring Data. Après quelques recherches rapides, un projet existait en open source. La partie géo-localisation était manquante et nous en avions besoin. Nous avons donc contribué à ce projet qui au fil du temps a été intégré à Spring Data Dijkstra.

Pour ceux qui codent : des exemples !

Voici comment faire des requêtes géolocalisées avec Spring Data Elasticsearch : Exemples de requête géolocalisée avec Spring Data Elasticsearch

 

Pour plus d’informations sur le projet : https://github.com/spring-projects/spring-data-elasticsearch

Tagged on: