Paramétrez Openflow Connector for Google Sheets

Note

Le connecteur est soumis aux conditions d’utilisation du connecteur.

Cette rubrique décrit les étapes pour paramétrer Openflow Connector for Google Sheets.

Conditions préalables

  1. Assurez-vous d’avoir consulté À propos de Openflow Connector for Google Sheets.

  2. Assurez-vous que vous avez paramétré Openflow.

Obtenir les identifiants de connexion

En tant qu’administrateur de Google Cloud, effectuez les tâches suivantes :

  1. Assurez-vous que vous disposez des éléments suivants :

  2. Activer la création de clés de compte de service. Google désactive par défaut la création de clés de compte de service. Cette politique de création de clés doit être désactivée pour que Snowflake Openflow utilise le compte de service JSON. Pour activer la création de clés de compte de service, effectuez les tâches suivantes :

    1. Connectez-vous à l’adresse Google Cloud Console à l’aide d’un compte de superadministrateur ayant le rôle d’administrateur des politiques d’organisation.

    2. Assurez-vous que vous êtes dans le projet associé à votre organisation, et non dans le projet de votre organisation.

    3. Sélectionnez Organization Policies.

    4. Sélectionnez la politique Disable service account key creation.

    5. Sélectionnez Manage Policy et désactivez l’application de la loi.

    6. Sélectionnez Set Policy.

  3. Créez un compte de service et une clé.

  4. Partagez la feuille de calcul Google Sheets avec l’adresse électronique du compte de service. L’adresse électronique se trouve dans le fichier du compte de service JSON sous le champ client_email. Paramétrez les autorisations de partage dans la visionneuse.

Paramétrage du compte Snowflake

En tant qu’administrateur de compte Snowflake, effectuez les tâches suivantes :

  1. Créez un nouveau rôle ou utilisez un rôle existant et accordez le Privilèges de base de données.

  2. Créez un nouvel utilisateur du service Snowflake avec le type SERVICE.

  3. Autorisez l’utilisateur du service Snowflake le rôle que vous avez créé dans les étapes précédentes.

  4. Configurez avec l’authentification par paire de clés pour l’utilisateur de Snowflake SERVICE de l’étape 2.

  5. Snowflake recommande vivement cette étape. Configurez un gestionnaire de secrets pris en charge par Openflow, par exemple AWS, Azure et Hashicorp, et stockez les clés publiques et privées dans le magasin de secrets.

    Note

    Si, pour une raison quelconque, vous ne souhaitez pas utiliser un gestionnaire de secrets, il vous incombe de protéger les fichiers de clés publiques et privées utilisés pour l’authentification par paires de clés conformément aux politiques de sécurité de votre organisation.

    1. Une fois le gestionnaire de secrets configuré, déterminez comment vous vous y authentifierez. Sur AWS, il est recommandé d’utiliser le rôle de l’instance EC2 associée à Openflow, car de cette manière, aucun autre secret ne doit être conservé.

    2. Dans Openflow, configurez un fournisseur de paramètres associé à ce gestionnaire de secrets, à partir du menu hamburger en haut à droite. Naviguez vers Controller Settings » Parameter Provider et récupérez les valeurs de vos paramètres.

    3. À ce stade, tous les identifiants peuvent être référencés avec les chemins de paramètres associés et aucune valeur sensible ne doit être conservée dans Openflow.

  6. Si d’autres utilisateurs de Snowflake ont besoin d’accéder aux documents bruts ingérés et aux tables ingérées par le connecteur (par exemple, pour un traitement personnalisé dans Snowflake), accordez à ces utilisateurs le rôle créé à l’étape 1.

  7. Désignez un entrepôt à utiliser par le connecteur. Commencez par la taille d’entrepôt la plus petite, puis faites des essais en fonction du nombre de tables répliquées et de la quantité de données transférées. Les tables de grande taille s’adaptent généralement mieux aux entrepôts multi-clusters, plutôt qu’aux entrepôts de grande taille.

