Google Cloud Storage
Google Cloud Storage est le service de stockage d'objets unifié de Google pour le stockage des et l'accès aux données sur l'infrastructure Google Cloud. Il offre une haute disponibilité, une redondance globale et s'intègre à l'écosystème Google Cloud plus large.
Qlik Talend Cloud utilise un compte de service Google Cloud avec un accès en lecture sur le compartiment cible pour se connecter à Google Cloud Storage (GCS). Le connecteur récupère les fichiers auprès du compartiment spécifié, découvre automatiquement les schémas en échantillonnant le contenu des fichiers et effectue une réplication de données incrémentielle basée sur les horodatages de modification des fichiers.
Préparation pour l'authentification
Pour pouvoir accéder à vos données, vous devez authentifier la connexion à l'aide des identifiants de votre compte.
Pour pouvoir configurer votre compte Google Cloud Storage, vous avez besoin des éléments suivants :
- Un projet Google Cloud Platform (GCP) avec l'API Cloud Storage activée.
- Un compartiment Google Cloud Storage (GCS) contenant les fichiers à répliquer.
- Un compte de service avec un accès en lecture sur le compartiment.
Le rôle recommandé est Storage Object Viewer (
roles/storage.objectViewer), qui accorde les autorisationsstorage.objects.getetstorage.objects.listrequises. Pour plus d'informations, consultez la documentation sur les rôles IAM Google Cloud Storage. - Un fichier de clé JSON de compte de service téléchargé pour le compte de service.
Pour créer un compte de service et récupérer vos identifiants :
- Connectez-vous à votre compte Google Cloud.
- Accédez à IAM & Admin > Service Accounts.
- Cliquez sur Create Service Account.
- Saisissez un nom et une description pour le compte de service, puis cliquez sur Create and Continue.
- Attribuez au compte de service le rôle Storage Object Viewer ou un rôle personnalisé disposant d'autorisations
storage.objects.getetstorage.objects.list. - Cliquez sur Continue et sur Done.
- Dans le compte de service que vous venez de créer, cliquez sur le menu Actions.
- Accédez à Manage keys > Add key > Create new key.
- Sélectionnez JSON et cliquez sur Create.
Le fichier de clé JSON est téléchargé directement sur votre poste. Ce fichier inclut les champs
project_id,client_email, etprivate_keynécessaires pour établir la connexion.Vous ne pouvez télécharger le fichier de clé qu'une seule fois. Assurez-vous de le stocker en lieu sûr et de le sauvegarder, car il donne accès à vos ressources Google Cloud.
Formats de fichier supportés
- Texte délimité : CSV, TSV, PSV, TXT (avec délimiteur configurable)
- JSON Lines
.jsonl - Parquet (
.parquet) - Avro (
.avro) - Fichiers compressés au format gzip (
.gz) contenant l'un des formats ci-dessus - Archives ZIP contenant des fichiers CSV, JSON Lines, TXT, TSV, PSV ou Gzip
Création de la connexion
Pour plus d'informations, consultez Connexion à des applications SaaS.
- Complétez les propriétés de connexion requises.
-
Fournissez un nom pour la connexion dans Nom de la connexion.
-
Sélectionnez Ouvrir les métadonnées de connexion pour définir les métadonnées de la connexion lors de sa création.
-
Cliquez sur Créer.
| Paramètre | Description |
|---|---|
| Data gateway |
Sélectionnez une Passerelle de déplacement des données si cela est nécessaire pour votre cas d'utilisation. Note Informations
Ce champ n'est pas disponible avec l'abonnement Démarreur Qlik Talend Cloud, car il ne supporte pas Passerelle de déplacement des données. Si vous avez un autre niveau d'abonnement et si vous ne souhaitez pas utiliser Passerelle de déplacement des données, sélectionnez Aucune. Pour des informations sur les avantages de Passerelle de déplacement des données et les cas d'utilisation qui la nécessitent, consultez Passerelle de données Qlik - Déplacement des données. |
| Start Date |
Saisissez la date, au format |
| Client Email | E-mail client du fichier de clé JSON du compte de service. |
| Project ID | ID de projet du fichier de clé JSON du compte de service. |
| Bucket | Nom du compartiment Google Cloud Storage (GCS) dans lequel les fichiers sont stockés, par exemple, my-gcs-bucket. N'incluez pas le préfixe |
| Tables | Configurez les tables de sorte à pouvoir déterminer les fichiers qui sont lus et la manière dont leur contenu est interprété. Chaque définition de table comprend un modèle de recherche de fichiers, un nom de table et des paramètres facultatifs pour un comportement avancé. |
| Private Key | Clé privée du fichier de clé JSON du compte de service. |
Configuration d'une table
Chaque entrée de la configuration de table spécifie une table logique créée à partir de fichiers dans le compartiment cible. Vous pouvez configurer les propriétés suivantes pour chaque table :
| Propriété | Obligatoire ou facultatif | Description |
|---|---|---|
| Table Name | Obligatoire | Spécifiez un nom pour la table logique, par exemple, my_orders_csv. Ce nom apparaîtra comme le nom du flux dans Qlik Talend Cloud. |
| Search Pattern | Obligatoire | Saisissez une expression régulière correspondant aux noms de fichier, par exemple, .csv$ pour sélectionner tous les fichiers CSV. |
| Search Prefix | Facultatif | Fournissez un préfixe de chemin d'accès dans le compartiment pour affiner la recherche de fichiers, par exemple exports/orders/. L'utilisation d'un préfixe améliore les performances en limitant le nombre de fichiers analysés. |
| Key Properties | Facultatif | Répertoriez un ou plusieurs noms de colonne, séparés par des virgules, pour définir la clé primaire. Par exemple : id ou id,date. |
| Date Overrides | Facultatif | Répertoriez les noms de colonne, séparés par des virgules, à traiter comme des champs date-time. Utilisez cette option si ces champs ne sont pas automatiquement détectés lors de la découverte de schéma. |
| Delimiter | Facultatif | Spécifiez le caractère qui sépare les valeurs dans vos fichiers. Par défaut, il s'agit de , (virgule). Utilisez \t pour les fichiers délimités par des tabulations (TSV) ou | pour les fichiers séparés par des barres verticales (PSV). Si cette valeur est laissée vide, le système détecte automatiquement le délimiteur en fonction de l'extension de fichier. |
Tables répliquées
Les tables sont créées en fonction de la configuration de table (voir ci-dessus). Chaque table correspond à un ensemble de fichiers dans le compartiment Google Cloud Storage (GCS) qui correspondent à la fois au modèle de recherche spécifié et à tout préfixe facultatif. Le connecteur découvre automatiquement les schémas en échantillonnant jusqu'à cinq fichiers par table, en lisant une ligne toutes les cinq lignes, avec un maximum de 1 000 enregistrements par fichier.
La réplication est incrémentielle et utilise les horodatages de modification des fichiers pour suivre les modifications. Lors de chaque extraction, le connecteur ne traite que les fichiers qui ont été modifiés depuis la dernière synchronisation aboutie, telle qu'enregistrée par le signet de synchronisation.
Les colonnes système suivantes sont ajoutées à chaque table par défaut :
| Colonne | Description |
|---|---|
_sdc_source_bucket
|
Nom du compartiment Google Cloud Storage (GCS) dans lequel l'enregistrement a été lu. |
_sdc_source_file
|
Chemin d'accès complet au fichier contenant l'enregistrement. |
_sdc_source_lineno
|
Numéro de ligne de l'enregistrement dans le fichier. |
_sdc_extra
|
Toutes les colonnes supplémentaires trouvées lors de l'analyse qui ne correspondent pas au schéma découvert. S'applique uniquement aux fichiers JSONL. |
Limitations et considérations générales
- Les identifiants de compte de service (
project_id,client_email,private_key) doivent être fournis comme des valeurs individuelles extraites du fichier de clé JSON ; le chargement de fichier n'est pas supporté. - Les fichiers compressés au format gzip (
.gz) sont supportés. Le connecteur lit le nom de fichier original de l'en-tête gzip pour déterminer le format de fichier interne. Les fichiers gzip créés avec--no-name(sans nom de fichier stocké dans l'en-tête) sont ignorés. - La compression imbriquée (par exemple, un fichier
.gzà l'intérieur d'un autre.gzou un fichier.zipà l'intérieur d'un autre.zip) n'est pas supportée. Ces fichiers sont ignorés. - Les fichiers portant l'extension
.csv,.txt,.tsv,.psvou.jsonlsont vérifiés, à la recherche d'octets magiques gzip, et sont décompressés s'ils sont compressés au format gzip, même si le fichier n'a pas d'extension.gz. - Le champ
search_patternutilise la syntaxe des expressions régulières et non les modèles glob. Par exemple, utilisez\.csv$au lieu de*.csv. - Le connecteur intègre une logique de nouvelle tentative intégrée avec un backoff exponentiel pour les limites de débit d'API Google Cloud Storage (GCS) (
429) et les erreurs de serveur transitoires (500,502,503,504). Jusqu'à cinq tentatives sont effectuées avant l'échec. - Les fichiers sans extension reconnue sont ignorés et un avertissement est émis.