Modernisation des SQL bases de données - AWS Conseils prescriptifs

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Modernisation des SQL bases de données

Présentation

Si vous commencez à moderniser les bases de données existantes en termes d'évolutivité, de performance et d'optimisation des coûts, vous êtes peut-être confronté à des défis liés aux bases de données commerciales telles que SQL Server. Les bases de données commerciales sont coûteuses, bloquent les clients et proposent des conditions de licence punitives. Cette section fournit un aperçu général des options de migration et de modernisation d'un SQL serveur vers des bases de données open source, ainsi que des informations sur le choix de la meilleure option pour votre charge de travail.

Vous pouvez refactoriser les bases de données de votre SQL serveur pour en faire des bases de données open source telles qu'Amazon Aurora Postgre SQL afin de réduire les coûts de licence Windows et SQL Server. Les bases de données modernes basées sur le cloud, telles qu'Aurora, allient la flexibilité et le faible coût des bases de données open source aux fonctionnalités robustes destinées aux entreprises des bases de données commerciales. Si vous avez des charges de travail variables ou des charges de travail mutualisées, vous pouvez également migrer vers Aurora Serverless V2. Cela peut réduire les coûts jusqu'à 90 %, en fonction des caractéristiques de la charge de travail. AWS Il propose également des fonctionnalités telles que Babelfish pour Aurora Postgre SQL, des outils tels que AWS Schema Conversion Tool (AWS SCT) et des services tels que AWS Database Migration Service (AWS DMS) pour simplifier la migration et la modernisation des bases de données du SQL serveur sur. AWS

Offres de bases de données

La migration d'un SQL serveur sous Windows vers une base de données open source telle qu'Amazon AuroraSQL, Amazon RDS for My ou Amazon RDS for Postgre SQL peut permettre de réaliser d'importantes économies sans compromettre les performances ou les fonctionnalités. Éléments à prendre en compte :

  • Le passage de l'édition SQL Server Enterprise sur Amazon EC2 à Amazon RDS for Postgre SQL ou Amazon RDS for My SQL peut permettre de réaliser des économies allant jusqu'à 80 %.

  • Le passage de l'édition SQL Server Enterprise sur Amazon EC2 à Amazon Aurora Postgre SQL -Compatible Edition ou Amazon Aurora My SQL -Compatible Edition peut entraîner des économies de coûts allant jusqu'à 70 %.

Pour les charges de travail de base de données traditionnelles, Amazon RDS for Postgre et SQL Amazon RDS for My SQL répondent aux exigences et fournissent une solution rentable pour les bases de données relationnelles. Aurora ajoute de nombreuses fonctionnalités de disponibilité et de performance auparavant réservées aux fournisseurs commerciaux onéreux. Les fonctionnalités de résilience d'Aurora constituent un coût supplémentaire. Toutefois, par rapport aux fonctionnalités similaires proposées par d'autres fournisseurs commerciaux, les coûts de résilience d'Aurora restent inférieurs à ceux des logiciels commerciaux pour le même type de fonctionnalités. L'architecture Aurora est optimisée pour apporter des améliorations significatives en termes de performances par rapport aux SQL déploiements My SQL et Postgre standard.

Comme Aurora est compatible avec les SQL bases de données open source Postgre SQL et My, la portabilité présente un avantage supplémentaire. Que la meilleure option soit Amazon RDS pour PostgreSQL, Amazon RDS for My ou AuroraSQL, il s'agit de comprendre les exigences de l'entreprise et de mapper les fonctionnalités nécessaires pour trouver la meilleure option.

Comparaison entre Amazon RDS et Aurora

Le tableau suivant résume les principales différences entre Amazon RDS et Amazon Aurora.

Catégorie Amazon RDS pour Postgre SQL ou Amazon RDS pour My SQL Aurora Postgreer SQL ou Aurora My SQL
Performance Bonne performance Performances multipliées par 3 ou plus
Basculement Généralement 60 à 120 secondes* Généralement 30 secondes
Evolutivité

Jusqu'à 5 répliques lues

Retard en secondes

Jusqu'à 15 répliques de lecture

Retard en millisecondes

Stockage Jusqu'à 64 To Jusqu'à 128 To
Stockage HA Multi-AZ avec une ou deux unités de secours, chacune avec copie de base de données 6 copies de données réparties sur 3 zones de disponibilité par défaut
Sauvegarde Sauvegardes quotidiennes des instantanés et des journaux Sauvegarde continue et asynchrone vers Amazon S3
Innovations avec Aurora NA

100 Go

Clonage rapide de bases de données

  Répliques de lecture à mise à l'échelle automatique  
  Gestion de plans de requêtes  
  Aurora sans serveur  
  Répliques interrégionales avec base de données mondiale  
  Gestion du cache du cluster**  
  Requête parallèle  
  Flux d'activité de base de données.  

*Les transactions importantes peuvent augmenter les temps de basculement

**Disponible dans Aurora Postgre SQL

Le tableau suivant indique le coût mensuel estimé des différents services de base de données couverts dans cette section.

