Amazon libère ses bases de données avec AWS

Lorsque les gens apprennent qu'Amazon est sur le point de conclure une initiative pluriannuelle au niveau de l'entreprise visant à transférer les données de l'entreprise des bases de données Oracle vers Amazon Web Services (AWS), ils peuvent se poser la question suivante : pourquoi le géant du commerce en ligne, connu pour son utilisation de technologies de pointe, ne tire-t-il pas déjà parti de la diversité, de la mise à l'échelle, de la fiabilité et de la rentabilité d'AWS, d'autant plus que les deux entités font partie de la même entreprise ?

La première partie de la réponse est qu'Amazon a été créée bien avant AWS, à une époque où les solutions de base de données monolithiques sur site comme Oracle étaient encore les plus judicieuses pour le stockage et la gestion des données à l'échelle de l'entreprise. Ensuite, même si cette époque est révolue, de nombreux obstacles s'opposent à la sortie d'Oracle, comme le savent trop bien de nombreuses entreprises qui souhaitent passer à AWS.

« Si une entreprise comme Amazon peut migrer d'Oracle vers AWS autant de bases de données utilisées par autant d'équipes décentralisées et réparties dans le monde entier, alors cette tâche est vraiment à la portée de pratiquement toutes les entreprises. »

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

  • À propos d'Amazon
  • Amazon s'appuie sur quatre principes : l'obsession client plutôt que la fixation sur la concurrence, la passion pour l'invention, l'engagement pour l'excellence opérationnelle et la vision à long terme. Voici quelques exemples de produits et services lancés par Amazon : les commentaires des clients, les achats en un clic, les recommandations personnalisées, Prime, les expéditions par Amazon, AWS, Kindle Direct Publishing, Kindle, les tablettes Fire, Fire TV, Amazon Echo et Alexa.

  • Avantages
    • Réduction des coûts d'exploitation des bases de données de 50 %
    • Suppression de la plupart des frais liés à l'administration des bases de données et à la gestion du matériel
    • Réduction de la latence de la plupart des services critiques de 40 %
  • Services AWS utilisés

Sortir d'Oracle : plus facile à dire qu'à faire

Dans le cas d'Amazon, les obstacles à la sortie d'Oracle incluaient notamment la taille de la flotte de l'entreprise : plus de 5 000 bases de données connectées à divers systèmes non standardisés, dont les propriétaires et les dépendances n'étaient pas inventoriés de manière centralisée. Il y avait également des risques liés au personnel. La carrière de nombreux employés d'Amazon était basée sur les plateformes de base de données Oracle. Soutiendraient-ils pleinement cette initiative ? Certains partiraient-ils ?

Les nombreuses autres entreprises qui souhaitent migrer d'Oracle vers AWS sont confrontées à des défis similaires. Tout comme ces entreprises, Amazon avait des raisons urgentes d'atteindre son objectif. Les ingénieurs d'Amazon perdaient trop de temps sur les tâches liées à la gestion des bases de données complexes et sujettes aux erreurs, à la mise en service et à la planification des capacités. La forte trajectoire de croissance de l'entreprise et la forte augmentation du débit ont nécessité de plus en plus de partitions de bases de données Oracle, avec toutes les surcharges d'exploitation et de maintenance que cela implique. Et puis il y a eu les coûts : continuer comme si de rien n'était avec Oracle augmenterait les millions de dollars qu'Amazon payait déjà pour sa licence, soit une augmentation ahurissante de 10 % par an.

« La situation était la même pour nous que pour de nombreuses entreprises », explique Thomas Park, senior manager of solutions architecture for Consumer Business Data Technologies chez Amazon.com, qui a aidé à mener le projet de migration. « Oracle était à la fois la principale raison et le principal obstacle à notre migration vers AWS. »

C'était la situation d'Amazon à l'époque. Aujourd'hui, Amazon est sur le point d'achever la migration d'environ 50 pétaoctets de données et de fermer la dernière de ces 5 000 bases de données Oracle. Comment l'entreprise a-t-elle réussi cette migration massive ?

Gérer le changement de culture et la complexité technique

Amazon a fait face à deux défis majeurs lors de la migration. L'un d'eux était de savoir comment aborder la gestion de programme à grande échelle nécessaire pour motiver ses équipes diversifiées et réparties dans le monde entier à adopter le projet et à suivre ses progrès. L'autre était la complexité technique de la migration. Pour que le projet aboutisse, il était clair que les secteurs d'activité de l'entreprise auraient besoin d'une coordination, d'une formation et d'un soutien technique centralisés.

Pour surmonter ces défis, Amazon a commencé par créer un bureau de gestion des projets (PMO, Program Management Office) d'entreprise, qui a défini des exigences de performance claires et établi des évaluations hebdomadaires, mensuelles et trimestrielles avec chaque équipe de service afin de suivre et de signaler les progrès et l'état du programme.

