Accéder au contenu principal Passer au contenu complémentaire

Base de données Google Cloud BigQuery (via JDBC) - Import

Availability-note AWS

Prérequis du pont

Ce pont :
  • nécessite un accès à Internet vers https://repo.maven.apache.org/maven2/ et/ou d'autres sites d'outils permettant de télécharger des pilotes dans <TDC_HOME>/data/download/MIMB/.

Spécifications du pont

Fournisseur Google
Nom de l'outil Base de données Cloud BigQuery
Version de l'outil 2.0.0
Site Web de l'outil http://developers.google.com/bigquery/ (uniquement en anglais)
Méthodologie supportée [Base de données relationnelle] Multimodèle, Data Store (Modèle de données physique) via une API Java
Profiling de données
Collecte incrémentale
Collecte multi-modèle
Navigation dans le référentiel distant pour sélectionner un modèle

SPÉCIFICATIONS
Outil : Google/Base de données Cloud BigQuery version 2.0.0 via l'API JDBC
Consultez http://developers.google.com/bigquery/
Métadonnées : [Base de données relationnelle] Multimodèle, Data Store (Modèle de données physique)
Composant : GoogleBigQuery version 11.2.0

AVERTISSEMENT
Ce pont d'import requiert un accès à Internet pour télécharger les bibliothèques tierces :
- par exemple https://repo.maven.apache.org/maven2/ pour télécharger les bibliothèques tierces open source,
- et plus de sites pour d'autres logiciels tiers, comme les pilotes JDBC spécifiques pour les bases de données.

Les bibliothèques tierces téléchargées sont stockées dans $HOME/data/download/MIMB/
- Si le protocole HTTPS échoue, le pont d'import essaye ensuite avec HTTP.
- Si un proxy est utilisé pour accéder à Internet, vous devez configurer ce proxy dans l'environnement JRE (voir l'option -j dans le paramètre Divers).
- Si le pont d'import n'a pas d'accès à Internet, le répertoire $HOME/data/download/MIMB/ peut être copié depuis un autre serveur qui a accès à Internet, où la commande $HOME/bin/MIMB.sh (ou .bat) -d peut être utilisée pour télécharger en une fois toutes les bibliothèques tierces utilisées par tous les ponts.

En exécutant ce pont d'import, vous reconnaissez être responsable des conditions d'utilisation et de toute autre faille de sécurité potentielle liées au téléchargement de ces bibliothèques logicielles tierces.

VUE D'ENSEMBLE
Ce pont d'import établit une connexion aux serveurs Google BigQuery afin d'extraire les métadonnées physiques.

PRÉREQUIS
Ce pont d'import utilise des fichiers JAR pour se connecter aux serveurs Google. Ces fichiers JAR sont généralement disponibles sur : https://cloud.google.com/bigquery/providers/simba-drivers.
Le pont d'import télécharge automatiquement le(s) pilote(s) requis dans le dossier _Install/data/download/MIMB.

Ce pont d'import utilise l'API Java native pour parser les métadonnées, en chargeant le pilote JDBC Simba.
Ce pont d'import supporte de manière facultative la découverte de métadonnées orientées données/le profiling de données et utilise le pilote JDBC BigQuery téléchargé depuis Google, par exemple :
data/download/MIMB/com.simba.googlebigquery/jdbc42/SimbaJDBCDriverforGoogleBigQuery42_1.3.0.1001

Consultez la section AUTORISATIONS ci-dessous.

AUTHENTIFICATION
n/a

AUTORISATIONS
Les ponts d'import sont garantis pour être en lecture seule uniquement et n'extraire que des métadonnées. C'est pour cette raison que l'utilisateur de ce pont d'import a besoin de beaucoup moins d'autorisations que les utilisateurs traditionnels devant lire/écrire des données.

Dans le cas d'une base de données Google BigQuery :
Ce pont d'import extrait les métadonnées en lisant les tables système de la base de données Google BigQuery (par ex. INFORMATION_SCHEMA). Notez que le pilote JDBC (et non le pont d'import) crée un Job BigQuery lorsqu'il doit lire ces tables système ou toute autre table. Ainsi, ce pont d'import requiert les rôles BigQuery Metadata Viewer et BigQuery Job User sur les projets. Consultez la documentation fournie à l'adresse suivante pour plus d'informations :
https://cloud.google.com/bigquery/docs/jobs-overview

