Le Projet

Former les binômes (pas de trinome).

Année 2012-2013

Préparation

Vérifier que vous pouvez démarrer 2 serveurs kvlite sur 2 machines différentes, sans géner les autres étudiants. Attention chaque serveur doit avoir son propre dossier kvroot et son propre port d'écoute. Si le dossier kvroot est sur votre compte, préciser son emplacement lors du démarrage de kvlite. Préciser le port d'écoute au démarrage du serveur et également au démarrage des applications qui accèderont à votre serveur kvlite

Partie 1 : Transactions et concurrence

Rédiger un rapport (+ code source commenté) du TmeKvstore. Au moins une page pour votre avis personnel sur la faisabilité de traiter des transactions avec un système de type kv store.

Partie 2 : Transactions et équilibrage de charge

Soit un produit Pi de clé i, représenté par le couple (i, quantité). On considère un stock de produits (P1 à P1000) répartis dans N bases (stores S1 à SN). Une transaction Ti incrémente la quantité du produit Pi. On considère une application A(i) qui itère 1000 fois. Chaque itération consiste à exécuter une transaction Ti. L'application Ai mesure accessoirement le temps de réponse moyen de Ti.

Etape 1: Etat initial

Les produits sont répartis entre les stores, par hachage de la clé. Le store Sy contient les produits Pi tels que h(i)=y. On considère C transactions simultanées et indépendantes (chaque transaction accède à une donnée différente). Soit Ky l'ensemble des clés k présentes dans Sy (telles que h(k)=y).

On a C applications A(k1) à A(kC) qui accèdent à des données de S1 (telles que ki appartient à K1 quel que soit i dans [1, C]). Mesurer le temps de réponse moyen pour différentes valeurs de C allant de 1 à 10. Que pouvez vous dire de l'augmentation du temps de réponse en fonction de C ?

On considère 5 applis A(a1) à A(a5) accédant à des données de S1 (tous les ai appartiennent à K1), et 5 applis A(b1) à A(b5) accédant à des données de S2 (tous les bi appartiennent à K2). Mesurer le temps de réponse moyen obtenu. Le temps de réponse est-il identique sur S1 et S2 ? Obtient-on un temps de réponse proche du cas C=5 de la question précédente ?

Etape 2: Catalogue

Décrire toutes les informations à connaitre pour pouvoir déplacer une donnée de Si vers Sj.

Etape 3: Déplacement

Proposer une solution pour déplacer une ou plusieurs données depuis un store trop chargé vers un store moins chargé.


Accueil, DiversLiens, Anciens projets: Projet2004, Projet2005, Projet2006_2007, Projet2011, Projet2012