Early Access: The content on this website is provided for informational purposes only in connection with pre-General Availability Qlik Products.
All content is subject to change and is provided without warranty.
Accéder au contenu principal Passer au contenu complémentaire

Amazon S3  

Amazon Simple Storage Service (Amazon S3) est un service de stockage d'objets qui offre une évolutivité, une disponibilité des données, une sécurité et des performances leaders de l'industrie.

Préparation pour l'authentification

Pour pouvoir accéder à vos données, vous devez authentifier la connexion à l'aide des informations d'identification de votre compte.

Note InformationsAssurez-vous que le compte que vous utilisez dispose d'un accès en lecture sur les tables à récupérer.

Pour vous connecter à Amazon S3, vous devez disposer d'autorisations dans AWS Identity Access Management (IAM) qui vous permettent de créer des stratégies et des rôles et d'associer des stratégies à des rôles. Cela est nécessaire pour accorder l'autorisation à votre compartiment S3 :

Création d'une stratégie IAM

Une stratégie IAM est un langage de stratégie d'accès basé sur JSON qui permet de gérer les autorisations d'accès aux ressources d'un compartiment.

Autorisations Amazon S3
Noms d'autorisation Opération Description
s3:GetObject Objet GET

Permet d'extraire des objets d'Amazon S3.

s3:GetObjectObjet HEAD

Permet de récupérer les métadonnées d'un objet sans renvoyer l'objet lui-même.

s3:ListBucket Compartiment GET (Liste d'objets)

Permet le renvoi d'une partie ou de la totalité (jusqu'à 1 000) des objets contenus dans un compartiment.

s3:ListBucket Compartiment HEAD

Utilisé pour déterminer si un compartiment existe et si son accès est autorisé.

Pour créer la stratégie IAM :

  1. Dans AWS, accédez au service IAM en cliquant sur le menu Services et en saisissant IAM.
  2. Cliquez sur IAM une fois que cela s'affiche dans les résultats.
  3. Cliquez sur Stratégies dans le menu situé à gauche de la page.
  4. Cliquez sur Créer une stratégie.
  5. Sur la page Créer une stratégie, cliquez sur l'onglet JSON.
  6. Sélectionnez tout ce qui se trouve actuellement dans le champ de texte et supprimez-le.
  7. Dans le champ de texte, collez le JSON suivant et remplacez MyBucketName par le nom de votre compartiment :
    {
        "Version": "2012-10-17",
        "Statement": [
            {
                "Sid": "",
                "Effect": "Allow",
                "Action": [
                "s3:GetObject",
                "s3:ListBucket"
                ],
                "Resource": [
                "arn:aws:s3:::MyBucketName",
                "arn:aws:s3:::MyBucketName/*"
                ]
            }
        ]
    }
  8. Cliquez sur Vérifier la stratégie.
  9. Sur la page Vérifier la stratégie, donnez un nom à la stratégie. Par exemple : qlik_amazon_s3.
  10. Cliquez sur Créer une stratégie.

Création d'un rôle IAM

Note Informations

Pour effectuer cette étape, vous devez disposer des autorisations AWS IAM suivantes : CreateRole et AttachRolePolicy. Pour plus d'informations, consultez la documentation d'Amazon.

Si vous créez plusieurs intégrations Amazon S3, vous devez effectuer cette étape pour chaque intégration que vous connectez.

  1. Dans AWS, accédez à la page Rôles IAM.
  2. Cliquez sur Créer un rôle.
  3. Sur la page Créer un rôle :
    1. Dans la section Sélectionner le type d'entité fiable, cliquez sur l'option Un autre compte AWS.
    2. Dans le champ ID du compte, collez 338144066592.
    3. Dans la section Options, cochez la case Demander un ID externe.
    4. Dans le champ ID externe qui s'affiche, collez qlik_connection_<tenant-id> et remplacez <tenant-id> par votre ID client.

      Pour trouver votre ID client, consultez Recherche d'informations sur le client.

    5. Cliquez sur Suivant : Autorisations.
  4. Sur la page Associer des autorisations :
    1. Recherchez la stratégie que vous avez créée à la section Création d'une stratégie IAM.
    2. Une fois que vous l'avez trouvée, cochez la case correspondante dans le tableau.
    3. Cliquez sur Suivant : Balises.
  5. Si vous souhaitez saisir des balises, faites-le sur la page Ajouter des balises. Sinon, cliquez sur Suivant : Vérifier.
  6. Sur la page Vérifier :
    1. Dans le champ Nom de rôle, collez qlik_s3_<tenant-id> et remplacez <tenant-id> par votre ID client.

      Pour trouver votre ID client, consultez Recherche d'informations sur le client.

    2. Dans le champ Description du rôle, saisissez une description. Par exemple : Qlik role for Amazon S3 integration.
    3. Cliquez sur Créer un rôle.

Définition du modèle de recherche

Le champ Modèle de recherche définit les critères de recherche que Qlik doit utiliser pour sélectionner et répliquer des fichiers. Ce champ accepte les expressions régulières, qui peuvent être utilisées pour inclure un seul ou plusieurs fichiers.

Lorsque vous créez un modèle de recherche, gardez à l'esprit les points suivants :

  • Lorsque vous incluez plusieurs fichiers pour une même table, chaque fichier doit avoir les mêmes valeurs de ligne d'en-tête.
  • Les caractères spéciaux tels que les points (.) ont une signification particulière dans les expressions régulières. Pour une correspondance exacte, ils doivent être échappés. Par exemple : .\
  • Qlik utilise Python pour les expressions régulières, dont la syntaxe peut varier par rapport à d'autres variétés. Essayez d'utiliser PyRegex pour tester vos expressions avant d'enregistrer l'intégration.
  • Les modèles de recherche doivent tenir compte de la manière dont les données des fichiers sont mises à jour. Prenez les exemples suivants :