Définir le connecteur

En tant qu’ingénieur des données, effectuez les tâches suivantes pour installer et configurer le connecteur :

Installer le connecteur

  1. Naviguez jusqu’à la page d’aperçu d’Openflow. Dans la section Featured connectors, sélectionnez View more connectors.

  2. Sur la page des connecteurs Openflow, trouvez le connecteur et sélectionnez Add to runtime.

  3. Dans la boîte de dialogue Select runtime, sélectionnez votre environnement d’exécution dans la liste déroulante Available runtimes.

  4. Sélectionnez Add.

    Note

    Avant d’installer le connecteur, assurez-vous que vous avez créé une base de données et un schéma dans Snowflake pour que le connecteur puisse stocker les données ingérées.

  5. Authentifiez-vous au déploiement avec les identifiants de votre compte Snowflake et sélectionnez Allow lorsque vous êtes invité à autoriser l’application d’exécution à accéder à votre compte Snowflake. Le processus d’installation du connecteur prend quelques minutes.

  6. Authentifiez-vous auprès de l’environnement d’exécution avec les identifiants de votre compte Snowflake.

Le canevas Openflow apparaît avec le groupe de processus du connecteur ajouté.

Configuration du connecteur

  1. Cliquez avec le bouton droit de la souris sur le groupe de processus importé et sélectionnez Parameters.

  2. Renseignez les valeurs des paramètres requis comme décrit dans Paramètres de débit.

Paramètres de débit

La configuration de la définition du connecteur est divisée en trois contextes de paramètres :

Note

Le contexte de paramètres Google Sheets Ingestion Parameters contient des détails spécifiques à la feuille de calcul. Vous devez donc créer de nouveaux contextes de paramètres pour chaque nouvelle feuille de calcul et chaque nouveau groupe de processus.

Pour créer un nouveau contexte de paramètre, allez dans le menu Openflow Canvas, sélectionnez Parameter Contexts et ajoutez un nouveau contexte de paramètre. Il hérite des paramètres des contextes de paramètres de destination et de paramètres de source de Google Sheets.

Les tables suivantes décrivent les paramètres de flux que vous pouvez configurer en fonction des contextes de paramètres :

Paramètres de destination de Google Sheets

Paramètre

Description

Base de données de destination

La base de données dans laquelle les données seront conservées. Elle doit déjà exister dans Snowflake

Schéma de destination

Le schéma dans lequel les données seront conservées. Elle doit déjà exister dans Snowflake

Identificateur de compte Snowflake

