Livemocha es un sitio de aprendizaje de idiomas online con cursos gratuitos de más de 25 idiomas y con tres millones de usuarios repartidos por todo el mundo. Livemocha ha creado una comunidad interactiva en la que personas de todos los rincones del mundo pueden participar y practicar con hablantes nativos, lo que resulta una forma natural y eficaz de aprender un idioma extranjero.

Con más de 1,5 millones de visitantes al mes, el tráfico web de livemocha.com ha experimentado un rápido crecimiento. Para realizar un seguimiento y administrar la actividad de los usuarios, el equipo de ingeniería de Livemocha diseñó la arquitectura de su sitio de modo que cada acción de los usuarios generara una noticia. Al poco tiempo del lanzamiento, la página generaba más de 3 millones de noticias diarias y empezaba a sufrir una degradación en el desempeño. Los principales cuellos de botella se generaban en el sistema de gestión de la base de datos relacional (RDBMS), específicamente, en la gestión y administración del sistema. La gestión de las modificaciones de esquemas, los índices de desempeño, las inserciones asíncronas y la replicación, borrado y escritura de scripts se convirtió en un trabajo a tiempo completo.

“Nos encontrábamos en una encrucijada y teníamos que buscar una solución que nos permitiera almacenar, procesar y consultar conjuntos de datos fácilmente, y que además funcionara bien con grandes conjuntos de datos”, explica Krishnan Seshadrinathan, vicepresidente de ingeniería de Livemocha. “Consideramos diversos almacenes no RDBMS y elegimos Amazon SimpleDB porque cumple nuestros objetivos de desempeño, soporta grandes conjuntos de datos, no tiene esquemas y puede escalarse bajo demanda”.

Cuando el equipo migró a SimpleDB, les resultó beneficioso utilizar varios servicios de Amazon Web Services. Registran los eventos de usuario en Amazon Simple Queue Service (Amazon SQS), utilizan varias instancias de Amazon Compute Cloud (Amazon EC2) para procesar estos eventos y almacenan y generan los elementos de feed adecuados en SimpleDB. Estos elementos de feed ahora se almacenan de forma segura y pueden escalarse fácilmente con el futuro crecimiento.

“Con la migración a Amazon SimpleDB hemos reducido los costos de recursos en más de 10 000 USD al mes”, afirma Krishnan. “Nuestros resultados han sido estupendos y se ha reducido de forma significativa la complejidad de la gestión y administración de estos datos. Además, se han eliminado las complejas tareas de borrado sql que se ejecutan a diario en nuestro sistema de producción y que provocaban una importante carga no deseada. Con la utilización de Amazon SQS y Amazon SimpleDB, hemos hecho que nuestro diseño y nuestra administración sean mucho más sencillos. Ahora estamos trabajando para migrar más funcionalidades para aprovechar Amazon SimpleDB y AWS”.

Además de administrar grandes conjuntos de datos de feed de usuario, Livemocha cuenta con un repositorio en continuo crecimiento de imágenes, audio y video. “Utilizamos Amazon Simple Storage Service (Amazon S3) y Amazon CloudFront para todos nuestros archivos multimedia, lo que nos permite escalar nuestro almacenamiento bajo demanda fácilmente y controlar más de cerca el crecimiento de nuestra base de datos”. Livemocha también utiliza la potencia de cómputo de AWS. “También utilizamos Amazon EC2 y Amazon S3 para procesar y generar lecciones en video. Este proceso es muy exigente, y preparar las lecciones nos lleva horas. Mediante la ampliación y la reducción del número de instancias de Amazon EC2 durante periodos breves de tiempo, podemos completar el proceso de generación en poco tiempo”, comenta Krishnan.

En resumen, Livemocha ha encontrado esenciales para la continuación de su éxito los servicios de creación de infraestructura de AWS. “Con la plataforma AWS hemos sido capaces de reducir los costos de administración del sistema y concentrarnos en nuestro negocio principal”, afirma Krishnan.

Para obtener más información sobre Amazon SimbleDB, visite la página de información de Amazon SimpleDB: http://aws.amazon.com/simpledb/.

Para obtener más información sobre cómo AWS puede ayudarle a satisfacer las necesidades de sus aplicaciones web, visite nuestra página de información sobre aplicaciones web: http://aws.amazon.com/web-mobile-social.