¿Está retando MongoDB a Oracle?

Todos sabemos que Oracle domina el mercado de bases de datos sin embargo el mundo del negocio va cambiando rápida y constantemente. Cada vez aparecen nuevos requisitos, funcionalidades, necesidades… que las bases de datos relacionales no pueden cubrir. Y han empezado a surgir también nuevas alternativas como MongoDB para pequeñas empresas y también no tan pequeñas. Este artículo trata sobre un caso de éxito de Telefónica con la colaboración de MongoDB.

Contexto

Telefónica es una de las cinco mejores compañías en telecomunicación mundial, opera en 7 países europeos,  15 en Latinoamérica y  también con presencia en Estados Unidos.

El departamento de I+D es el encargado del desarrollo de servicios y productos, investigación, estrategia tecnológica, user experience… Y por lo tanto también se encarga de todo lo relacionado con bases de datos.

Primer problema – Irlanda

Irlanda requería de un nuevo modelo SQL Oracle de datos capaz de integrar diferentes servicios, usuarios, perfiles. Telefónica ofreció una solución SQL sin embargo tenía problemas de integración, batch problems y  un rendimiento nefasto (más de 24h para cargar el Data Warehouse entero). En consecuencia Irlanda denegó la solución proporcionada por Telefónica.

Telefónica lo intentó de nuevo y aunque mejoraron los procesos Batch de las bases de datos seguía teniendo unos tiempos enormes e Irlanda volvió a denegar la solución. Sin embargo, la tercera versión ofrecida por la empresa de telecomunicación fue un éxito, siguieron mejorando los procesos batch e Irlanda finalmente aceptó la solución ofrecida.

Segundo problema – Reino Unido

El siguiente país a mejorar su modelo de datos era el Reino Unido. Telefónica utilizó la misma solución que le dió éxito en Irlanda y les funcionó. La siguiente tabla muestra una comparativa de rendimiento en tiempo y el tamaño de las bases de datos en cada país.

Imagen

Tercer problema – México

El siguiente país a implantar la solución era México, sin embargo dado la gran cantidad de datos a tratar (más de 20 millones de clientes) se veía claramente que la solución SQL de Oracle era inviable.

Solución NoSQL – MongoDB

La gran empresa de telecomunicaciones no podía echarse atrás ya que si desistía en México, perdería credibilidad y la oportunidad de mantener como clientes a los demás países Latinoamericanos.

En ese momento se cambia de estrategia y se decide utilizar como base de datos MongoDB en lugar de Oracle. Se modifica el modelo datos ya que se basa en MongoDB y se prueba con éxito en Irlanda y Reino Unido con éxito. El rendimiento es increíble en comparación con la solución SQL de Oracle y se decide utilizar también en México. La siguiente tabla muestra la comparación entre la versión de MongoDB (NoSQL) y la versión de Oracle (SQL):

 Imagen

Conclusión

¿Es mejor MongoDB (NoSQL) que Oracle (SQL)? La respuesta  es no. Como ya comenté en un artículo anterior, cada base de datos se creó para solucionar  un tipo de problema específico En este caso particular MongoDB es la solución. Este problema estaba asociado básicamente a grandes cantidades de datos y datos no estructurados, características idóneas para bases de datos NoSQL como MongoDB.

Aún así, no todo es perfecto en el mundo de MongoDB. De la misma manera que las bases relacionales de Oracle, MongoDB tiene sus contras e inconvenientes pero ya se comentará más adelante…

Autor: A. Balagot

Anuncios