Présentation de l'importation et de l'exportation Spanner

Vous pouvez importer et exporter de grandes quantités de données vers ou depuis Spanner à l'aide de l'une des méthodes suivantes:

  • Importez ou exportez n'importe quelle base de données Spanner à l'aide de Dataflow.
  • Exportez n'importe quelle base de données Spanner vers un bucket Cloud Storage à l'aide des formats de fichier Avro ou CSV.
  • Importer des données à partir de fichiers Avro ou CSV dans une nouvelle base de données Spanner

Cas d'utilisation

Vous pouvez utiliser l'importation et l'exportation Spanner pour les cas d'utilisation suivants:

  • Chargement groupé: vous pouvez importer des données de manière groupée dans Spanner.
  • Sauvegarde et archivage à long terme: vous pouvez exporter votre base de données à tout moment et la stocker dans un emplacement de bucket Cloud Storage de votre choix pour la sauvegarde ou l'archivage à long terme. En outre, vous pouvez utiliser la récupération à un moment précis pour exporter une base de données à partir d'un code temporel antérieur spécifique. Si vous recherchez des techniques de reprise après sinistre qui offrent une restauration plus rapide, mais avec des périodes de conservation plus courtes, envisagez d'utiliser des sauvegardes ou une restauration à un moment précis (PITR).

  • Copier des bases de données dans des projets de développement ou de test: vous pouvez exporter une base de données à partir d'un projet de production, puis l'importer dans votre projet de développement ou de test pour l'utiliser pour des tests d'intégration ou d'autres tests.

  • Ingestion à des fins d'analyse: vous pouvez exporter une base de données pour ingérer vos données opérationnelles de manière groupée dans des services d'analyse tels que BigQuery. BigQuery peut ingérer automatiquement des données au format Avro à partir d'un bucket Cloud Storage, ce qui vous permet d'exécuter plus facilement des analyses sur vos données opérationnelles. Si vous souhaitez utiliser BigQuery pour analyser en temps réel les données Spanner sans les copier ni les déplacer, vous pouvez utiliser les requêtes fédérées Spanner à la place.

Comparer l'importation et l'exportation à la sauvegarde et à la restauration

L'importation et l'exportation de Spanner sont semblables à la sauvegarde et à la restauration à bien des égards. Le tableau suivant décrit les similitudes et les différences entre elles pour vous aider à choisir celle qui convient.

Sauvegarde et restaurationImportation et exportation
Cohérence des données Les sauvegardes et les bases de données exportées sont cohérentes à la fois sur le plan transactionnel et externe.
Impact sur la performance Les sauvegardes n'ont aucun impact sur les performances d'une instance. Spanner effectue des sauvegardes à l'aide de tâches dédiées qui ne reposent pas sur les ressources du serveur d'une instance. L'exportation est exécutée en tant que tâche de priorité moyenne, afin de minimiser l'impact sur les performances de la base de données. Pour plus d'informations, consultez la section Priorité des tâches.
Format de stockage Utilise un format propriétaire chiffré et conçu pour permettre une restauration rapide. Compatible avec les formats de fichier CSV et Avro.
Portabilité Vous créez des sauvegardes dans la même instance que leur base de données source.

Une fois une sauvegarde créée, vous pouvez la copier sur une instance dans une autre région ou un autre projet si vous avez besoin d'une sauvegarde interrégionale ou interprojet. Vous pouvez ensuite restore à partir d'une sauvegarde en tant que nouvelle base de données sur n'importe quelle instance du même projet. L'instance sur laquelle vous effectuez la restauration doit avoir la même configuration que l'instance où la sauvegarde est stockée.
Les bases de données exportées sont stockées dans Cloud Storage. Les données peuvent donc être transférées vers tout système compatible avec CSV ou Avro.
Fidélisation Les sauvegardes peuvent être conservées jusqu'à un an. Les bases de données exportées sont stockées dans Cloud Storage. Par défaut, elles sont conservées jusqu'à leur suppression. Vous pouvez personnaliser les règles de cycle de vie et de conservation.
Tarifs Les sauvegardes sont facturées sur votre projet Spanner en fonction de l'espace de stockage utilisé par unité de temps. Pour en savoir plus, consultez la section Tarifs. La facturation de l'importation et de l'exportation est plus complexe du fait que ces opérations utilisent Cloud Storage et Dataflow. Pour en savoir plus, consultez la section Tarifs d'exportation et d'importation de bases de données.
Délai de restauration La restauration s'effectue en deux opérations : la restauration et l'optimisation. L'opération de restauration permet d'atteindre un temps de latence du premier octet très rapide, car la base de données installe directement la sauvegarde sans copier les données. Une fois l'opération de restauration terminée, la base de données est prête à l'emploi. Toutefois, la latence de lecture peut être légèrement supérieure lors de l'optimisation. Pour en savoir plus, consultez la section Fonctionnement de la restauration. L'importation est plus lente. Vous devez attendre que toutes les données soient écrites dans la base de données.

Comparer les formats de fichier

Le tableau suivant compare les différences de fonctionnalités entre les formats de fichier Avro et CSV lors de l'importation et de l'exportation de données Spanner.

Capacité Format Avro Format CSV
Importer ou exporter une base de données complète Oui Non
Possibilité d'exporter uniquement les tables sélectionnées d'une base de données Oui Oui
Possibilité d'importer des tables précédemment exportées Oui Oui
Exporter à un horodatage passé Oui Oui
Importer ou exporter des données à l'aide de Google Cloud CLI Oui Oui
Importer ou exporter des données à l'aide de Dataflow Oui Oui
Importer ou exporter à l'aide de Spanner Oui Non

Fichiers Avro

Lors de l'exportation au format Avro, vous pouvez spécifier une liste de tables à exporter. Les tables enfants exportées de cette manière doivent être accompagnées de leurs tables parentes. Spanner gère l'ensemble du schéma de la base de données dans les fichiers exportés.

Lors de l'importation à partir du format Avro, Spanner recrée l'intégralité du schéma de la base de données exportée, y compris toutes les tables. Les tables incluses dans l'exportation d'origine reçoivent toutes leurs données exportées. Toutes les autres tables restent vides.

La page Spanner de la console Google Cloud propose des options d'importation et d'exportation limitées au format Avro. Par exemple, vous ne pouvez pas définir d'options de réseau et de sous-réseau. Pour un ensemble plus large d'options, utilisez plutôt la page Dataflow.

Fichiers CSV

Vous ne pouvez exporter qu'un seul tableau Spanner au format CSV à la fois. Lors de l'exportation, le schéma n'est pas exporté, seules les données le sont.

Avant d'importer à partir de fichiers CSV, vous devez créer un fichier manifeste JSON.

Tarifs

Aucuns frais supplémentaires ne sont appliqués par Spanner pour l'utilisation des outils d'exportation et d'importation. Les tarifs standards du stockage de données vous sont facturés lorsque vous importez une base de données dans Spanner. Cependant, d'autres frais potentiels peuvent résulter de l'importation et de l'exportation de bases de données. Pour en savoir plus, consultez la section Tarifs d'exportation et d'importation de bases de données.

Étape suivante