Pour permettre à vos applications opérationnelles d'accéder à vos données analytiques avec une faible latence et de manière transactionnelle, synchronisez les tables de BigQuery dans votre instance AlloyDB pour PostgreSQL. Contrairement à un wrapper de données étrangères (FDW), qui interroge les données dans BigQuery, la fonctionnalité de synchronisation copie les données dans l'espace de stockage AlloyDB afin que vos requêtes lisent les données des tables locales pour améliorer les performances.
AlloyDB propose les méthodes suivantes pour déplacer des données BigQuery vers votre instance :
Synchronisation ponctuelle : crée une copie indépendante et accessible en écriture de votre table BigQuery.
Synchronisation ou mise en miroir périodique : crée une table locale en lecture seule qui s'actualise automatiquement selon une planification (par exemple, toutes les six heures ou tous les jours).
Considérations sur les performances et l'exploitation
Lorsque vous utilisez des tables de synchronisation BigQuery, tenez compte des points suivants :
- Utilisation des ressources : le déplacement des données consomme du processeur et de la mémoire. Pour les tables très volumineuses, envisagez de planifier les synchronisations pendant les heures creuses afin d'éviter d'affecter votre charge de travail transactionnelle principale.
- Visibilité des données : lors d'une opération de remplacement, la table cible existante est supprimée et recréée au préalable. Les requêtes effectuées pendant l'importation voient initialement une table vide, puis les données nouvellement importées apparaissent de manière incrémentielle à mesure que les transactions par lot sont validées.
Avant de commencer
- Définissez l'indicateur de base de données
alloydb_sync.enabled=onsur votre instance AlloyDB. Pour en savoir plus, consultez Configurer les indicateurs de base de données d'une instance. - Familiarisez-vous avec la façon dont
bigquery_fdwgère les types de données et les mappages de colonnes BigQuery, car l'extensionalloydb_syncutilisebigquery_fdwpour se connecter à BigQuery. - Connectez-vous à votre compte Google Cloud . Si vous débutez sur Google Cloud, créez un compte pour évaluer les performances de nos produits en conditions réelles. Les nouveaux clients bénéficient également de 300 $ de crédits sans frais pour exécuter, tester et déployer des charges de travail.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
Activez les APIs Cloud nécessaires pour créer une instance AlloyDB et vous y connecter.
-
Pour confirmer le nom du projet que vous allez modifier, à l'étape Confirmer le projet, cliquez sur Suivant.
-
À l'étape Activer les API, cliquez sur Activer pour activer les éléments suivants :
- API AlloyDB
- API Compute Engine
- API Cloud Resource Manager
- API Service Networking
- API BigQuery Storage
L'API Service Networking est requise si vous prévoyez de configurer la connectivité réseau à AlloyDB à l'aide d'un réseau VPC qui réside dans le même projet Google Cloud qu'AlloyDB.
Les API Compute Engine et Cloud Resource Manager sont requises si vous prévoyez de configurer la connectivité réseau à AlloyDB à l'aide d'un réseau VPC résidant dans un autre projet Google Cloud .
-
- Assurez-vous de disposer d'une table BigQuery existante à partir de laquelle synchroniser les données. Pour en savoir plus, consultez Créer et utiliser des tables BigQuery.
Rôles requis
Pour accorder au compte de service du cluster AlloyDB l'accès à l'ensemble de données BigQuery, vous devez disposer des autorisations suivantes :
- Lecteur de données BigQuery (
roles/bigquery.dataViewer) ou tout rôle personnalisé disposant des autorisationsbigquery.tables.getetbigquery.tables.getData. Lorsqu'il est attribué à un compte de service, ce rôle fournit des autorisations permettant de lire les données et les métadonnées de la table ou de la vue. - Utilisateur de sessions de lecture BigQuery (
roles/bigquery.readSessionUser) ou tout rôle personnalisé disposant des autorisationsbigquery.readsessions.createetbigquery.readsessions.getData. Permet de créer et d'utiliser des sessions de lecture. - Utilisateur de job BigQuery (
roles/bigquery.jobUser) ou tout rôle personnalisé disposant des autorisationsbigquery.jobs.create. Permet de créer et d'exécuter des jobs, y compris des jobs de requête. Lorsque vous fournissez un projet d'exécution distinct, le job est exécuté dans ce projet au lieu du projet de données. Cela signifie que vous devez attribuer le rôle "Utilisateur de job" sur le projet d'exécution.
Configurer l'extension
Avant de synchroniser des tables depuis BigQuery, activez l'extension requise et configurez la connexion à BigQuery. Si vous utilisez la console Google Cloud , AlloyDB effectue ces étapes automatiquement.
Créez l'extension.
- Connectez-vous à l'instance AlloyDB à l'aide du client psql en suivant les instructions de la section Connecter un client psql à une instance.
Exécutez la commande suivante :
CREATE EXTENSION IF NOT EXISTS alloydb_sync;
Pour permettre à AlloyDB de s'authentifier auprès de BigQuery, créez le serveur externe et le mappage d'utilisateurs :
CREATE EXTENSION IF NOT EXISTS bigquery_fdw; CREATE SERVER IF NOT EXISTS bigquery_server FOREIGN DATA WRAPPER bigquery_fdw OPTIONS (runtime_project 'RUNTIME_PROJECT_ID'); CREATE USER MAPPING IF NOT EXISTS FOR USER SERVER bigquery_server;Remplacez les éléments suivants :
RUNTIME_PROJECT_ID(facultatif) : ID du projetGoogle Cloud qui traite la requête et accumule les coûts de calcul. En cas d'omission, les requêtes sont facturées au projet qui stocke les données.USER: nom d'utilisateur de base de données ou utilisateur IAM qui accède à la table BigQuery.
Synchroniser une table BigQuery pour une exportation ponctuelle
Vous pouvez synchroniser une table BigQuery pour une exportation ponctuelle à l'aide de la consoleGoogle Cloud ou de psql.
Utiliser la console Google Cloud
Pour synchroniser une table BigQuery avec AlloyDB à l'aide de la consoleGoogle Cloud , procédez comme suit :
Ouvrez la page BigQuery dans la console Google Cloud .
Dans le volet de gauche, cliquez sur Explorateur :
Si le volet de gauche ne s'affiche pas, cliquez sur Développer le volet de gauche pour l'ouvrir.
Dans le volet Explorateur, développez votre projet, cliquez sur Ensembles de données, puis sur votre ensemble de données.
Cliquez sur Présentation > Tables, puis sélectionnez une table.
Dans le volet Détails, cliquez sur Plus > Exporter ou synchroniser vers AlloyDB.
Sous Choisir un projet, sélectionnez le projet pour votre cluster AlloyDB. Si vous disposez des autorisations requises, vous pouvez sélectionner un projet autre que votre projet BigQuery actuel.
Sous Choisir un cluster cible, sélectionnez l'une des options suivantes :
Sélectionnez Utiliser un cluster existant pour exporter la table BigQuery vers un cluster AlloyDB existant. Ensuite, procédez comme suit :
Sélectionnez le cluster AlloyDB principal.
Sélectionnez la base de données AlloyDB de destination.
Sélectionnez le schéma de votre table AlloyDB de destination.
Spécifiez un nom pour votre table AlloyDB de destination.
Pour Fréquence de synchronisation, sélectionnez Une seule fois pour créer une copie de la table BigQuery.
Cliquez sur Configurer l'exportation.
Une fois la configuration de la synchronisation terminée, vous pouvez utiliser les instructions SQL fournies pour suivre le job d'importation et interroger les tables importées. Cliquez sur Requête pour accéder à votre table importée dans AlloyDB Studio.
Sélectionnez Créer un cluster pour exporter la table BigQuery vers un nouveau cluster AlloyDB. Ensuite, procédez comme suit :
Cliquez sur Configurer l'exportation.
Dans la boîte de dialogue Rediriger vers AlloyDB, sélectionnez Rediriger.
Sélectionnez un type de cluster : Cluster d'essai sans frais ou Cluster provisionné.
Cliquez sur Continuer.
Dans Configuration de la synchronisation, sélectionnez la base de données AlloyDB de destination
postgrespar défaut, le schémapublicpar défaut pour votre table AlloyDB de destination, puis spécifiez un nom pour votre table AlloyDB de destination.Pour Fréquence de synchronisation, sélectionnez Une seule fois pour créer une copie de la table BigQuery.
Cliquez sur Continuer.
Configurez votre cluster. Pour en savoir plus sur chaque champ, consultez Créer un cluster et une instance principale.
Cliquez sur Créer un cluster.
Une fois la configuration de la synchronisation terminée, accédez à AlloyDB Studio pour interroger vos tables importées.
Synchroniser une table BigQuery une seule fois à l'aide de psql
Pour créer une copie modifiable des données BigQuery, utilisez psql pour exécuter la fonction alloydb_sync.import_bq_table.
SELECT alloydb_sync.import_bq_table(
'PROJECT_ID.DATASET_ID.TABLE_ID',
'ALLOYDB_DESTINATION_TABLE_NAME',
'ON_EXISTS',
ARRAY['PRIMARY_KEY_COLUMN']
);
Remplacez les éléments suivants :
PROJECT_ID: ID du projet dans lequel se trouve l'ensemble de données BigQuery.DATASET_ID: nom de l'ensemble de données BigQuery pour la table. Pour les tables Iceberg dont le nom comporte quatre parties, il s'agit deCatalog.Namespace.TABLE_ID: nom de la table ou de la vue BigQuery.ALLOYDB_DESTINATION_TABLE_NAME: nom de la table locale dans la base de données AlloyDB à créer et dans laquelle importer des données. Vous pouvez inclure le nom du schéma, par exemplepublic.local_sales.ON_EXISTS: stratégie à utiliser si la table de destination existe déjà.PRIMARY_KEY_COLUMN: liste facultative de noms de colonnes à utiliser comme clé primaire.
Exemple
L'exemple suivant montre comment synchroniser une table nommée transactions d'un ensemble de données BigQuery dans une nouvelle table AlloyDB nommée public.local_sales :
SELECT alloydb_sync.import_bq_table(
'my-gcp-project.sales_data.transactions',
'public.local_sales',
'replace'
);
Paramètre on_exists
Le paramètre on_exists détermine la manière dont la fonction gère la synchronisation si la table de destination existe déjà dans AlloyDB :
error: option par défaut. Arrête la synchronisation si la table de destination existe déjà.skip: ignore la synchronisation si la table de destination existe déjà.replace: remplace la table locale existante par de nouvelles données provenant de BigQuery.
Compatibilité avec les clés primaires
Si vous fournissez le paramètre facultatif primary_key sous forme de tableau de texte, AlloyDB crée la table avec les colonnes spécifiées comme clé primaire.
SELECT alloydb_sync.import_bq_table(
'my-gcp-project.sales_data.transactions',
'public.local_sales',
ARRAY['transaction_id']
);
Synchroniser une table BigQuery pour l'exportation périodique
Vous pouvez synchroniser une table BigQuery pour une exportation périodique à l'aide de la consoleGoogle Cloud ou de psql.
Utiliser la console Google Cloud
Pour synchroniser une table BigQuery avec AlloyDB à l'aide de la consoleGoogle Cloud , procédez comme suit :
Ouvrez la page BigQuery dans la console Google Cloud .
Dans le volet de gauche, cliquez sur Explorateur :

