11 décembre 2013

Couchbase - Installation & Utilisation en Java

Couchbase est une base de données NoSQL orientée documents.

Dans cet article, nous verrons les concepts de Couchbase.
Ensuite, nous installerons Couchbase, puis créerons un premier projet Java avec une classe de test qui stocke et récupère un document JSON depuis Couchbase.

Concepts

Couchbase est une base de données NoSQL orientée documents.

Les documents peuvent être par exemple des données clés/valeurs au format JSON ou du contenu binaire pour stocker des fichiers ou des images.

Les documents ont obligatoirement un identifiant unique qui sert à stocker et à récupérer ces documents.

L'identifiant du document devrait être composé du type de document ainsi qu'un numéro unique. Nous pouvons avoir par exemple : "article_12345", qui indique que le document est un article et de numéro 12345.

Contrairement aux bases relationnelles classiques, la structure des données n'est pas figée et peut être différente d'un document à l'autre. Ceci permet de stocker certaines informations selon les besoins et de faire évoluer son modèle de données sans avoir à modifier un schéma de base de données.

Ainsi c'est le module qui produit les données qui impose le format des données et non la base de données.

Installation

Voici les étapes pour installer Couchbase :

  • Télécharger le programme d'installation sur la page suivante : http://www.couchbase.com/download
  • Lancer ce programme pour installer Couchbase
  • Après la copie des fichiers, le programme d'installation lance un navigateur Web pour se connecter à l''interface d'administration à l'adresse suivante : http://localhost:8091
  • La page de configuration de Couchbase apparaît
  • Cliquer sur Setup
  • Définir la localisation du fichier de la base de données
  • Définir 512Mb comme taille de mémoire vive utilisée par Couchbase
  • Laisser les autres options par défaut
  • Cliquer sur Next
  • Ne pas installer les bases fournies en exemple
  • Cliquer sur Next
  • Couchbase propose la configuration du bucket par défaut. 

Un bucket est une zone de documents afin que chaque application ait sa propre zone de documents. C'est un peu comme un schéma pour une base de données relationnelles où les tables ne sont pas visibles entre les schémas.

  • Sur l'écran de configuration du bucket par défaut, définir 512Mb comme taille de la mémoire vive à utiliser pour celui-ci. La taille du bucket ne peut être supérieure à la taille allouée à Couchbase.
  • Cliquer sur Next
  • Cocher la case "I agree" pour indiquer que nous acceptons les conditions d'utilisation
  • Cliquer sur Next
  • Choisir le mot de passe de l'administrateur. Le login Administrator sera utile pour se connecter à la console d'administration de Couchbase.
  • Cliquer sur Next
  • La configuration est terminée
  • La console d'administration de Couchbase apparaît

Sur Windows, Couchbase s'installe en tant que service "Couchbase Server" qui va démarrer automatiquement au démarrage de Windows.

Pour éviter d'alourdir le système au démarrage, il est possible de désactiver le démarrage automatique de ce service. Il faudra ensuite penser à revenir sur les services systèmes pour démarrer manuellement le service "Couchbase Server".

Pour accéder rapidement aux services Windows, appuyer sur la touche "Windows", tapper "service" et appuyer sur la touche "Entrée".

Projet Java

Nous allons maintenant tester l'utilisation de Couchbase dans un projet Java.

Pour cela, suivre les étapes suivantes :
  • Créer un nouveau projet Java de type Maven
  • Dans le fichier pom.xml, définir les dépendances suivantes :

  • Créer le répertoire "src/test/java" dans le projet
  • Créer le package "org.tuto.couchbase"
  • Créer le test Java suivant :

  • Lancer le test

La réussite du test indique que nous avons réussi à stocker et à récupérer un document au format JSON dans la base Couchbase.

Nous pouvons visualiser ce document sur la console d'administration de Couchbase :

L'article apparaît dans la liste des documents :
Le document "article" apparaît dans la liste des documents


Conclusion

Nous venons de voir comment installer et utiliser la base Couchbase à l'aide d'un client Java.

La prochaine étape sera de voir comment effectuer des recherches à l'aide de Couchbase.