RecentChanges
|
FindPage
|
LikePages
|
BackLinks
View Source:
TmeS3
Note:
This page has been locked and cannot be edited.
!!! TME S3 !! Préparation * installer le kit [[http://aws.amazon.com/sdkforjava | AWS pour java]] ** comprendre l'exemple se trouvant dans : aws-java-sdk-1.3.25/samples/~AmazonS3 ** Lire l'[API java|http://docs.amazonwebservices.com/AWSJavaSDK/latest/javadoc/overview-summary.html] de tous les services d'AWS (ou localement dans aws-java-sdk-1.2.12/documentation/javadoc/index.html) * disposer des clés d'accès, envoyées par mail. * configurer l'accès pour se connecter à S3 en passant par le proxy de l'UFR. ** host="proxy" et port=3128 ** voir l'exemple [[http://www-bd.lip6.fr/ens/abdr2011/extra/S3Sample.java| S3Sample.java]] avec le proxy correctement configuré (lignes 26 puis 63 à 67) * Référencer les librairies jar nécessaires pour exécuter les exemples ** Modifier l'environnement linux: *** copier le fichier [config-java-classpath |http://www-bd.lip6.fr/ens/abdr2011/extra/config-java-classpath] dans le répertoire de travail contenant les exemples. *** source config-java-classpath ** dans Eclipse: aller dans les propriétés du projet, puis ''java build path'', puis ''add external jar''. Ajouter tous les jars se trouvant dans tous les sous-dossiers de third-party ainsi que tous les jars se trouvant dans le dossier lib. !!Exercice 1 * Proposer des éléments de solution pour stocker dans S3 les données suivantes : ** une relation quelconque (l'équivalent d'une table SQL) ** un réseau d'amis ** un flux de données RSS * Illustrer l'utilisation de S3 pour gérer le stock des produits d'un magasin : ** Magasin(magasinID, produitID, quantité) !!Exercice 2 : Cohérence des données * Mettre en évidence des situations d'accès incohérent aux données. ** lecture d'un état obsolète de la donnée. ** perte d'écriture lorsque 2 utilisateurs modifient la même donnée en même temps. * Illustrer en montrant l'accès à l'objet (magasinID=i, produitID=1, quantité=100) Chaque étudiant choisit un numéro de magasin différent. La modification consiste à ajouter 1 à la quantité. La séquence est : lire l'objet, modifier la quantité, écrire l'objet modifié). Chronométrer la durée pour répéter N fois la séquence d'opératiosn. Vérifier à la fin de l'exécution que la quantité restante est exacte. !!Exercice 3 : Comparaison S3 / SimpleDB Comparer le niveau de cohérence proposé par S3 avec ceux proposées par le service SimpleDB * Télécharger l'exemple [[http://www-bd.lip6.fr/ens/abdr2011/extra/SimpleDBSample.java| SimpleDB.java]], puis adapter l'exemple (le domaine à utiliser s'appelle __Test__) pour montrer que SimpleDB offre davantage de cohérence ** Remarque, vous avez les droits pour lire et écrire des données dans le domaine nommé Test, mais vous n'avez pas les droits pour créer un domaine ni lister les domaines existants. ** Lire la notice d'utilisation des lectures et écritures cohérentes : [SimpleDB Consistency Enhancements|http://aws.amazon.com/articles/3572] !!Documentation * Le [[http://docs.amazonwebservices.com/AmazonS3/latest/dev/| guide de développement]] pour S3, en anglais * les [[http://docs.amazonwebservices.com/AmazonS3/latest/dev/index.html?Introduction.html#CoreConcepts | concepts principaux]] de S3 * Lecture/modification conditionnelle de données : [SimpleDB Consistency Enhancements|http://aws.amazon.com/articles/3572] * Lire l'[API java|http://docs.amazonwebservices.com/AWSJavaSDK/latest/javadoc/overview-summary.html] de tous les services AWS. ---- retour vers l'[Accueil], LesTme