« Lors de l'instauration du programme, nous avons dû définir clairement ce que nous essayions de réaliser et pourquoi, avant de nous pencher sur le “comment” », explique Dave George, director of Consumer Business Data Technologies chez Amazon. « Une fois que nous avons défini le “quoi” et le “pourquoi”, nous avons établi des objectifs clairs avec le parrainage actif de la direction. Ce parrainage a permis à nos nombreuses équipes techniques distribuées de se concentrer sur des objectifs clairs sans ambiguïté et de s'engager à atteindre ces objectifs. L'attention constante portée à la livraison a permis de minimiser les perturbations par rapport aux autres priorités commerciales tout en actualisant considérablement l'architecture des principaux systèmes. »

L'équipe technique principale d'AWS, composée d'architectes de solutions et d'ingénieurs de bases de données expérimentés, a également joué un rôle clé dans la réussite du projet. Cette équipe a formulé des recommandations quant aux services AWS les mieux adaptés à chaque catégorie de données Amazon migrées à partir d'Oracle, notamment :

  • Amazon DynamoDB : recommandé pour les services critiques qui nécessitent une haute disponibilité, des schémas mutants et une latence constante de quelques millisecondes à grande échelle.
  • Amazon Aurora  : recommandé pour les services dotés de schémas stables qui nécessitent une haute disponibilité et une forte intégrité référentielle.
  • Amazon Simple Storage Service (Amazon S3) : recommandé pour le stockage à long terme et peu coûteux de données relationnelles et non relationnelles.
  • Amazon Relational Database Service (Amazon RDS) pour PostgreSQL ou MySQL : recommandé pour les services non critiques et pour la facilité de configuration, d'exploitation et de mise à l'échelle.
  • AWS Database Migration Service (AWS DMS) : permet de migrer des bases de données vers AWS rapidement et en toute sécurité. La base de données source reste pleinement opérationnelle durant la migration, ce qui minimise les temps d'arrêt des applications qui en dépendent. DMS est capable de migrer des données vers et depuis les bases de données commerciales et open source les plus couramment utilisées.
  • AWS Schema Conversion Tool (AWS SCT) : rend les migrations de bases de données hétérogènes prévisibles en convertissant automatiquement le schéma de la base de données source et la majorité des éléments de code de la base de données, notamment les vues, les procédures enregistrées et les fonctions, en un format compatible avec la base de données cible.

Cette équipe a également fourni des instructions formelles sur des services AWS spécifiques, organisé des ateliers pratiques, proposé des consultations individuelles et coordonné l'assistance directe des équipes produit AWS pour les entreprises Amazon confrontées à des défis spécifiques.

« La présence d'architectes de solutions et d'ingénieurs de bases de données expérimentés dans cette équipe centrale a joué un rôle crucial dans la réussite du projet », explique Thomas Park. « L'équipe a non seulement contribué à former les équipes commerciales d'Amazon, mais elle a également fourni des commentaires et des demandes de fonctionnalités qui ont renforcé les services AWS pour tous les clients. »

Amazon a également soigneusement réfléchi à la meilleure façon d'aider ses administrateurs de bases de données Oracle à s'adapter aux nouveaux parcours professionnels qui s'offrent désormais à eux. L'une des options était de les aider à acquérir les compétences nécessaires pour devenir des architectes de solutions AWS. Une autre était un rôle de gestion dans lequel une expérience Oracle serait utile dans le cadre du processus continu de rapprochement entre les environnements Oracle traditionnels et les environnements du cloud AWS.

Database Freedom sur AWS

La migration vers AWS a permis de réduire les coûts annuels d'exploitation des bases de données d'Amazon de plus de moitié, malgré l'augmentation de la capacité mise en place après le transfert. Les frais d'administration de bases de données et de gestion du matériel ont considérablement diminué, et la répartition des coûts entre les équipes est bien plus simple qu'auparavant. La plupart des services qui ont été replatformés vers Amazon DynamoDB (généralement les services les plus critiques qui nécessitent une haute disponibilité et une latence de quelques millisecondes à grande échelle) ont constaté une réduction de 40 % de la latence bien qu'ils gèrent désormais deux fois plus de volumes de transactions. Lors de la migration, les équipes de service ont également profité de l'occasion pour stabiliser davantage les services, éliminer la dette technique et documenter intégralement l'ensemble du code et des dépendances.

En ce qui concerne l'ampleur du projet (à savoir une migration qui a concerné 800 services, des milliers de microservices, des dizaines de milliers d'employés et des millions de clients, et qui s'est traduite par une empreinte de base de données AWS supérieure à celle de 90 % des autres clients AWS), Amazon.com voit cela comme une leçon à tirer pour les autres grandes entreprises qui envisagent une initiative similaire.

« Aucune personne impliquée dans ce projet de migration ne dirait que c'était simple, facile ou amusant, mais ce projet n'a pas non plus nécessité de super-pouvoirs. Si une entreprise comme Amazon peut migrer d'Oracle vers AWS autant de bases de données décentralisées et réparties dans le monde entier, alors cette tâche est vraiment à la portée de pratiquement toutes les entreprises. »


En savoir plus

En savoir plus sur Amazon DynamoDB.