Bases de Données / Databases

Site Web de l'équipe BD du LIP6 / LIP6 DB Web Site

Outils pour utilisateurs

Outils du site


site:enseignement:master:bdle:tmes:kvstore

TME KVStore (facultatif)

Ce TME est facultatif pour 2018-2019

L'objectif de ce TME est de prendre en main un système scalable clé-valeur. Notions abordées: clé, répartition des données en fonction d'un préfixe de la clé, localité d'une opération, lectures/écritures non isolées, transaction pour isoler une séquence d'écritures, écriture conditionnelle.

Préparation

cd votre répertoire
tar zxvf /Infos/bd/kvstore/kv-ce-3.1.7.tar.gz
cd kv-3.1.7
source /Infos/bd/kvstore/config-java-classpath-kvlite.txt

Seulement si l'étape précédente n'a pas été faite : télécharger le logiciel oracle kv store (fichier kv-ce-3.1.7.tar.gz). Copier le logiciel dans votre dossier de travail et le décompresser.

Démarrage du serveur

Démarrer le serveur kvlite (version light de kvstore) avec la commande :

    java -jar lib/kvstore.jar kvlite -root /tmp/kvroot

Rmq: L'option -root permet de préciser un dossier local sur votre machine pour que kvstore stocke les données (éviter de stocker les données sur NFS). En cas d'erreur au démarrage de kvlite, supprimer entièrement le dossier kvroot rm -rf /tmp/kvroot. Garder ce terminal ouvert (pour afficher les eventuels messages provenant du serveur kvstore) mais ne plus l'utiliser par la suite pour saisir d'autres commandes. Pour éteindre le serveur : soit la touche Ctrl-C soit la commande

java  -Djava.library.path=./lib  -jar lib/kvstore.jar stop -root /tmp/kvroot

Récupérer les fichiers du TME

 tar zxvf /Infos/bd/kvstore/kvstore-etu.tgz
 cd kvstore-etu

Documentation

  • Lire la documentation Oracle NOSQL (en particulier le quick start)
  • Ouvrir un onglet dans votre navigateur pour consulter l'API java. Cliquer sur le package oracle.kv, puis consulter les méthodes put et get multigetde l'interface KVStore et les méthodes createPut… de l'interface OperationFactory.

Exercice 1

Lire le sujet

Initialier le store

cd kv-3.1.7
source /Infos/bd/kvstore/config-java-classpath-kvlite.txt
cd ..

Vérifier que la variable CLASSPATH contient tous les jar de kvstore

echo $CLASSPATH

Initialiser le store

cd  kvstore-etu
javac InitMagasinGlobal.java
java InitMagasinGlobal

Question 1

 javac ExecutionSansTransaction.java
 java ExecutionSansTransaction
site/enseignement/master/bdle/tmes/kvstore.txt · Dernière modification: 30/01/2019 09:53 par hubert