Cómo está logrando Amazon la libertad de las bases de datos con AWS

Al conocerse que Amazon está a punto de concluir una iniciativa empresarial de varios años que tiene como fin trasladar los datos de la empresa de las bases de datos de Oracle a Amazon Web Services (AWS), surge esta pregunta: ¿por qué la potencia de venta minorista en línea, que se caracteriza por el uso de tecnologías de vanguardia, no aprovechaba ya la variedad, la escala, la fiabilidad y la rentabilidad de AWS, sobre todo teniendo en cuenta que ambas son parte de la misma empresa?

La primera parte de la respuesta es que Amazon nació mucho antes que AWS, en una era en la que las soluciones de bases de datos monolíticas y locales, como Oracle, seguían teniendo más sentido para almacenar y administrar datos a escala empresarial. Y la segunda es que, aunque esa era ya haya terminado, existen grandes obstáculos para desvincularse de Oracle, como bien saben muchas empresas que desean cambiarse a AWS.

«Si una empresa como Amazon puede mover tantas bases de datos utilizadas por tantos equipos descentralizados y distribuidos por todo el mundo de Oracle a AWS, se trata de algo que realmente está al alcance de casi cualquier empresa».

Thomas Park, Senior Manager of Solution Architecture for Consumer Business Data Technologies, Amazon

  • Acerca de Amazon
  • Amazon se guía por cuatro principios: el enfoque en el cliente en lugar de en la competencia, la pasión por la invención, el compromiso con la excelencia operativa y una visión a largo plazo. Amazon fue pionero en el lanzamiento de algunos productos y servicios, como las reseñas de los clientes, las compras con 1 clic, las recomendaciones personalizadas, Prime, Logística de Amazon, AWS, Kindle Direct Publishing, Kindle, tabletas Fire, Fire TV, Amazon Echo y Alexa.

  • Ventajas
    • Reducción de los costes operativos de las bases de datos en un 50 %
    • Eliminación de la mayor parte de los gastos adicionales de administración de bases de datos y de hardware
    • Disminución de la latencia de los servicios más críticos en un 40 %
  • Servicios de AWS utilizados

Desvincularse de Oracle: es más fácil decirlo que hacerlo

En el caso de Amazon, los obstáculos para abandonar Oracle incluían el tamaño de la flota de la empresa: más de 5000 bases de datos conectadas a una variedad de sistemas no estandarizados, con propiedades y dependencias que no estaban registradas de forma centralizada. También había riesgos relacionados con el personal. Las trayectorias profesionales de muchos empleados de Amazon se centraban en las plataformas de bases de datos de Oracle. ¿Apoyarían plenamente la medida? ¿Se marcharían algunos?

Muchas otras empresas que desean cambiar de Oracle a AWS se enfrentan a desafíos similares. Al igual que esas otras empresas, Amazon tenía motivos urgentes para hacer que el proceso funcionara. Los ingenieros de Amazon perdían demasiado tiempo en procesos de administración, aprovisionamiento y planificación de la capacidad de bases de datos complicados y propensos a errores. La fuerte trayectoria de crecimiento de la empresa, y el marcado aumento del rendimiento, requirieron cada vez más particiones de bases de datos de Oracle, con todos los gastos adicionales de operaciones y mantenimiento que ello conllevaba. A lo que se sumaban los costes regulares de Oracle, los cuales aumentarían los millones de dólares que Amazon ya estaba pagando por su licencia, un asombroso 10 % anual.

«Estábamos en la misma situación que muchas empresas», afirma Thomas Park, Senior Manager of Solutions Architecture for Consumer Business Data Technologies en Amazon.com, quien ayudó a dirigir el proyecto de migración. «Oracle fue la razón principal y el mayor obstáculo para cambiarnos a AWS».

Eso sucedía entonces. En la actualidad, Amazon está a punto de completar la migración de unos 50 petabytes de datos y cerrar la última de esas 5000 bases de datos de Oracle. ¿Cómo llevó a cabo la empresa esta migración masiva?

Gestión del cambio cultural y la complejidad técnica

Amazon se enfrentó a dos desafíos clave durante la migración. Uno era cómo abordar la gestión de programas a gran escala necesaria para motivar a sus diversos equipos distribuidos por todo el mundo para aceptar el proyecto y hacer un seguimiento de su progreso. El otro era la complejidad técnica de la migración. Para que el proyecto tuviera éxito, estaba claro que las líneas de negocio de la empresa necesitarían coordinación, formación y asistencia técnica centralizadas.

Para superar estos desafíos, Amazon comenzó por crear una oficina de administración del programa (PMO) empresarial, que establecía requisitos de rendimiento claros, así como revisiones semanales, mensuales y trimestrales con cada equipo de servicio para hacer un seguimiento e informar del progreso y el estado del programa.

