MercadoLibre aprovecha la nube y plataformas abiertas para seguir creciendo
La capacidad requerida para gestionar a más de 23 millones de usuarios, más los que se acumulen, no sería posible si no se hubieran montado a la nube hace tres años.
Desde sus inicios en 1999, hace unos catorce años, MercadoLibre se posicionó como una compañía de operaciones basadas en internet. Sin embargo, la infraestructura de entonces ya se ve obsoleta ante los retos de negocio que se presentan con el actual entorno tecnológico, en donde conceptos como “análisis de grandes volúmenes de datos” y “aplicaciones móviles” son el pan de cada día.
De origen argentino, MercadoLibre se ha convertido en uno de los principales sitios de comercio electrónico en América Latina, gestionando transacciones de unos 23 millones de usuarios activos a través de más de seis mil servidores. Esto implica una enorme cantidad de datos críticos (entre cuentas de acceso y datos financieros) que se transfieren diariamente. ¿Cómo gestionan las operaciones sin impactar la infraestructura del negocio?
De acuerdo con Daniel Rabinovich, CTO y vicepresidente senior de producto para MercadoLibre en toda la región, parte del secreto radica en la virtualización de sus centros de datos, los cuales operan de manera automatizada, sin necesidad de la presencia física del personal. Los más de 400 empleados de TI se distribuyen en las oficinas de Latinoamérica dentro de un esquema de plataforma abierta que les ofrece funcionalidad y flexibilidad de crecimiento.
Sin embargo, tal vez el ingrediente más importante de este ‘secreto’ radica en la previsión. A diez años de su lanzamiento, aún con capacidad suficiente para gestionar su negocio, MercadoLibre vislumbró el camino que debía andar para mantenerse a la delantera. Ello implicaba cambiar toda su plataforma, de una visión cerrada y monolítica a un ambiente abierto y desacoplado, en un esfuerzo organizacional que absorbió todos sus recursos de TI durante el 2010. “Fue duro porque todo ese año no trabajamos [en proyectos visibles] en nuestro sitio y pasé mucho tiempo trabajando con los desarrolladores”, contó el CTO.
“Generalmente –agregó Rabinovich– ese tipo de proyectos se hacen cuando las empresas necesitan un cambio, pero nosotros estábamos bien; simplemente vimos que era necesario hacerlo para el futuro. Evaluamos ejemplos de plataformas abiertas que usan otras empresas online como Facebook, Amazon, Instagram, etc. Vimos que para cambiar la plataforma teníamos que cambiar todo. En ese momento no era urgente para nosotros, pero entendimos que no estaríamos listos para seguir creciendo hasta el 2020.”
Un vistazo al proyecto:
La renovación tecnológica de MercadoLibre implicó la reconstrucción desde cero de su plataforma, con la innovación en mente. La nueva versión permite realizar operaciones dentro y fuera de la plataforma (On and Off). Se desarrollaron aplicaciones móviles y se está trabajando en la oferta vertical y el sistema de entregas, así como en la colaboración de los DevOps en una plataforma abierta.
Esta profunda transformación se realizó sin atajos. Hubo que reescribir toda la plataforma para migrar de un sitio web hacia un entorno abierto en la nube, con una API común, que hoy permite la colaboración de desarrolladores externos. En suma, el proyecto implicó la renovación de la página, la optimización del motor de búsqueda, características de visualización más atractivas y un sistema de registro más amable para el usuario. Un cambio radical, pero oportuno, en palabras del CTO, quien opina que “es mejor abrazar el cambio antes de que te toque a la puerta”.
La nube privada como apoyo para enfrentar el crecimiento de servidores
Desde su lanzamiento, MercadoLibre ha crecido continuamente su granja de servidores. Debido a que la empresa había comenzado con Oracle DB para ejecutar sus bases de datos, buscabaa otras ofertas de Oracle para decidir si la respuesta a su rápido crecimiento sería un sistema de computación en nube privada.
De acuerdo con una nota publicada por ITKnowledgeExchange en octubre de 2009, el departamento de TI estaba demasiado ocupado y el espacio del centro de datos se había convertido en un problema. MercadoLibre ha crecido hasta incluir a 37 millones de usuarios registrados. En última instancia, la empresa optó por virtualizar sus servidores 400 con Oracle VM, cambiar a Oracle Unbreakable Linux y hacer uso del módulo de administración complementaria y plantillas.
Rodrigo Benzaquen, entonces director de operaciones e infraestructura, dijo que la compañía ya tenía una buena relación con Oracle y querían hacer todo lo posible con productos de código abierto. "Tenemos muchos servidores lógicos y no sabemos dónde están corriendo. Pero si un servidor Oracle VM muere, automáticamente se mueve a otro servidor físico."
Con cuatro servidores blade corriendo una nube privada, la compañía ha visto una reducción en los gastos de 4 a 1 en espacio, energía y refrigeración, y una compresión de 50 a 1 en el uso de almacenamiento.
Ahora, MercadoLibre aprovecha la escalabilidad de una nube privada donde los servidores virtuales pueden adecuarse de manera instantánea a la demanda. En ese momento fue cuando consideraron el uso de Hadoop. Inspirado por marco MapReduce de Google, Apache Hadoop es una plataforma de computación distribuida popular para aplicaciones de uso intensivo de datos.
En este sentido, Daniel Rabinovich apuntó: “Hoy con Hadoop podemos analizar muchos datos y sacar provecho de ellos para alimentar nuestro sitio; hablamos de billones de filas que se pueden procesar y esto no podría hacerse en términos de hardware, sino en la nube. De ahí que adoptáramos Hadoop y Cloudera, para manejar grandes volúmenes de datos.”
Plataforma de puertas abiertas, con OpenStack
El corazón del ambiente de almacenamiento de datos de MercadoLibre alberga un repositorio de objetos (object store) diseñado para manejar petabytes de datos, basado en la tecnología OpenStack Object Storage, también conocida como “Swift”. Esta tecnología utiliza servidores sobre demanda para almacenar a largo plazo datos normalmente estáticos, como documentos e imágenes fotográficas, según se explica en una nota publicada por SearchCloudStorage.
La estructura de OpenStack implementada por MercadoLibre asegura que cada uno de los dos centros de datos de la empresa tendrá por lo menos una copia de cada objeto. Cada nodo de datos puede tener su propio disco de bajo costo, por lo que la inversión no es onerosa. Los centros de datos de MercadoLibre se encuentran en Virginia, Estados Unidos, para reducir la latencia, ya que la mayoría de las peticiones de los usuarios pasan a través de proveedores de servicios de internet con sede en E.U.
En palabras del CTO de la compañía, OpenStack es fundamental. “Fue la estrategia que nos permitió realizar el proyecto de abrir la plataforma y crecer el equipo de TI interno; podemos crecer tanto porque los equipos trabajan de manera independiente, todos crean su propio software”, dijo Rabinovich.
Esto les ha permitido abrir su plataforma a desarrollos que, de otra manera, el equipo de TI interno tal vez no podría concretar. Como parte de esta estrategia, la compañía actualmente mantiene un programa para desarrolladores (DevOps) mediante el cual les ofrece una exploración de sus API, aprendizaje y colaboración.
Sobre la protección de datos y otros proyectos
Gestionar la información de millones de usuarios es una gran responsabilidad. En este sentido, MercadoLibre se ha certificado con PCI y todas las normas de pago importantes, de acuerdo con Daniel Rabinovich. “Es algo que tenemos que cumplir y certificarnos año con año; creo que la mejor manera de estar seguro es preguntarle a los que tienen los estándares y luego pedirles que te auditen”, opinó.
Y al parecer les está dando resultado. La compañía mantiene un crecimiento anual sostenido de alrededor de 30% y sigue a la escucha del mercado. El pasado 5 de octubre, liberaron un proyecto para dispositivos móviles, el cual permite a los usuarios descargar una app y realizar sus transacciones desde sus tabletas o smartphones. “Pasamos de no tener nada en móviles a tener 7% de transacciones desde estos dispositivos; se habla de una cifra superior a los $5,400 millones de dólares” como resultado de estas transacciones, explicó el CTO. Añadió que la cifra de operaciones móviles en México es la mayor de la región.
Finalmente, Rabinovich aconseja a sus colegas estar prestos a cambiar antes de que la necesidad se los imponga. “Hagan el cambio cuando la organización esté bien, porque son cambios profundos y tomarán tiempo, así que es mejor hacerlo cuando la necesidad aún no aprieta”, dijo. Agregó que si MercadoLibre hubiese esperado a tener la presión encima, seguramente habrían enfrentado un escenario arduo, lidiando con proveedores para tratar de sacar el proyecto a tiempo.