Service de base de données Coût USD par mois* AWS Pricing Calculator (nécessite Compte AWS)
Édition Amazon RDS pour SQL Server Enterprise 3 750$ Estimation
Édition standard RDS d'Amazon pour SQL Server 2 318$ Estimation
SQLÉdition Server Enterprise sur Amazon EC2 2 835$ Estimation
SQLÉdition Server Standard sur Amazon EC2 1 345$ Estimation
Amazon RDS pour Postgrer SQL 742$ Estimation
Amazon RDS pour moi SQL 712$ Estimation
Poster Aurora SQL 1 032$ Estimation
Aurora My SQL 1 031$ Estimation

* Le prix du stockage est inclus dans le prix de l'instance. Les coûts sont basés sur la us-east-1 région. Le débit et le IOPS sont des hypothèses. Les calculs concernent les instances r6i.2xlarge et r6g.2xlarge.

Recommandations d'optimisation des coûts

Les migrations de bases de données hétérogènes nécessitent généralement la conversion du schéma de base de données du moteur de base de données source vers le moteur de base de données cible et la migration des données de la base de données source vers la base de données cible. La première étape de la migration consiste à évaluer et à convertir le schéma SQL du serveur et les objets de code vers le moteur de base de données cible.

Vous pouvez utiliser le AWS Schema Conversion Tool (AWS SCT) pour évaluer la compatibilité de la base de données avec diverses options de base de données open source cibles, telles qu'Amazon RDS for My SQL ou Amazon RDS for PostgreSQL, SQL Aurora My et Postgre. SQL Vous pouvez également utiliser l'outil Babelfish Compass pour évaluer la compatibilité avec Babelfish pour Aurora Postgre. SQL Cela fait de Compass AWS SCT et de Compass de puissants outils pour comprendre le travail initial nécessaire avant de décider d'une stratégie de migration. Si vous décidez de continuer, AWS SCT automatise les modifications nécessaires au schéma. La philosophie de base de Babelfish Compass est de permettre à la SQL base de données de migrer vers Aurora sans ou très peu de modifications. Compass évaluera la SQL base de données existante pour déterminer si cela est possible. Ainsi, le résultat est connu avant que tout effort ne soit consacré à la migration des données de SQL Server vers Aurora.

AWS SCT automatise la conversion et la migration du schéma et du code de base de données vers le moteur de base de données cible. Vous pouvez utiliser Babelfish for Aurora Postgre SQL pour migrer votre base de données et votre application du serveur SQL vers Aurora Postgre sans modification de schéma ou SQL avec un minimum de modifications. Cela peut accélérer vos migrations.

Une fois le schéma migré, vous pouvez l'utiliser AWS DMS pour migrer les données. AWS DMS peut effectuer le chargement complet des données et répliquer les modifications pour effectuer la migration avec un temps d'arrêt minimal.

Cette section explore les outils suivants de manière plus détaillée :

  • AWS Schema Conversion Tool

  • Poster Babelfish pour Aurora SQL

  • Boussole Babelfish

  • AWS Database Migration Service

AWS Schema Conversion Tool

Vous pouvez l'utiliser AWS SCT pour évaluer vos bases de données SQL Server existantes et évaluer la compatibilité avec Amazon RDS ou Aurora. Pour simplifier le processus de migration, vous pouvez également convertir le schéma d' AWS SCT un moteur de base de données à un autre dans le cadre d'une migration de base de données hétérogène. Vous pouvez l'utiliser AWS SCT pour évaluer votre application et convertir le code d'application intégré pour les applications écrites en C#, C++, Java et dans d'autres langages. Pour plus d'informations, consultez la section Conversion d'une application AWS SCTà SQL l'aide de la AWS SCT documentation.

AWS SCT est un AWS outil gratuit qui prend en charge de nombreuses sources de base de données. Pour l'utiliser AWS SCT, vous le pointez vers la base de données source, puis vous exécutez une évaluation. AWS SCTÉvalue ensuite le schéma et génère le rapport d'évaluation. Les rapports d'évaluation incluent un résumé, la complexité et les efforts de migration, les moteurs de base de données cibles appropriés et des recommandations de conversion. Pour le télécharger AWS SCT, consultez la section Installation, vérification et mise à jour AWS SCT dans la AWS SCT documentation.

Le tableau suivant montre un exemple de résumé généré par AWS SCT pour montrer la complexité de la modification de la base de données vers différentes plateformes cibles.

Plateforme cible

Modifications automatiques ou minimes

Actions complexes

Objets de rangement

Objets de code

Actions de conversion

Objets de rangement

Objets de code

Amazon RDS pour moi SQL

60 (98 %)

8 (35 %)

42

(12 %)

1

15 (65 %)

56

Édition SQL compatible Amazon Aurora My

60 (98 %)

8 (35 %)

42

(12 %)

1

15 (65 %)

56

Amazon RDS pour Postgrer SQL

60 (98 %)

12 (52 %)

54

(12 %)

1

11 (48 %)

26

Édition compatible avec Amazon Aurora Postgre SQL

60 (98 %)

12 (52 %)

54

(12 %)

1

11 (48 %)

26

Amazon RDS pour MariaDB

