Configuration, sauvegarde et basculement de la base de données
De nombreuses applications web contiennent une certaine forme de permanence, généralement sous la forme d'une base de données
Tableau 1 - Solutions de bases de données relationnelles et non relationnelles
Solutions de bases de données relationnelles | Solutions NoSQL | |
---|---|---|
Service de base de données gérée |
Amazon RDS for MySQL |
Amazon DynamoDB |
Auto-gérée | Hébergement d'un système de gestion d'une base de données relationnelle (SGBD) sur une instance Amazon EC2 |
Hébergement d'une solution de base de données non relationnelle sur une instance EC2 |
Amazon RDS
Amazon Relational Database Service
Les déploiements multi-AZ Amazon RDS augmentent la disponibilité de votre base de données et protègent votre base de données contre les pannes imprévues. Les réplicas en lecture Amazon RDS fournissent des réplicas en lecture seule de votre base de données, afin que vous puissiez augmenter la capacité de déploiement d'une base de données unique pour les charges de travail de base de données à lecture intensive. Comme pour tous les services AWS, aucun investissement initial n'est requis et vous ne payez que pour les ressources que vous utilisez.
Hébergement d'un système de gestion de base de données relationnelle (SGBDR) sur une instance Amazon EC2
Outre l'offre Amazon RDS gérée, vous pouvez installer le SGBDR de votre choix (tel que MySQL, Oracle, SQL Server ou DB2) sur une instance EC2 et le gérer vous-même. Les clients AWS hébergeant une base de données sur Amazon EC2 utilisent avec succès divers modèles primaires/de sauvegarde et de réplication, notamment la mise en miroir pour les copies en lecture seule et l'envoi de journaux pour les esclaves passifs toujours prêts.
Lorsque vous gérez votre propre logiciel de base de données directement sur Amazon EC2, vous devez également prendre en compte la disponibilité d'un stockage permanent et tolérant aux pannes. À cette fin, nous recommandons que les bases de données exécutées sur Amazon EC2 utilisent des volumes Amazon Elastic Block Store
Pour les instances EC2 exécutant une base de données, vous devez placer toutes les données et tous les journaux de base de données sur des volumes EBS. Ils restent disponibles même en cas de défaillance de l'hôte de la base de données. Cette configuration permet un scénario de basculement simple, dans lequel une nouvelle instance EC2 peut être lancée en cas de défaillance d'un hôte, et les volumes EBS existants peuvent être attachés à la nouvelle instance. La base de données peut alors reprendre là où elle s'est arrêtée.
Les volumes EBS fournissent automatiquement une redondance au sein de la zone de disponibilité. Si les performances d'un seul volume EBS ne sont pas suffisantes pour les besoins de vos bases de données, les volumes peuvent être agrégés par bandes pour augmenter les performances des opérations d'entrée/sortie par seconde (IOPS) de votre base de données.
Pour les charges de travail exigeantes, vous pouvez également utiliser des IOPS provisionnés EBS, où vous spécifiez les IOPS requis. Si vous utilisez Amazon RDS, le service gère son propre stockage afin que vous puissiez vous concentrer sur la gestion de vos données.
Bases de données non relationnelles
Outre la prise en charge des bases de données relationnelles, AWS propose également un certain nombre de bases de données non relationnelles gérées :
-
Amazon DynamoDB
est un service de base de données NoSQL entièrement géré, offrant des performances exceptionnelles et prévisibles en termes de capacité de mise à l'échelle transparente. À l'aide de la AWS Management Console ou de l'API DynamoDB, vous pouvez augmenter ou diminuer la capacité sans temps d'arrêt ni dégradation des performances. Puisque DynamoDB s'occupe des charges administratives liées au fonctionnement et à la mise à l'échelle des bases de données distribuées vers AWS, vous n'avez pas à vous soucier de l'approvisionnement, du paramétrage et de la configuration du matériel, de la réplication, ni des correctifs logiciels ou de la mise à l'échelle des clusters. -
Amazon DocumentDB
(compatible avec MongoDB ) est un service de base de données qui est spécifiquement conçu pour la gestion des données JSON à grande échelle, entièrement géré et intégré à AWS et représente une solution professionnelle avec une durabilité élevée. -
Amazon Keyspaces
(pour Apache Cassandra ) est un service de base de données évolutif, hautement disponible et géré, compatible avec Apache Cassandra. Avec Amazon Keyspaces, vous pouvez exécuter vos charges de travail Cassandra sur AWS à l'aide du même code d'application Cassandra et des mêmes outils pour développeur que ceux que vous utilisez aujourd'hui. -
Amazon Neptune
est un service de base de données orientée graphe fiable, rapide et entièrement géré qui facilite la création et l'exécution d'applications utilisant des jeux de données hautement connectés. Le cœur d'Amazon Neptune est un moteur de base de données orientée graphe haute performance optimisé pour stocker des milliards de relations et interroger le graphique avec une latence de quelques millisecondes. -
Amazon Quantum Ledger Database (Amazon QLDB)
est une base de données de registre entièrement gérée qui fournit un journal de transaction transparent, inaltérable et vérifiable par chiffrement appartenant à une autorité de confiance. QLDB peut être utilisé pour suivre chaque modification de données d'application et maintient un historique complet et vérifiable des modifications au fil du temps. -
Amazon Timestream
est un service de base de données de séries temporelles rapide, évolutif et sans serveur pour l'IoT et les applications opérationnelles. Il facilite le stockage et l'analyse de milliers de milliards d'événements par jour, jusqu'à 1 000 fois plus rapidement que les bases de données relationnelles et pour un dixième du coût.
En outre, vous pouvez utiliser Amazon EC2 pour héberger d'autres technologies de base de données non relationnelles avec lesquelles vous êtes susceptible de travailler.