Nom du compte Snowflake formaté comme suit : [[nom de l’organisation] -[[nom du compte] où les données seront conservées

Stratégie d’authentification Snowflake

Stratégie d’authentification auprès de Snowflake. Valeurs possibles : SNOWFLAKE_SESSION_TOKEN - lorsque nous exécutons le flux sur SPCS, KEY_PAIR lorsque nous voulons configurer l’accès à l’aide d’une clé privée

Clé privée de Snowflake

La clé privée RSA utilisée pour l’authentification. La clé RSA doit être formatée selon les normes PKCS8 et comporter les en-têtes et pieds de page standard PEM. Notez que vous devez définir soit le fichier de clé privée de Snowflake, soit la clé privée de Snowflake

Fichier de clé privée de Snowflake

Le fichier qui contient la clé privée RSA utilisée pour l’authentification à Snowflake, formaté selon les normes PKCS8 et comportant les en-têtes et pieds de page standard PEM. La ligne d’en-tête commence par -----BEGIN PRIVATE. Cochez la case Reference asset pour télécharger le fichier de la clé privée.

Mot de passe de la clé privée de Snowflake

Le mot de passe associé au fichier de la clé privée de Snowflake

Rôle Snowflake

Rôle Snowflake utilisé lors de l’exécution de la requête

Nom d’utilisateur Snowflake

Nom d’utilisateur utilisé pour se connecter à l’instance de Snowflake

Entrepôt Snowflake

L’entrepôt de Snowflake est utilisé pour exécuter des requêtes

Paramètres de la source de Google Sheets

Paramètre

Description

Compte de service JSON

Contenu du fichier contenant les identifiants du compte de service, tels que client_id, client_email et private_key. Copiez tout le contenu du fichier.

Paramètres d’ingestion de Google Sheets

La table suivante ne répertorie que les paramètres qui ne sont pas hérités d’autres contextes de paramètres.

Paramètre

Description

Option de rendu de la date et de l’heure

Détermine la manière dont les dates doivent être affichées en sortie. Vous pouvez sélectionner l’une des options suivantes : SERIAL_NUMBER et FORMATTED_STRING. Sélectionnez SERIAL_NUMBER uniquement lorsque le paramètre Option de rendu des valeurs est ensemble avec UNFORMATTED_VALUE. Pour plus d’informations, voir DateTimeRenderOption.

Base de données de destination

La base de données de destination dans laquelle la table de destination est créée.

Schéma de destination

Le schéma de destination dans lequel la table de destination est créée.

Préfixe de la table de destination

Le préfixe de la table de destination est l’endroit où sont stockées les données du rapport extraites de Google Sheets. Le connecteur crée une table de destination pour chaque plage. Si aucune plage n’est fournie, les noms de feuilles sont utilisés comme identificateurs de tables. La première ligne d’une feuille représente les noms des colonnes de la table de destination.

Plages

La liste des plages à récupérer dans la feuille de calcul. Si aucune plage n’est spécifiée, toutes les feuilles de la feuille de calcul spécifiée seront téléchargées. Fournissez chaque plage dans la notation A1 ou R1C1, séparée par une virgule. Par exemple : Sheet1!A1:B2,Sheet2!D4:E5,Sheet3.

Exécuter la planification

Exécutez une planification sur laquelle les données sont récupérées de Google Sheets et sauvegardées dans Snowflake. Par défaut, la stratégie de planification basée sur un temporisateur est utilisée et l’utilisateur spécifie un intervalle, par exemple 8h.

Feuille de calcul ID

L’identificateur unique https://developers.google.com/sheets/api/guides/concepts d’une feuille de calcul. Vous le trouverez dans l’URL de la feuille de calcul.

Option de rendu de valeur

Détermine la manière dont les valeurs doivent être rendues en sortie. Vous pouvez sélectionner l’une des options suivantes : FORMATTED_VALUE et UNFORMATTED_VALUE. Si vous sélectionnez FORMATTED_VALUE, toutes les colonnes de la table de destination sont de type VARCHAR. Pour plus d’informations, voir ValueRenderOption.

Note

L’identificateur de la table de destination est une combinaison du préfixe de la table de destination et du nom de la plage et doit être unique. Si vous téléchargez des données à partir de plusieurs feuilles de calcul, ou de feuilles uniques, et que les noms des plages ne sont pas uniques, vous devez alors spécifier un préfixe de table de destination unique pour chaque flux. Le connecteur peut échouer, écrasant les tables de destination existantes, si les noms des tables de destination ne sont pas uniques.

Exécutez le flux

  1. Cliquez avec le bouton droit de la souris sur l’avion et sélectionnez Enable all Controller Services.

  2. Cliquez avec le bouton droit de la souris sur le groupe de processus importé et sélectionnez Start. Le connecteur démarre l’ingestion des données.

Note

Les fichiers importés . xlsx doivent être au format Google Sheets. Si vous importez des fichiers, assurez-vous que le fichier est converti au format Google Sheets avant d’exécuter les flux. Les feuilles de calcul dans un format autre que Google Sheets ne peuvent pas être lues. Pour plus d’informations, consultez Convertir les fichiers au format Google Sheets.