«Al establecer el programa, tuvimos que definir claramente qué intentábamos lograr y por qué, antes de abordar el “cómo”», afirma Dave George, Director of Consumer Business Data Technologies de Amazon. «Una vez que establecimos el “qué” y el “por qué”, fijamos objetivos claros con el patrocinio activo de los ejecutivos. Este patrocinio garantizó que nuestros numerosos equipos tecnológicos distribuidos tuvieran un enfoque claro e inequívoco y se comprometieran a cumplir estos objetivos. El incesante enfoque en la entrega garantizó que se minimizaran las interrupciones en otras prioridades empresariales y, al mismo tiempo, se logró una importante actualización de la arquitectura de los sistemas principales».

También fue clave para el éxito del proyecto un equipo técnico central de AWS formado por arquitectos de soluciones e ingenieros de bases de datos con experiencia. Este equipo hizo recomendaciones sobre qué servicios de AWS serían los más adecuados para cada categoría de datos de Amazon que se migraran desde Oracle, entre los que se incluyen los siguientes:

  • Amazon DynamoDB: se recomienda para servicios críticos que requieren alta disponibilidad, esquemas mutantes y una latencia uniforme de milisegundos de un solo dígito a escala.
  • Amazon Aurora: se recomienda para servicios con esquemas estables que requieren alta disponibilidad y una integridad referencial sólida.
  • Amazon Simple Storage Service (Amazon S3): se recomienda para el almacenamiento económico y a largo plazo de datos relacionales y no relacionales.
  • Amazon Relational Database Service (Amazon RDS) para PostgreSQL o MySQL: se recomienda para servicios no críticos y para facilitar la configuración, el funcionamiento y el escalado.
  • AWS Database Migration Service (AWS DMS): permite migrar bases de datos a AWS de manera rápida y segura. La base de datos de origen permanece totalmente operativa durante la migración, lo que minimiza el tiempo de inactividad de las aplicaciones que dependen de ella. DMS puede migrar datos desde y a las bases de datos comerciales y de código abierto más usadas.
  • La Herramienta de conversión de esquemas de AWS (AWS SCT) hace que las migraciones de bases de datos heterogéneas sean predecibles mediante la conversión automática del esquema de la base de datos de origen y de la mayoría de los objetos de código de la base de datos, incluidos los procedimientos almacenados, las vistas y las funciones, en un formato compatible con la base de datos de destino.

Este equipo también impartió formación formal sobre servicios específicos de AWS, organizó laboratorios prácticos, ofreció consultas individuales y coordinó la asistencia directa de los equipos de productos de AWS para las empresas de Amazon que se enfrentaban a desafíos específicos.

«Contar con este equipo central compuesto por arquitectos de soluciones e ingenieros de bases de datos con experiencia fue crucial para el éxito del proyecto», afirma Park. «El equipo no solo ayudó a formar a los equipos empresariales de Amazon, sino que también proporcionó comentarios y solicitudes de características que hicieron que los servicios de AWS fueran aún más sólidos para todos los clientes».

Amazon también reflexionó detenidamente sobre la mejor manera de ayudar a sus administradores de bases de datos de Oracle a hacer la transición a las nuevas trayectorias profesionales que se les abrían. Una opción era ayudarles a adquirir las habilidades necesarias para convertirse en arquitectos de soluciones de AWS. Otra era un rol de administración en el que la experiencia en Oracle sería útil durante el proceso continuo de unión de los entornos tradicionales basados en Oracle y los entornos de la nube de AWS.

Libertad de bases de datos en AWS

La migración a AWS ha reducido los costes operativos anuales de las bases de datos de Amazon en más de la mitad, a pesar de haber aprovisionado una mayor capacidad después del traslado. Los gastos adicionales de administración de bases de datos y de hardware se han reducido considerablemente, y la asignación de costes entre los equipos es mucho más simple que antes. La mayoría de los servicios que se redefinieron en Amazon DynamoDB, normalmente los servicios más críticos, que requieren alta disponibilidad y una latencia de milisegundos de un solo dígito a escala, experimentaron una reducción del 40 % en la latencia, a pesar de que ahora gestionan el doble del volumen de transacciones. Durante la migración, los equipos de servicio también aprovecharon la oportunidad para estabilizar aún más los servicios, eliminar la deuda técnica y documentar completamente todo el código y las dependencias.

Al reflexionar sobre el alcance del proyecto, una migración que afectó a 800 servicios, miles de microservicios, decenas de miles de empleados y millones de clientes, y que supuso para Amazon una huella de bases de datos de AWS superior a la del 90 % de los demás clientes de AWS, Amazon.com lo ve como un ejemplo a seguir para otras grandes empresas que estén pensando en adoptar una medida similar.

«Nadie involucrado en este proyecto de migración diría que fue sencillo, fácil o divertido, pero tampoco requiere superpoderes. Si una empresa como Amazon puede migrar tantas bases de datos descentralizadas y distribuidas por todo el mundo de Oracle a AWS, se trata de algo que realmente está al alcance de casi cualquier empresa».


Más información

Más información sobre Amazon DynamoDB.