Ce pont d'import utilise le protocole OAuth 2.0 pour accéder au service de BigQuery de Google. Il supporte actuellement l'authentification utilisant la "clé du compte de service".
La méthode d'authentification supporte un fichier de clé JSON ou P12. Vous pouvez spécifier le fichier au pont d'import à l'aide du paramètre Fichier de clé privée. Le fichier P12 est un ancien format qui nécessite que vous spécifiiez l'identifiant de votre compte de service dans le paramètre facultatif Identifiant du client du service.
Veuillez vous référer à la documentation fournie en suivant le lien ci-dessous pour créer un compte de service. Vous obtiendrez l'identifiant du client et le fichier de clé requis pour exécuter le pont d'import.
https://developers.google.com/bigquery/docs/authorization#service-accounts-server

FOIRE AUX QUESTIONS
n/a

LIMITATIONS
Consultez les limitations générales connues actuellement sur MIMB Known Limitations ou dans Documentation/ReadMe/MIMBKnownLimitations.html où elles sont regroupées

SUPPORT
Fournissez un package de dépannage avec :
- le log de débogage (peut être défini dans l'UI ou dans conf/conf.properties avec MIR_LOG_LEVEL=6)
- la sauvegarde des métadonnées si disponible (peut être configurée dans le paramètre Divers avec l'option -backup, même si cette option commune n'est pas implémentée pour tous les ponts pour des raisons techniques).


Paramètres du pont

Nom du paramètre Description Type Valeurs Défaut Périmètre
Emplacement du pilote Répertoire où se situent les fichiers des pilotes JDBC. Lorsque la valeur est vide (par défaut), le pont tente de télécharger les fichiers du pilote depuis Google.

Le nom de la classe du pilote par défaut est "com.simba.googlebigquery.jdbc42.DataSource".

Si le pilote spécifié a un nom de classe différent, spécifiez-le à l'aide de l'option -driver.className dans le paramètre Divers du pont.
RÉPERTOIRE      
Identifiant du client du service ID client pour le compte de service créé pour le pont d'import, par ex.
xyz@developer.gserviceaccount.com.
Cet identifiant de compte est requis en cas d'utilisation d'un fichier de clé P12.
Chaîne de caractères      
Fichier de clé privée Fichier de clé privée pour le compte de service créé pour le pont d'import.
Ce fichier doit être au format JSON ou P12 (avec une extension de fichier JSON ou P12).
P12 est un ancien format PKCS #12 (Public Key Cryptography Standard #12) qui nécessite que vous spécifiiez l'identifiant du compte de service dans le paramètre facultatif Identifiant du client du service.
Si vous utilisez la stratégie d'authentification Application Default Credentials (ADC), laissez la valeur de ce paramètre vide.
Fichier *.*    
Projets Les ID de projets entièrement qualifiés à importer se présentent sous forme de liste de valeurs séparées par une virgule/un point-virgule, par ex.
mydomain.com:myProject1, mydomain.com:myProject2
Notez que seul le premier projet de cette liste sera utilisé pour l'authentification de tous les autres projets de la liste.
Ainsi, certains projets de la liste peuvent ne pas être importés si l'identifiant fourni par le premier projet n'a pas accès aux autres projets listés.
Chaîne de caractères     Éléments obligatoires
Emplacements Liste des noms de régions (consultez https://cloud.google.com/bigquery/docs/locations) où sont situés les jeux de données. Par exemple, asia-northeast1,US,EU.
Un jeu de données se situe dans une région spécifique. Lorsque vous créez un jeu de données, vous pouvez spécifier son emplacement régional ou utiliser celui par défaut.
Ce paramètre vous permet de filtrer les jeux de données en vous basant sur leur emplacement.
Par défaut, la valeur du paramètre est vide, ce qui indique au pont d'importer des jeux de données situés dans l'emplacement US multirégional.
Cette option fonctionne uniquement avec le mode Multimodèle.
Chaîne de caractères      
Jeux de données Le sous-ensemble de jeux de données à importer exprimé sous forme de liste de jeux de données séparés par un point-virgule, par ex.
dataset1; dataset2

Tous les jeux de données sont importés si cette liste est vide.

Modèles de noms de jeux de données utilisant une syntaxe d'expression SQL LIKE :

- Syntaxe d'inclusion :
utilisant % ou *, par exemple :
A%; %B; %C%; D
- commençant par A ou
- finissant par B ou
- contenant C ou
- égal à D

- Syntaxe d'exclusion :
utilisant NOT, par exemple :
A%; %B; NOT %SYS; NOT 'SYS%'
- WHERE (name like A% or name like %B)
- et (name NOT like %SYS)
- et (name NOT like 'SYS%')

- Caractères spéciaux :
^ $ * + ? | \ ( ) [ ] { } espace blanc
entourez ce nom de crochets et échappez des caractères spéciaux, par ex.
OneWord%; [Two\sWords.*]; [Dollar\$]
REPOSITORY_SUBSET      
Informations concernant les procédures stockées Contrôle la quantité de détails importés depuis les procédures stockées :

"Signature"
Le nom et les paramètres des procédures stockées

"Code, signature"
Les éléments susmentionnés plus le code

"Lineage, code, signature (Lignage, code, signature)"
Les éléments susmentionnés plus le lignage de données dérivé du code

"None (Aucun)"
Les détails des procédures stockées ne sont pas inclus.
ÉNUMÉRATION
None (Aucun(e))
Signature
Code, signature
Lignage, code, signature
Signature  
Miscellaneous INTRODUCTION
Spécifiez les options Divers, commençant par un tiret et suivies éventuellement par des paramètres, par exemple :
-connection.cast MyDatabase1="MICROSOFT SQL SERVER"
Certaines options peuvent être utilisées plusieurs fois, si applicable, par exemple :
-connection.rename NewConnection1=OldConnection1 -connection.rename NewConnection2=OldConnection2;
La liste d'options pouvant être une longue chaîne, il est possible de la charger à partir d'un fichier qui doit être situé dans ${MODEL_BRIDGE_HOME}\data\MIMB\parameters et avoir l'extension .txt. Dans ce cas, toutes les options doivent être définies au sein de ce fichier comme seule valeur de ce paramètre, par exemple
ETL/Miscellaneous.txt

OPTIONS DE L'ENVIRONNEMENT JAVA
-java.memory <taille maximale de la mémoire Java> (anciennement -m)

1 Go par défaut sur un JRE de 64 bits ou tel que défini dans conf/conf.properties, par exemple
-java.memory 8G
-java.memory 8000M

-java.parameters <options de ligne de commande de Java Runtime Environment> (anciennement -j)

Cette option doit être la dernière dans le paramètre Divers car tout le texte après -java.parameters est passé tel quel à la JRE. Par ex.
-java.parameters -Dname=value -Xms1G
L'option suivante doit être définie lorsqu'un proxy est utilisé pour accéder à Internet (cela est essentiel pour accéder à https://repo.maven.apache.org/maven2/ et exceptionnellement à quelques autres sites d'outils) afin de télécharger les bibliothèques logicielles tierces nécessaires.
Note : La majorité des proxys sont relatifs au chiffrement (HTTPS) du trafic extérieur (à l'entreprise) et à la confiance en le trafic intérieur pouvant accéder au proxy via HTTP. Dans ce cas, une requête HTTPS atteint le proxy via HTTP où le proxy la chiffre en HTTPS.
-java.parameters -java.parameters -Dhttp.proxyHost=127.0.0.1 -Dhttp.proxyPort=3128 -Dhttp.proxyUser=user -Dhttp.proxyPassword=pass

OPTIONS D'IMPORT DU MODÈLE
-model.name <nom modèle>

Écrase le nom du modèle, par ex.
-model.name "My Model Name"

-prescript <nom script>

Cette option permet d'exécuter un script avant l'exécution du pont.
Le script doit se situer dans le répertoire bin (ou comme spécifié dans M_SCRIPT_PATH dans conf/conf.properties) et avoir une extension .bat ou .sh.
Le chemin d'accès au script ne doit pas inclure de symbole relatif au répertoire parent (..).
Le script doit retourner le code de sortie 0 pour indiquer un succès ou une autre valeur pour indiquer un échec.
Par exemple :
-prescript "script.bat arg1 arg2"

-postscript <nom script>

Cette option permet d'exécuter un script après l'exécution réussie du pont.
Le script doit se situer dans le répertoire bin (ou comme spécifié dans M_SCRIPT_PATH dans conf/conf.properties) et avoir une extension .bat ou .sh.
Le chemin d'accès au script ne doit pas inclure de symbole relatif au répertoire parent (..).
Le script doit retourner le code de sortie 0 pour indiquer un succès ou une autre valeur pour indiquer un échec.
Par exemple :
-postscript "script.bat arg1 arg2"

-cache.clear

Vide le cache avant l'import et va exécuter un import complet avec collecte incrémentale.

Si le modèle n'a pas été modifié et que le paramètre -cache.clear n'est pas utilisé (collecte incrémentale), une nouvelle version ne sera pas créée.
Si le modèle n'a pas été modifié et que le paramètre -cache.clear n'est pas utilisé (collecte incrémentale), une nouvelle version ne sera pas créée.

-backup <répertoire>

Cette option permet de sauvegarder les métadonnées d'entrée du pont à des fins de débogage. Le <répertoire> fourni doit être vide.

L'utilisation principale de cette option concerne les ponts d'import des data stores, en particulier les ponts d'import basés sur des bases de données JDBC.

Notez que cette option n'est pas opérationnelle sur certains ponts, notamment :
- les ponts d'import basés sur des fichiers (car des fichiers d'entrée peuvent être utilisés à la place)
- les ponts d'import de référentiels d'intégration de données/BI (car les outils natifs de sauvegarde du référentiel peuvent être utilisés à la place)
- Certains ponts d'import basés sur des API (par ex. basés sur COM) pour des raisons techniques.

OPTIONS DES CONNEXIONS DE DONNÉES
Les connexions de données sont produites par les ponts d'import, généralement à partir des outils ETL/DI et BI pour faire référence aux data stores sources et cibles qu'elles utilisent. Ces connexions de données sont ensuite utilisées par les outils de gestion des métadonnées pour connecter ces dernières (connexion des métadonnées) à leurs data stores réels (par exemple, bases de données, système de fichiers, etc.) afin de produire le lignage complet de flux de données et de l'analyse d'impact de bout en bout. Le nom des connexions de données doit être unique dans chaque modèle d'import. Les noms de connexion de données utilisés dans les outils de conception DI/BI sont utilisés quand cela est possible, sinon ils sont générés en étant courts mais significatifs, comme le nom de la base de données/du schéma, le chemin d'accès au système de fichiers ou l'URI (Uniform Resource Identifier). L'option suivante vous permet de manipuler les connexions. Ces options remplacent les options héritées -c, -cd et -cs.

-connection.cast ConnectionName=ConnectionType

Lance une connexion à une base de données générique (par exemple ODBC/JDBC) pour un type de base de données précis (par exemple ORACLE) pour une analyse SQL, par exemple
-connection.cast "My Database"="MICROSOFT SQL SERVER".
La liste des types de connexions aux data stores comprend :
ACCESS
APACHE CASSANDRA
DB2/UDB
DENODO
GOOGLE BIGQUERY
HIVE
MYSQL
NETEZZA
ORACLE
POSTGRESQL
PRESTO
REDSHIFT
SALESFORCE
SAP HANA
SNOWFLAKE
MICROSOFT SQL AZURE
MICROSOFT SQL SERVER
SYBASE SQL SERVER
SYBASE AS ENTERPRISE
TERADATA
VECTORWISE
HP VERTICA

-connection.rename OldConnection=NewConnection

Renomme une connexion existante, par exemple, par ex.
-connection.rename OldConnectionName=NewConnectionName
Plusieurs connexions de bases de données existantes peuvent être renommées et fusionnées en une nouvelle connexion de base de données, par exemple :
-connection.rename MySchema1=MyDatabase -connection.rename MySchema2=MyDatabase

-connection.split oldConnection.Schema1=newConnection

Scinde une connexion de base de données en une ou plusieurs connexions de base de données.
Une connexion de base de données peut être scindée en une connexion par schéma, par exemple :
-connection.split MyDatabase
Toutes les connexions de base de données peuvent être fractionnées en une connexion par schéma, par exemple :
-connection.split *
Une connexion de base de données peut être explicitement fractionnée en une nouvelle connexion de base de données en ajoutant un nom de schéma à une base de données, par exemple :
-connection.split MyDatabase.schema1=MySchema1

-connection.map SourcePath=DestinationPath

Mappe un chemin d'accès source à un chemin d'accès de destination. Cela est utile pour les connexions aux systèmes de fichiers lorsque différents chemins d'accès pointent vers le même objet (répertoire ou fichier).
Sur Hadoop, un processus peut écrire dans un fichier CSV spécifié avec le chemin d'accès complet HDFS, tandis qu'un autre processus lit d'une table Hive implémentée (externe) par le même fichier spécifié à l'aide d'un chemin d'accès relatif avec un nom et une extension de fichier par défaut, par exemple :
-connection.map /user1/folder=hdfs://host:8020/users/user1/folder/file.csv
Sous Linux, il peut être fait référence à un répertoire (ou à un fichier) donné tel que /data par plusieurs liens symboliques tels que /users/john et /users/paul, par exemple :
-connection.map /data=/users/John -connection.map /data=/users/paul
Sous Windows, il peut être fait référence à un répertoire donné tel que C:\data par plusieurs lecteurs réseau tels que M: et N:, par exemple :
-connection.map C:\data=M:\ -connection.map C:\data=N:\

-connection.casesensitive ConnectionName

Écrase les règles de rapprochement insensibles à la casse par défaut pour les identifiants d'objets dans la connexion spécifiée, si le type du data store détecté supporte cette configuration (par ex. Microsoft SQL Server, MySQL etc.), par exemple :
-connection.casesensitive "My Database"

-connection.level AggregationLevel

Spécifie le niveau d'agrégation pour les connexions externes, par exemple -connection.level catalog
Liste des valeurs supportées :
server (serveur)
catalog (catalogue)
schema (schéma)(par défaut)

OPTIONS GOOGLE BIGQUERY
-s

Importez les objets système ignorés par défaut.

-model.split (précédemment -multiModel)

Scinde un modèle de serveur volumineux en multi-modèles (p. ex. une base de données par modèle).
Avertissement : Ceci est une option du système gérée par l'application qui appelle ce pont d'import et qui ne doit pas être configurée par les utilisateurs.

-driver.className

Le nom complet (y compris le nom de package) de la classe Java qui implémente l'interface du pilote JDBC.

-driver.options "<option declaration>"

Options de connexion du pilote JDBC. Toutes les options fournies seront ajoutées à la chaîne de carctères de connexion au pilote JDBC.
exemples :
-driver.options "Timeout=100"
-driver.options "AllowLargeResults=1;Timeout=300;LogLevel=1"

-driver.url

La chaîne de connexion JDBC entièrement qualifiée. Elle écrase toutes les autres options de connexion du pont.

Chaîne de caractères      

 

Mapping du pont

Meta Integration Repository (MIR)
Métamodèle
(se base sur le standard OMG CWM)
"Base de données Google Cloud BigQuery (via JDBC)"
Métamodèle
Google BigQuery (Projet)
Mapping des commentaires
     
Attribut Colonne  
Description Description  
ExtraConstraint Contrainte  
InitialValue Valeur initiale  
Name (Nom) Name (Nom)  
NativeId Identifiant natif  
Facultatif Nullable  
PhysicalName Nom physique  
Position Position  
Classe Table, ENREGISTREMENT  
Description Description  
Name (Nom) Name (Nom)  
NativeId Identifiant natif  
PhysicalName Nom physique  
ClassDiagram Diagramme  
Description Description  
Name (Nom) Name (Nom)  
DatabaseSchema Dataset  
Description Description  
Name (Nom) Name (Nom)  
NativeId Identifiant natif  
PhysicalName Nom physique  
DesignPackage Zone de sujet  
Description Description  
Name (Nom) Name (Nom)  
Jointure Relation logique  
Description Description  
Name (Nom) Name (Nom)  
SQLViewAttribute ViewColumn  
Description Description  
InitialValue Valeur initiale  
Name (Nom) Name (Nom)  
NativeId Identifiant natif  
Facultatif Nullable  
PhysicalName Nom physique  
Position Position  
SQLViewEntity Visualiser  
Description Description  
Name (Nom) Name (Nom)  
NativeId Identifiant natif  
PhysicalName Nom physique  
ViewStatement Afficher l'instruction  
StoreModel Project (Projet)  
Author Auteur  
CreationTime Heure de création  
Description Description  
ModificationTime Heure de modification  
Modificateur Modificateur  
Name (Nom) Name (Nom)  
NativeId Identifiant natif  
PhysicalName Nom physique  
StoreType Type de magasin  
SystemMajorVersion Version majeure du système  
SystemMinorVersion Version mineure du système  
SystemReleaseVersion Version du système  
SystemType Type du système  
SystemTypeOld Ancien type du système  

Cette page vous a-t-elle aidé ?

Si vous rencontrez des problèmes sur cette page ou dans son contenu – une faute de frappe, une étape manquante ou une erreur technique – dites-nous comment nous améliorer !