Scénario Fichier unique, mis à jour périodiquement Plusieurs fichiers, générés quotidiennement
Mode de mise à jour Un fichier JSONL unique est périodiquement mis à jour en fonction des nouvelles données et des données mises à jour des clients. Un nouveau fichier CSV contenant les nouvelles données et les données mises à jour des clients est créé chaque jour. Les anciens fichiers ne sont jamais mis à jour après leur création.
Nom de fichier customers.jsonl customers-[STRING].csv, où [STRING] est une chaîne aléatoire unique
Modèle de recherche

Comme il n'existera jamais qu'un seul fichier, vous pouvez saisir le nom exact du fichier dans votre compartiment S3 :

customers\.jsonl

Pour vous assurer que les nouveaux fichiers et les fichiers mis à jour sont identifiés, vous devez saisir un modèle de recherche correspondant à tous les fichiers commençant par customers, quelle que soit la chaîne du nom de fichier :

(customers-).*\.csv
Correspondance customer.jsonl, exactement
  • customers-reQDSwNG6U.csv
  • customers-xaPTXfN4tD.csv
  • customers-MBJMhCbNCp.csv
  • , etc.

Exigences en matière de fichiers

En-tête de la première ligne (fichiers CSV uniquement)
  • Chaque fichier doit comporter un en-tête de première ligne contenant les noms des colonnes. La première ligne d'un fichier est considérée comme la ligne d'en-tête et présente ces valeurs sous forme de colonnes disponibles pour la sélection.
  • Fichiers ayant les mêmes valeurs d'en-tête de première ligne, si plusieurs fichiers sont inclus dans une table. L'intégration Amazon S3 vous permet de mapper plusieurs fichiers vers une seule table cible. Les valeurs de la ligne d'en-tête sont utilisées pour déterminer le schéma d'une table. Pour obtenir des résultats optimaux, chaque fichier doit avoir les mêmes valeurs de ligne d'en-tête.

    Cela est différent de la configuration de plusieurs tables. Vous trouverez des exemples dans la section Définition du modèle de recherche.

Types de fichiers
  • CSV (.csv)
  • Text (.txt)
  • JSONL (.jsonl)
Types de compression

Ces fichiers doivent être correctement compressés, sinon des erreurs se produiront lors de l'extraction.

  • Fichiers compressés gzip (.gz)
Délimiteurs (fichiers CSV uniquement)
  • Virgule (,)
  • Tabulation (/t)
  • Pipe/Barre verticale (|)
  • Point-virgule (;)
Chiffrement de caractères

UTF-8

Création de la connexion

Pour plus d'informations, consultez Connexion à des applications SaaS.

  1. Complétez les propriétés de connexion requises.
  2. Fournissez un nom pour la connexion dans Nom de la connexion.

  3. Sélectionnez Ouvrir les métadonnées de connexion pour définir les métadonnées de la connexion lors de sa création.

  4. Cliquez sur Créer.

Paramètres de connexion
Paramètre Description
Passerelle de données

Sélectionnez une Data Movement gateway 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 Data Movement gateway. Si vous avez un autre niveau d'abonnement et si vous ne souhaitez pas utiliser Data Movement gateway, sélectionnez Aucune.

Pour des informations sur les avantages de Data Movement gateway et les cas d'utilisation qui la nécessitent, consultez Qlik Data Gateway - Data Movement.

Date de début

Saisissez la date, au format MM/DD/YYYY, à partir de laquelle les données doivent être répliquées de votre source vers votre cible.

Compartiment S3 Nom du compartiment S3.
ID de compte AWS

ID externe dans AWS. Consultez Préparation pour l'authentification.

Le modèle est le suivant : qlik_connection<tenant-id>.

Modèle de recherche Saisissez les fichiers à inclure dans votre table. Vous pouvez saisir un seul nom de fichier ou une expression régulière.

Exemple : users\*.csvproducts\*.jsonl.

Répertoire Limitez la recherche au chemin d'accès à ce répertoire. Lorsque cette option est définie, seuls les fichiers se trouvant à cet emplacement feront l'objet d'une recherche et ceux qui correspondent au modèle de recherche seront sélectionnés. Vous ne pouvez pas utiliser d'expression régulière.

Exemple : csv-exports-folder ou employee_jsonl_exports.

Configuration d'une table

Configurez une table en spécifiant les fichiers à inclure.

Vous pouvez configurer plusieurs tables.

Nom de table Nom de la table.

Chaque cible a ses propres règles en matière de dénomination des tables. Par exemple, les noms de table Amazon Redshift ne peuvent pas dépasser 127 caractères.

Clé primaire Saisissez la clé primaire pour identifier des lignes ou des enregistrements uniques. Si vous saisissez plusieurs clés, séparez les valeurs par des virgules.
  • Pour les fichiers CSV, saisissez les champs d'en-tête ou les noms de colonne.
  • Pour les fichiers JSONL, saisissez les noms d'attribut ou les clés d'objet.

Exemple : id, name.

Spécifier les champs datetime Saisissez les valeurs qui doivent apparaître comme datetime au lieu d'une chaîne dans votre table.

Exemple : created_at, modified_at.

Délimiteur Sélectionnez le délimiteur dans la liste déroulante.

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 – faites-le-nous savoir.