60 (98 %)

7 (30 %)

42

(12 %)

1

16 (70 %)

58

Amazon Redshift

61 (100 %)

9 (39 %)

124

0 (0 %)

0

14 (61 %)

25

AWS Glue

0 (0 %)

17 (100 %)

0

0 (0 %)

0

0 (0 %)

0

Babelfish

59 (97 %)

10 (45 %)

20

23 (23 %)

2

12 (55 %)

30

Un AWS SCT rapport fournit également des détails sur les éléments du schéma qui ne peuvent pas être convertis automatiquement. Vous pouvez combler les écarts AWS SCT de conversion et optimiser les schémas cibles en vous référant aux playbooks de AWS migration. Il existe de nombreux manuels de migration de bases de données destinés à faciliter les migrations hétérogènes.

Poster Babelfish pour Aurora SQL

Babelfish for Aurora Postgre étend la capacité d'SQLAurora Postgre à accepter SQL les connexions de base de données des clients du serveur. SQL Babelfish permet aux applications initialement conçues pour SQL Server de fonctionner directement avec Aurora PostgreSQL, avec peu de modifications de code et sans changer les pilotes de base de données. Babelfish rend Aurora Postgre SQL bilingue afin qu'Aurora Postgre SQL puisse fonctionner à la fois avec les langages T et PL/PG. SQL SQL Babelfish minimise les efforts de migration du serveur SQL vers Aurora Postgre. SQL Cela accélère les migrations, minimise les risques et réduit les coûts de migration de manière significative. Vous pouvez continuer à utiliser les migrations SQL T-post, mais il est également possible d'utiliser les outils SQL natifs de Postgre pour le développement.

Le schéma suivant illustre comment une application utilisant T- SQL se connecte au port par défaut 1433 dans SQL Server et utilise le traducteur Babelfish pour communiquer avec la base de données Aurora Postgre, tandis qu'une application utilisant PL/pg SQL peut se connecter directement et simultanément à la SQL base de données Aurora Postgre en utilisant le port par défaut 5432 dans Aurora PostgreSQL. SQL

Babelfish pour Aurora Postgre. SQL

Babelfish ne supporte pas certaines fonctionnalités SQL du serveur T. SQL C'est pourquoi Amazon fournit des outils d'évaluation pour line-by-line analyser vos SQL déclarations et déterminer si l'une d'entre elles n'est pas prise en charge par Babelfish.

Il existe deux options pour les évaluations de Babelfish. AWS SCT peut évaluer la compatibilité de la base de données de votre SQL serveur avec Babelfish. Une autre option est l'outil Babelfish Compass, qui est une solution recommandée car l'outil Compass est mis à jour conformément aux nouvelles versions de Babelfish pour Aurora Postgre. SQL

Boussole Babelfish

Babelfish Compass est un outil téléchargeable gratuitement qui s'aligne sur la dernière version de Babelfish pour Aurora Postgre. SQL En revanche, les nouvelles versions de Babelfish AWS SCT seront prises en charge après un certain temps. Babelfish Compass est exécuté selon le schéma de base de données du SQL serveur. Vous pouvez également extraire le schéma de base de données SQL du serveur source à l'aide d'outils tels que SQL Server Management Studio (SSMS). Ensuite, vous pouvez exécuter le schéma via Babelfish Compass. Cela génère le rapport détaillant la compatibilité du schéma du SQL serveur avec Babelfish et indiquant si des modifications sont nécessaires avant la migration. L'outil Babelfish Compass peut également automatiser bon nombre de ces changements et, à terme, accélérer vos migrations.

Une fois l'évaluation et les modifications terminées, vous pouvez migrer le schéma vers Aurora Postgre SQL à l'aide d'outils natifs SQL du serveur tels que SSMS sqlcmd. Pour obtenir des instructions, consultez l'article Migrer d'un SQL serveur vers Amazon Aurora à l'aide de Babelfish sur le blog de AWS base de données.

AWS Database Migration Service

Une fois le schéma migré, vous pouvez utiliser AWS Database Migration Service (AWS DMS) pour effectuer la migration des données AWS avec un temps d'arrêt minimal. AWS DMS non seulement effectue un chargement complet des données, mais reproduit également les modifications de la source à la destination pendant que le système source est opérationnel. Une fois les bases de données source et cible synchronisées, l'activité de transition peut avoir lieu lorsque l'application est pointée vers la base de données cible qui termine la migration. AWS DMS n'effectue actuellement le chargement complet des données avec Babelfish que pour une SQL cible Aurora Postgre et ne reproduit pas les modifications. Pour plus d'informations, consultez la section Utilisation de Babelfish comme cible AWS Database Migration Service dans la AWS DMS documentation.

AWS DMS peut effectuer des migrations homogènes (sur le même moteur de base de données) et hétérogènes (entre différents moteurs de base de données). AWS DMS prend en charge de nombreux moteurs de base de données source et de destination. Pour plus d'informations, consultez l' AWS DMS article sur la migration de la base de données de votre SQL serveur vers Amazon RDS for SQL Server à l'aide du blog AWS de base de données.

Ressources supplémentaires