Après avoir optimisé votre schéma Spanner et migré votre application, vous pouvez déplacer vos données vers une base de données Spanner vide de taille de production, puis faire basculer votre application pour qu'elle utilise la base de données Spanner.
Selon votre cas d'utilisation, vous pouvez effectuer une migration de données en direct avec un temps d'arrêt minimal, ou vous devrez peut-être interrompre votre service pendant une période prolongée.
Si votre application ne peut pas se permettre de subir de longs temps d'arrêt, envisagez d'effectuer une migration de données en direct. Si votre application peut gérer les temps d'arrêt, vous pouvez envisager de migrer avec un temps d'arrêt.
Dans une migration de données en direct, vous devez configurer l'infrastructure réseau requise pour que les données circulent entre votre base de données source, la base de données Spanner cible et les outils que vous utilisez pour effectuer la migration de données. Vous devez choisir une connectivité réseau privée ou publique en fonction des exigences de conformité de votre organisation. Vous devrez peut-être demander à l'administrateur réseau de votre organisation de configurer l'infrastructure.
Migration de données en direct
Une migration de données en direct se compose de deux composants:
- Migrer les données dans un instantané cohérent de votre base de données source.
- Migrer le flux de modifications (insertions, mises à jour et suppressions) depuis cet instantané, appelé capture des données modifiées (CDC).
Bien que les migrations de données en direct aident à protéger vos données, le processus présente des défis, y compris les suivants:
- Stockage des données CDC pendant la migration de l'instantané.
- Écrire les données CDC dans Spanner tout en capturant le flux CDC entrant.
- Assurez-vous que la migration des données CDC vers Spanner est plus rapide que le flux CDC entrant.
Migration avec temps d'arrêt
Si votre base de données source peut exporter au format CSV ou Avro, vous pouvez migrer vers Spanner avec un temps d'arrêt. Pour en savoir plus, consultez la Présentation de l'importation et de l'exportation Spanner.
Les migrations avec temps d'arrêt peuvent être utilisées pour les environnements de test ou les applications pouvant gérer quelques heures d'arrêt. Sur une base de données active, une migration avec temps d'arrêt peut entraîner une perte de données.
Pour effectuer une migration avec temps d'arrêt, envisagez l'approche globale suivante:
- Arrêtez votre application et générez un fichier de dump des données à partir de la base de données source.
- Importez le fichier de vidage dans Cloud Storage au format MySQL, PostgreSQL, Avro ou CSV.
- Chargez le fichier de vidage dans Spanner à l'aide de Dataflow ou de l'outil de migration Spanner.
Générer plusieurs petits fichiers de vidage permet d'écrire plus rapidement dans Spanner, car Spanner peut lire plusieurs fichiers de vidage en parallèle.
Lorsque vous générez un fichier de dump à partir de la base de données source, gardez à l'esprit les points suivants pour générer un instantané cohérent des données:
- Avant d'effectuer le vidage, appliquez un verrouillage en lecture à la base de données source pour empêcher les données de changer lors de la génération du fichier de vidage.
- Vous pouvez également générer le fichier de vidage à l'aide d'une instance dupliquée avec accès en lecture de la base de données source, avec la réplication désactivée.