Si le volet de gauche ne s'affiche pas, cliquez sur Développer le volet de gauche pour l'ouvrir.
Dans le volet Explorateur, développez votre projet, cliquez sur Ensembles de données, puis sur votre ensemble de données.
Cliquez sur Présentation > Tables, puis sélectionnez une table.
Dans le volet Détails, cliquez sur Plus > Exporter ou synchroniser vers AlloyDB.
Sous Choisir un projet, sélectionnez le projet pour votre cluster AlloyDB. Si vous disposez des autorisations requises, vous pouvez sélectionner un projet autre que votre projet BigQuery actuel.
Sous Choisir un cluster cible, sélectionnez l'une des options suivantes :
Sélectionnez Utiliser un cluster existant pour exporter la table BigQuery vers un cluster AlloyDB existant. Ensuite, procédez comme suit :
Sélectionnez le cluster AlloyDB principal.
Sélectionnez la base de données AlloyDB de destination.
Sélectionnez le schéma de votre table AlloyDB de destination.
Spécifiez un nom pour votre table AlloyDB de destination.
Pour Fréquence de synchronisation, sélectionnez un intervalle de temps pour créer une synchronisation périodique de la table BigQuery (par exemple, Toutes les heures, Toutes les six heures).
Cliquez sur Configurer l'exportation.
Une fois la configuration de la synchronisation terminée, vous pouvez utiliser les instructions SQL fournies pour suivre le job d'importation et interroger la table importée. Cliquez sur Requête pour accéder à votre table importée dans AlloyDB Studio.
Sélectionnez Créer un cluster pour exporter la table BigQuery vers un nouveau cluster AlloyDB. Ensuite, procédez comme suit :
Cliquez sur Configurer l'exportation.
Dans la boîte de dialogue Rediriger vers AlloyDB, sélectionnez Rediriger.
Sélectionnez un type de cluster : Cluster d'essai sans frais ou Cluster provisionné.
Cliquez sur Continuer.
Dans Configuration de la synchronisation, sélectionnez la base de données AlloyDB de destination
postgrespar défaut, le schémapublicpar défaut pour votre table AlloyDB de destination, puis spécifiez un nom pour votre table AlloyDB de destination.Pour Fréquence de synchronisation, sélectionnez Une seule fois pour créer une copie de la table BigQuery.
Cliquez sur Continuer.
Configurez votre cluster. Pour en savoir plus sur chaque champ, consultez Créer un cluster et une instance principale.
Cliquez sur Créer un cluster.
Une fois la configuration de la synchronisation terminée, accédez à AlloyDB Studio pour interroger vos tables importées.
Créer une synchronisation périodique
Pour conserver une table en lecture seule qui reste synchronisée avec les données BigQuery, utilisez psql pour exécuter la fonction alloydb_sync.create_bq_sync_table.
SELECT alloydb_sync.create_bq_sync_table(
'PROJECT_ID.DATASET_ID.TABLE_ID',
'ALLOYDB_DESTINATION_TABLE_NAME',
'REFRESH_INTERVAL',
'ON_EXISTS',
ARRAY['PRIMARY_KEY_COLUMN']
);
Remplacez les éléments suivants :
PROJECT_ID.DATASET_ID.TABLE_ID: nom complet de la table ou de la vue BigQuery, y compris l'ID du projet, l'ID de l'ensemble de données et l'ID de la table, séparés par des points. Pour les tables Iceberg dont le nom comporte quatre parties,DATASET_IDest représenté parCatalog.Namespace. Par exemple,my-gcp-project.sales_data.transactions.ALLOYDB_DESTINATION_TABLE_NAME: nom de la table locale dans la base de données AlloyDB dans laquelle créer et synchroniser les données.REFRESH_INTERVAL: intervalle auquel AlloyDB actualise régulièrement les données de BigQuery, par exemple12 hours.ON_EXISTS: stratégie à utiliser si la table de destination existe déjà.PRIMARY_KEY_COLUMN: liste facultative de noms de colonnes à utiliser comme clé primaire.
Exemple
L'exemple suivant montre comment créer un miroir de profil client qui s'actualise toutes les 12 heures :
SELECT alloydb_sync.create_bq_sync_table(
'my-gcp-project.crm_data.profiles',
'public.customer_mirror',
'12 hours',
'replace'
);
Surveiller et gérer les jobs
Une fois que vous avez lancé une synchronisation, vous pouvez surveiller sa progression et gérer les jobs.
Vérifier l'état d'une tâche
La synchronisation de volumes importants peut prendre du temps. Vous pouvez surveiller la progression, y compris les enregistrements traités et l'estimation du temps d'exécution, en interrogeant la vue job_status :
SELECT
import_id,
status,
records_processed,
total_records,
error_message
FROM alloydb_sync.job_status;
Par exemple, pour annuler le job, exécutez la commande suivante :
SELECT alloydb_sync.cancel_import_job('85bb5dfa-dfb9-4017-9153-738f55abe4b1');
Arrêter et supprimer un job de synchronisation
Pour arrêter la mise en miroir d'une table BigQuery et supprimer la table locale, utilisez la fonction alloydb_sync.delete_bq_sync_table :
SELECT alloydb_sync.delete_bq_sync_table('public.customer_mirror');
Mappages des types de données
Lorsque vous synchronisez ou importez des données de BigQuery vers AlloyDB à l'aide de l'extension alloydb_sync, AlloyDB mappe les types de données BigQuery aux types de données PostgreSQL correspondants dans votre table cible.
Vérifiez que les colonnes de votre table BigQuery source utilisent les types de données compatibles listés dans le tableau suivant :
| Types de données de la table BigQuery | Types de données PostgreSQL |
|---|---|
BOOLEAN |
BOOLEAN |
INTEGER (INT64) |
BIGINT |
FLOAT (FLOAT64) |
DOUBLE PRECISION |
STRING |
TEXT |
NUMERIC |
NUMERIC |
BIGNUMERIC |
NUMERIC |
DATE |
DATE |
TIMESTAMP |
TIMESTAMPTZ |
TIME |
TIME |
DATETIME |
TIMESTAMP |
JSON |
JSONB |
BYTES |
BYTEA |
Limites
Les limites suivantes s'appliquent lors de la synchronisation de tables depuis BigQuery :
- Cette fonctionnalité n'est compatible qu'avec PostgreSQL version 18.
- Cette fonctionnalité nécessite l'indicateur de base de données
alloydb_sync.enabled=onsur l'instance. - Lorsque vous configurez le serveur externe
bigquery_fdwet le mappage utilisateur dans une base de données, vous devez nommer le serveur externebigquery_server. - Les types de données BigQuery complexes tels que
ARRAY,STRUCT,VECTOR,GEOGRAPHY,RANGEetINTERVALne sont pas compatibles avec la synchronisation. Les types de données BigQuery paramétrés tels queSTRING(L),BYTES(L),NUMERIC(P, S)etBIGNUMERIC(P, S)sont mappés surTEXT. Pour en savoir plus, consultez les types de données et mappages de colonnes BigQuery compatibles. - Lorsque vous spécifiez le paramètre
primary_key, la liste de noms de colonnes de clé primaire séparés par une virgule ne doit pas dépasser 1 023 octets. De plus, les noms et les valeurs des colonnes de clé primaire sérialisées au format JSON pour une ligne ne doivent pas dépasser 255 octets. - Pour les tables de synchronisation périodique créées avec la fonction
alloydb_sync.create_bq_sync_table, le paramètrerefresh_intervaln'est pas compatible avec les mois ni les années. Spécifiez l'intervalle sous la forme d'un nombre entier de jours, d'heures (inférieur à 24), de minutes (inférieur à 60) ou de secondes (inférieur à 60). Les intervalles d'unités mixtes, tels que1 hour 30 minutesou90 minutes, sont tronqués au nombre entier de la plus grande unité de temps, par exemple1 hour. Seul l'utilisateur de la base de données qui a lancé un job de synchronisation ou créé une table de synchronisation périodique peut effectuer les opérations suivantes :
- Affichez le job dans la vue
alloydb_sync.job_status. - Annuler le job avec la fonction
alloydb_sync.cancel_import_job - Supprimer la table de synchronisation avec la fonction
alloydb_sync.delete_bq_sync_table
- Affichez le job dans la vue
Les jobs de synchronisation valident les données de manière incrémentielle par lots plutôt qu'en une seule transaction. Lors d'une opération
replace, la table de destination est supprimée et recréée avant le chargement des données. Par conséquent, les requêtes simultanées voient une table vide ou partiellement remplie jusqu'à la fin du job. Si un job d'importation échoue ou est annulé avant d'être terminé, les lignes partiellement importées et une définition de table externe interne restent dans la base de données. Pour effectuer la récupération, réexécutez l'importation avec le paramètreon_existsdéfini surreplace.Si une interruption se produit lors de l'importation initiale en arrière-plan d'une table de synchronisation périodique nouvellement enregistrée, la table reste incomplète jusqu'à l'intervalle d'actualisation planifié suivant.
Les commandes
DROP DATABASEstandards échouent lorsque le nœud de calcul de suivi des tâches en arrière-plan est connecté à une base de données comportant des tables de synchronisation périodique ou une activité de synchronisation au cours des 10 dernières secondes.Dans les bases de données qui n'ont pas de tables de synchronisation périodique configurées à l'aide de la fonction
alloydb_sync.create_bq_sync_table, le nœud de calcul de suivi des jobs en arrière-plan s'arrête après 10 secondes d'inactivité. Le nœud de calcul alloue un nouveau segment de mémoire partagée dynamique lors de l'appel de fonctionalloydb_sync.import_bq_tablesuivant ou lorsque l'extensionalloydb_syncest supprimée et recréée. L'exécution d'un grand nombre d'importations ponctuelles isolées séparées par des périodes d'inactivité sans table de synchronisation périodique active peut épuiser les emplacements de mémoire partagée, ce qui nécessite un redémarrage de l'instance.
Bonnes pratiques
Suivez ces bonnes pratiques lorsque vous configurez et gérez les synchronisations de tables depuis BigQuery :
- Exécutez l'instruction
CREATE EXTENSION IF NOT EXISTS alloydb_sync CASCADE;dans sa propre transaction validée avant d'appeler des fonctions de synchronisation. - Évitez de modifier la table BigQuery source pendant une importation. Si la table source est mise à jour simultanément, un job de synchronisation peut importer les données mises à jour.
- Spécifiez un nom de table de destination cohérent et qualifié par un schéma, tel que
public.my_table, lorsque vous appelez les fonctionsalloydb_sync.import_bq_table,alloydb_sync.create_bq_sync_tableoualloydb_sync.delete_bq_sync_table. Ne lancez pas plusieurs jobs de synchronisation pour la même table de destination en même temps. Si vous synchronisez des tables dans plusieurs bases de données sur le même cluster, utilisez des noms de schéma ou de table distincts pour chaque base de données. - Lorsque vous créez une table de synchronisation périodique avec la fonction
alloydb_sync.create_bq_sync_table, définissez le paramètreon_existssurreplaceafin que les actualisations planifiées mettent à jour la table de destination. Spécifiez le paramètrerefresh_intervalsous la forme d'une seule unité entière de jours, d'heures (inférieures à 24), de minutes (inférieures à 60) ou de secondes (inférieures à 60). - Lorsque vous importez des tables BigQuery très volumineuses, augmentez la valeur de l'indicateur de base de données
temp_file_limitet, éventuellement, la valeur de l'indicateurwork_memsur votre instance afin que l'importation ne dépasse pas la limite de taille des fichiers temporaires. Lors d'une importation, les lignes entrantes sont mises en mémoire tampon jusqu'à la limitework_mem, puis stockées dans des fichiers temporaires PostgreSQL locaux avant la fin des commits par lot. - N'exécutez pas manuellement l'instruction
DROP TABLEsur une table de synchronisation répliquée ou sur une table avec une importation active. Pour arrêter une importation en cours, exécutez d'abord la fonctionalloydb_sync.cancel_import_joben tant qu'utilisateur de base de données ayant lancé la tâche. Pour supprimer une table de synchronisation périodique et sa planification, utilisez la fonctionalloydb_sync.delete_bq_sync_tableet transmettez le nom exact de la table de destination que vous avez utilisé lors de la création de la table de synchronisation. - Si une importation ponctuelle échoue ou est annulée avant la fin, exécutez à nouveau la fonction
alloydb_sync.import_bq_tableavec le paramètreon_existsdéfini surreplace. Si l'importation initiale en arrière-plan d'une table de synchronisation périodique nouvellement enregistrée est interrompue et que vous souhaitez résoudre le problème immédiatement au lieu d'attendre la prochaine actualisation planifiée, supprimez la table de synchronisation à l'aide de la fonctionalloydb_sync.delete_bq_sync_tableet recréez-la. Si les emplacements de nœuds de calcul en arrière-plan dans
max_worker_processessont épuisés au démarrage d'un job, ou si la base de données plante alors qu'une importation est en file d'attente ou en cours d'exécution, les métadonnées du job peuvent rester bloquées à l'étatQUEUEDouRUNNINGet bloquer les futures importations dans cette table. Pour débloquer la table, mettez à jour l'état du job en tant qu'utilisateur de la base de données qui a démarré le job en exécutant la commande suivante :UPDATE alloydb_sync.import_job_status SET status = 'FAILED' WHERE status IN ('QUEUED', 'RUNNING');Pour supprimer une base de données comportant des tables de synchronisation périodique ou une activité de synchronisation récente, exécutez
DROP DATABASE DATABASE_NAME WITH (FORCE)ou supprimez d'abord toutes les tables de synchronisation et attendez au moins 10 secondes que le nœud de calcul du traceur en arrière-plan se ferme. Vous pouvez vérifier si le nœud de calcul est toujours connecté à la base de données en interrogeant la vuepg_stat_activity:SELECT pid, datname, backend_type FROM pg_stat_activity WHERE datname = 'DATABASE_NAME' AND backend_type = 'job_tracker';Remplacez
DATABASE_NAMEpar le nom de votre base de données.
Tarifs
Lorsque vous synchronisez des données de BigQuery vers AlloyDB, vous êtes facturé selon les tarifs des lectures en flux continu BigQuery (API Storage Read).
Une fois les données exportées, leur stockage dans AlloyDB vous est facturé. Pour en savoir plus, consultez Tarifs d'AlloyDB pour PostgreSQL.
Étapes suivantes
- En savoir plus sur l'exportation de données vers AlloyDB (ETL inversé)
- En savoir plus sur l'interrogation des données BigQuery sur place à l'aide de FDW