E/S gérées Dataflow pour les bases de données
Restez organisé à l'aide des collections
Enregistrez et classez les contenus selon vos préférences.
Dataflow permet de lire et d'écrire des données dans des bases de données à l'aide de Java Database Connectivity (JDBC). Dataflow utilise le connecteur Apache Beam JdbcIO pour se connecter aux sources et récepteurs de données JDBC. Managed I/O for Databases est compatible avec les pilotes JDBC standards pour différentes bases de données, y compris PostgreSQL, MySQL et Microsoft SQL Server.
Conditions requises
Les SDK suivants sont compatibles avec les E/S gérées pour les bases de données :
SDK Apache Beam pour Java version 2.69.0 ou ultérieure
SDK Apache Beam pour Python version 2.69.0 ou ultérieure
Configuration
Les E/S gérées pour les bases de données sont compatibles avec les paramètres de configuration suivants :
POSTGRES Lire
Configuration
Type
Description
jdbc_url
str
URL de connexion pour la source JDBC.
connection_properties
str
Permet de définir les propriétés de connexion transmises au pilote JDBC qui ne sont pas déjà définies en tant que paramètre autonome (par exemple, le nom d'utilisateur et le mot de passe peuvent être définis à l'aide des paramètres ci-dessus). Le format de la chaîne doit être "key1=value1;key2=value2;".
fetch_size
int32
Cette méthode permet de remplacer la taille des données qui seront extraites et chargées en mémoire pour chaque appel de base de données. Il ne doit être utilisé que si la valeur par défaut génère des erreurs de mémoire.
emplacement
str
Nom de la table à partir de laquelle lire les données.
num_partitions
int32
Nombre de partitions
output_parallelization
boolean
Indique s'il faut réorganiser la PCollection résultante afin que les résultats soient distribués à tous les nœuds de calcul.
partition_column
str
Nom d'une colonne de type numérique qui sera utilisée pour le partitionnement.
mot de passe
str
Mot de passe pour la source JDBC.
read_query
str
Requête SQL utilisée pour interroger la source JDBC.
nom d'utilisateur
str
Nom d'utilisateur pour la source JDBC.
POSTGRES Écriture
Configuration
Type
Description
jdbc_url
str
URL de connexion du récepteur JDBC.
partitionnement automatique
boolean
Si cette option est activée, l'écriture s'effectue à l'aide d'un nombre de segments déterminé de manière dynamique.
batch_size
int64
n/a
connection_properties
str
Permet de définir les propriétés de connexion transmises au pilote JDBC qui ne sont pas déjà définies en tant que paramètre autonome (par exemple, le nom d'utilisateur et le mot de passe peuvent être définis à l'aide des paramètres ci-dessus). Le format de la chaîne doit être "key1=value1;key2=value2;".
emplacement
str
Nom de la table dans laquelle écrire.
mot de passe
str
Mot de passe pour la source JDBC.
nom d'utilisateur
str
Nom d'utilisateur pour la source JDBC.
write_statement
str
Requête SQL utilisée pour insérer des enregistrements dans le récepteur JDBC.
MYSQL Lire
Configuration
Type
Description
jdbc_url
str
URL de connexion pour la source JDBC.
connection_init_sql
list[str]
Définit les instructions SQL d'initialisation de la connexion utilisées par le pilote. Seuls MySQL et MariaDB sont compatibles avec cette fonctionnalité.
connection_properties
str
Permet de définir les propriétés de connexion transmises au pilote JDBC qui ne sont pas déjà définies en tant que paramètre autonome (par exemple, le nom d'utilisateur et le mot de passe peuvent être définis à l'aide des paramètres ci-dessus). Le format de la chaîne doit être "key1=value1;key2=value2;".
disable_auto_commit
boolean
Indique s'il faut désactiver la validation automatique en lecture. Si aucune valeur n'est indiquée, cet attribut est défini par défaut sur "true". La nécessité de cette configuration varie en fonction de la plate-forme de base de données. Informix exige que cette valeur soit définie sur "false", tandis que Postgres exige qu'elle soit définie sur "true".
fetch_size
int32
Cette méthode permet de remplacer la taille des données qui seront extraites et chargées en mémoire pour chaque appel de base de données. Il ne doit être utilisé que si la valeur par défaut génère des erreurs de mémoire.
emplacement
str
Nom de la table à partir de laquelle lire les données.
num_partitions
int32
Nombre de partitions
output_parallelization
boolean
Indique s'il faut réorganiser la PCollection résultante afin que les résultats soient distribués à tous les nœuds de calcul.
partition_column
str
Nom d'une colonne de type numérique qui sera utilisée pour le partitionnement.
mot de passe
str
Mot de passe pour la source JDBC.
read_query
str
Requête SQL utilisée pour interroger la source JDBC.
nom d'utilisateur
str
Nom d'utilisateur pour la source JDBC.
MYSQL Écriture
Configuration
Type
Description
jdbc_url
str
URL de connexion du récepteur JDBC.
partitionnement automatique
boolean
Si cette option est activée, l'écriture s'effectue à l'aide d'un nombre de segments déterminé de manière dynamique.
batch_size
int64
n/a
connection_init_sql
list[str]
Définit les instructions SQL d'initialisation de la connexion utilisées par le pilote. Seuls MySQL et MariaDB sont compatibles avec cette fonctionnalité.
connection_properties
str
Permet de définir les propriétés de connexion transmises au pilote JDBC qui ne sont pas déjà définies en tant que paramètre autonome (par exemple, le nom d'utilisateur et le mot de passe peuvent être définis à l'aide des paramètres ci-dessus). Le format de la chaîne doit être "key1=value1;key2=value2;".
emplacement
str
Nom de la table dans laquelle écrire.
mot de passe
str
Mot de passe pour la source JDBC.
nom d'utilisateur
str
Nom d'utilisateur pour la source JDBC.
write_statement
str
Requête SQL utilisée pour insérer des enregistrements dans le récepteur JDBC.
SQLSERVER Lire
Configuration
Type
Description
jdbc_url
str
URL de connexion pour la source JDBC.
connection_properties
str
Permet de définir les propriétés de connexion transmises au pilote JDBC qui ne sont pas déjà définies en tant que paramètre autonome (par exemple, le nom d'utilisateur et le mot de passe peuvent être définis à l'aide des paramètres ci-dessus). Le format de la chaîne doit être "key1=value1;key2=value2;".
disable_auto_commit
boolean
Indique s'il faut désactiver la validation automatique en lecture. Si aucune valeur n'est indiquée, cet attribut est défini par défaut sur "true". La nécessité de cette configuration varie en fonction de la plate-forme de base de données. Informix exige que cette valeur soit définie sur "false", tandis que Postgres exige qu'elle soit définie sur "true".
fetch_size
int32
Cette méthode permet de remplacer la taille des données qui seront extraites et chargées en mémoire pour chaque appel de base de données. Il ne doit être utilisé que si la valeur par défaut génère des erreurs de mémoire.
emplacement
str
Nom de la table à partir de laquelle lire les données.
num_partitions
int32
Nombre de partitions
output_parallelization
boolean
Indique s'il faut réorganiser la PCollection résultante afin que les résultats soient distribués à tous les nœuds de calcul.
partition_column
str
Nom d'une colonne de type numérique qui sera utilisée pour le partitionnement.
mot de passe
str
Mot de passe pour la source JDBC.
read_query
str
Requête SQL utilisée pour interroger la source JDBC.
nom d'utilisateur
str
Nom d'utilisateur pour la source JDBC.
SQLSERVER Écriture
Configuration
Type
Description
jdbc_url
str
URL de connexion du récepteur JDBC.
partitionnement automatique
boolean
Si cette option est activée, l'écriture s'effectue à l'aide d'un nombre de segments déterminé de manière dynamique.
batch_size
int64
n/a
connection_properties
str
Permet de définir les propriétés de connexion transmises au pilote JDBC qui ne sont pas déjà définies en tant que paramètre autonome (par exemple, le nom d'utilisateur et le mot de passe peuvent être définis à l'aide des paramètres ci-dessus). Le format de la chaîne doit être "key1=value1;key2=value2;".
emplacement
str
Nom de la table dans laquelle écrire.
mot de passe
str
Mot de passe pour la source JDBC.
nom d'utilisateur
str
Nom d'utilisateur pour la source JDBC.
write_statement
str
Requête SQL utilisée pour insérer des enregistrements dans le récepteur JDBC.
Étapes suivantes
Pour en savoir plus et obtenir des exemples de code, consultez les documents suivants :
Sauf indication contraire, le contenu de cette page est régi par une licence Creative Commons Attribution 4.0, et les échantillons de code sont régis par une licence Apache 2.0. Pour en savoir plus, consultez les Règles du site Google Developers. Java est une marque déposée d'Oracle et/ou de ses sociétés affiliées.
Dernière mise à jour le 2026/04/11 (UTC).
[[["Facile à comprendre","easyToUnderstand","thumb-up"],["J'ai pu résoudre mon problème","solvedMyProblem","thumb-up"],["Autre","otherUp","thumb-up"]],[["Difficile à comprendre","hardToUnderstand","thumb-down"],["Informations ou exemple de code incorrects","incorrectInformationOrSampleCode","thumb-down"],["Il n'y a pas l'information/les exemples dont j'ai besoin","missingTheInformationSamplesINeed","thumb-down"],["Problème de traduction","translationIssue","thumb-down"],["Autre","otherDown","thumb-down"]],["Dernière mise à jour le 2026/04/11 (UTC)."],[],[]]