El pasado mes de julio María Bermejo Corrales, estudiante del Master Universitario en Ingeniería de Telecomunicación de la Universidad de Extremadura, defendió su trabajo de fin de master (TFM) realizado en colaboración con el Centro Extremeño de Tecnologías Avanzadas (CETA-Ciemat). El TFM, dirigido por el Dr. Juan Antonio Gomez Pulido (Universidad de Extremadura) y codirigido por Miguel Ángel Díaz Corchero (CETA-Ciemat) presenta una novedosa temática aplicable al tan emergente mundo del Big Data y el Cloud Computing.
El trabajo, con título "Desarrollo de un sistema de autoescalado dinámico de base de datos distribuida MongoDB sobre una plataforma cloud OpenStack", consta del análisis, diseño e implementación de una sistema piloto que escala o incrementa el espacio disponible de un tipo de base de datos comúnmente utilizada para Big Data, MongoDB. Teniendo en cuenta el almacenamiento de la base de datos y los recursos que se están usando en un determinado momento, se procederá al escalado de ésta para así evitar su saturación y mejorar su disponibilidad y rendimiento en tiempo de ejecución.
La base de datos MongoDB será cargada progresivamente para trabajar en una situación lo más real posible, forzando las desafortunadas situaciones que se encuentran los administradores, en este caso haciendo hincapié en la saturación del almacenamiento. A su vez, una de las ventajas de MongoDB es su facilidad de escalado horizontal empleando un método de almacenaje (Sharding) que reparte los datos por los diferentes servidores que se tengan configurados en la infraestructura. Considerando las características de almacenamiento de MongoDB, el nuevo sistema desarrollado monitorea continuamente la base de datos controlando el crecimiento de disco usado entre los diferentes servidores para así ampliar los recursos en el instante preciso y en tiempo de ejecución.
El sistema de escalado automático se realiza bajo el entorno cloud OpenStack. Gracias a las capacidades de disponibilidad de recursos virtualizados y la completa interfaz de programación de aplicaciones (API) que ofrece OpenStack se pueden levantar servidores virtuales bajo demanda y adaptar dichos servidores virtuales a la configuración deseada. Los nuevos servidores virtuales desplegados pasarán a integrarse como servidores de almacenamiento del propio MongoDB, aumentando así las capacidades de la base de datos. La integración de los nuevos servidores se realiza en tiempo de ejecución y sin parada de la base de datos, sin penalizar en ningún momento la calidad de servicio.
Cabe destacar que la integración de nuevos servidores en la base de datos se realiza agregando nuevos conjuntos de servidores (replica-sets) para poder replicar los datos y así mantener el nivel de redundancia de datos deseado evitando desastres futuros provocados por algún fallo inesperado. En la fase de desarrollo y experimentación se ha usado la infraestructura OpenStack del CETA-Ciemat, donde se ha creado la base de datos llegándose a escalar hasta un 400% en las fases más maduras del trabajo.
El análisis y diseño resultante, junto con la experimentación, ha sido un reto muy ambicioso para las tecnologías de Big Data y Cloud Computing y ha aportado beneficios substanciales al Big Data. Es por ello que el análisis y el diseño obtenidos en este TFM han sido enviados a un congreso internacional de Cloud Computing con el objetivo de obtener su publicación y divulgación correspondiente.
Fuente: CIEMAT