Livemocha est un site d'apprentissage linguistique en ligne proposant des cours gratuits dans plus de 25 langues et pour plus de 3 millions d'utilisateurs dans le monde entier. Livemocha a créé une communauté interactive à travers laquelle des internautes du monde entier peuvent se rencontrer et s'entrainer avec l'aide de locuteurs dont il s'agit de la langue d'origine, ce qui aboutit à une manière naturelle et efficace d'apprendre une langue étrangère.

Avec plus d'1,5 millions de visiteurs par mois, le trafic web de livemocha.com s'est accru à un taux rapide. Afin de suivre et de gérer l'activité d'un utilisateur, l'équipe d'ingénierie livemocha a désigné son architecture de site pour générer les articles de transfert de données pour les actions d'utilisateur. Peu après le lancement, livemocha générait plus de 3 millions d'articles de transferts de données et commençait à connaître une dégradation des performances. Les goulets d'étranglements les plus importants se produisaient avec le SGRBD (système de gestion de base de données), particulièrement la gestion et l'administration du système. Cela devint un travail à plein temps qui consistait à gérer des modifications de schéma, des index de performance, des inserts asynchrones, la reproduction, l'effacement et l'écriture de scripts.

« Nous étions à un carrefour et nous devions chercher une solution qui nous permettrait de stocker, de traiter et de demander facilement des ensembles de données et nous étions efficaces dans le cadre de larges ensembles de données. » dit Krishnan Seshadrinathan, vice président d'Ingénierie à Livemocha. « Nous avons fait des recherches sur les stockages non SGBDR et nous avons choisi Amazon SimpleDB car, non seulement, il satisfaisait à nos objectifs de performance et prend en charge de grands ensembles de données, mais il est également sans schéma et redimensionnable à la demande. »

Alors que l'équipe effectuait la migration vers SimpleDB, il lui est apparu avantageux d'utiliser plusieurs autres services Amazon Web Services. Elle a alors enregistré des événements utilisateur dans Amazon Simple Queue Service (Amazon SQS) et utilisé plusieurs instances Amazon Compute Cloud (Amazon EC2) pour traiter ces événements. Les éléments de flux appropriés ont été stockés et générés dans SimpleDB. Ces éléments de flux sont maintenant stockés en toute sécurité et peuvent facilement être mis à l'échelle en cas de croissance future.

« En migrant vers Amazon SimpleDB, nous avons abaissé le coût de nos ressources de plus de 10 000 USD par mois », rappelle M. Seshadrinathan. « Nos résultats ont été fantastiques et cela a considérablement réduit la complexité de la gestion et des tâches d'administration de ces données. De plus, cela a éliminé les tâches sql d'effacement, complexes, qui fonctionnent chaque jour sur notre système de production, ce qui a entraîné un montant considérable de charge non désirée. En exploitant Amazon SQS et Amazon SimpleDB, nous avons pu rendre beaucoup plus simples nos processus de conception et de gestion. Nous travaillons maintenant à transférer plus de fonctionnalités qui nous permettront d'utiliser au mieux Amazon SimpleDB et les services AWS. »

En plus de gérer de larges ensembles de données utilisateur à transférer, Livemocha dispose d'un un stock croissant d'images, d'éléments audio et de vidéos. « Nous utilisons Amazon Simple Storage Service (Amazon S3) et Amazon CloudFront pour tous nos fichiers multimédias, ce qui nous permet de redimensionner facilement notre stockage à la demande et de mieux contrôler la croissance de notre base de données. » Livemocha a aussi recours à la puissance de calcul d'AWS. « Nous utilisons également Amazon EC2 et Amazon S3 pour traiter et générer des vidéos de leçons. Il s'agit d'un procédé intensif, et chaque génération de leçon prend des heures. En ajustant le nombre de ressources EC2 pendant de brèves périodes, nous sommes capables de réaliser le processus de génération très rapidement », indique M. Seshadrinathan.

L'un dans l'autre, Livemocha a trouvé des services d'assemblage par blocs d'infrastructure AWS Krishnan affirme « En mettant à niveau la plate-forme AWS, nous avons été capable de réduire nos coûts de gestion du système et nous concentrer sur notre commerce principal. »

Pour en savoir plus sur Amazon SimpleDB, consultez la page de présentation du produit à l'adresse : http://aws.amazon.com/simpledb/.

Pour découvrir comment AWS peut vous aider à répondre aux besoins de vos applications Web, consultez notre page consacrée aux applications Web à l'adresse : http://aws.amazon.com/web-mobile-social.