Snowflake
Vous pouvez utiliser Snowflake comme plate-forme de données cible dans un pipeline de données ou une tâche de réplication. Dans un pipeline de données, il est possible d'effectuer différentes opérations ELT sur la plate-forme cible, notamment le stockage de données, la transformation de données, la création de mini-data warehouses et l'enregistrement de données. Par ailleurs, un tâche de réplication implique la réplication de données directement d'un système de source vers un système cible avec des fonctionnalités de transformation de base, mais sans support des opérations ELT..
La configuration de Snowflake comme cible implique les conditions suivantes :
- La configuration des Autorisations requises sur la base de données.
- L'installation du pilote requis. Notez que cela est obligatoire uniquement si vous vous connectez à Snowflake via Data Movement gateway.
- Configuration d'une connexion à Snowflake
Définition des propriétés de connexion
Pour configurer le connecteur, procédez comme suit :
-
Dans Connexions, cliquez sur Créer une connexion.
-
Sélectionnez le Snowflake connecteur cible et fournissez les paramètres suivants :
Data Movement gateway
Passerelle de données
Une Data Movement gateway est nécessaire uniquement si la base de données cible n'est pas accessible depuis Qlik Cloud et est accessible uniquement via un lien privé (par exemple, si elle est située dans un cloud privé virtuel). Si c'est le cas, sélectionnez la Data Movement gateway via laquelle vous souhaitez accéder à la base de données cible.
Suivant votre cas d'utilisation, il s'agira soit de la même Data Movement gateway que celle déployée pour déplacer des données provenant de la source de données, soit d'une autre.
Pour des informations sur les cas d'utilisation de Data Movement gateway, consultez Quand Data Movement gateway est-elle obligatoire ? et Cas d'utilisation courants.
Si la base de données cible est directement accessible depuis Qlik Cloud, sélectionnez Aucune.
Propriétés de connexion
-
Serveur : votre URL pour accéder à Snowflake. Par exemple, moncompte.snowflakecomputing.com.
-
Port : port via lequel vous souhaitez accéder à votre base de données Snowflake. La valeur par défaut est 443.
Authentification
Il existe différentes façons d'authentifier une connexion :
-
Nom d'utilisateur et mot de passe
-
Paire de clés
Votre base de données Snowflake doit être configurée de sorte à pouvoir utiliser l'authentification par paire de clés. La procédure est décrite dans la documentation Snowflake :
Note InformationsSi vous utilisez Data Movement gateway, la version 2024.5.14 ou une version supérieure est obligatoire pour pouvoir utiliser l'authentification par paire de clés.
Propriétés du compte
Nom d'utilisateur et mot de passe
Nom d'utilisateur et Mot de passe : nom d'utilisateur et mot de passe d'un utilisateur autorisé à accéder à la base de données Snowflake.
Paire de clés
Propriétés du compte | Description |
---|---|
User (Utilisateur) | Utilisateur dans Snowflake. |
Private Key File (Fichier de clé privée) | Cliquez sur Parcourir pour sélectionner votre fichier de clé privée. |
Private Key File Password (Mot de passe du fichier de clé privée) | Mot de passe permettant de déchiffrer votre clé privée si elle est chiffrée. |
Propriétés de la base de données
- Entrepôt par défaut : nom de votre entrepôt Snowflake. Vous pouvez remplacer cette valeur dans les paramètres de votre projet.
-
Nom de base de données : il existe deux méthodes à utiliser pour spécifier une base de données :
-
Méthode 1 - Sélection à partir d'une liste : Cliquez sur Charger des bases de données et sélectionnez une base de données.
- Méthode 2 - Manuellement : Sélectionnez Saisir le nom de base de données manuellement et saisissez le nom de la base de données.
-
Propriétés internes
Les propriétés internes s'adressent à des cas d'utilisation spéciaux et ne sont par conséquent pas exposées dans la boîte de dialogue. Utilisez-les uniquement si Qlik Support vous le demande.
Utilisez les boutons et à droite des champs pour ajouter ou supprimer des propriétés, suivant les besoins.
Nom
Nom d'affichage de la connexion.
Conditions préalables requises
Autorisations requises
Les autorisations suivantes sont nécessaires :
Autorisations requises si vous souhaitez créer automatiquement des schémas qui n'existent pas
- USAGE ON DATABASE
- CREATE SCHEMA ON DATABASE
Autorisations requises si le schéma existe déjà
- USAGE ON DATABASE
- USAGE ON SCHEMA
- CREATE FILE FORMAT ON SCHEMA
- CREATE STAGE ON SCHEMA
- CREATE TABLE ON SCHEMA
Configuration du pilote
Un pilote est obligatoire uniquement si vous accédez à la base de données via Data Movement gateway.
Vous pouvez installer le driver via l'utilitaire d'installation de pilote (recommandé) ou manuellement. Tentez une installation manuelle uniquement dans le cas improbable où vous rencontriez un problème avec l'utilitaire d'installation de pilote.
Utilisation de l'utilitaire d'installation de pilote pour installer le pilote
Cette section explique comment installer le driver requis. Le processus implique le téléchargement du driver, sa copie dans le dossier requis (voir ci-dessous) et l'exécution d'un script qui l'installera et le configurera automatiquement. Vous pouvez également exécuter des scripts permettant de mettre à jour et de désinstaller le driver, si nécessaire.
Préparation de l'installation
-
Assurez-vous que Python 3.6 ou une version ultérieure est installé sur le serveur de passerelle Déplacement des données.
Python est préinstallé sur la plupart des distributions Linux. Vous pouvez vérifier la version de Python installée sur votre système en exécutant la commande suivante :
python3 --version
-
Téléchargez le pilote ODBC Snowflake "snowflake-odbc-<version>.x86_64.rpm". Vous trouverez un lien de téléchargement direct vers la version supportée sous binary-artifacts dans /opt/qlik/gateway/movement/drivers/manifests/snowflake.yaml. Une fois le téléchargement terminé, copiez le fichier dans :
/opt/qlik/gateway/movement/drivers/snowflake
Installation de driver
Pour installer le driver :
-
Arrêtez le service Data Movement gateway :
sudo systemctl stop repagent
-
Confirmez éventuellement l'arrêt du service :
sudo systemctl status repagent
Le statut doit être comme suit :
Active: inactive (dead) since <timestamp> ago
-
Sur le poste de passerelle Déplacement des données, remplacez le répertoire de travail par :
opt/qlik/gateway/movement/drivers/bin
-
Exécutez la commande suivante :
Syntaxe :
./install snowflake
Sinon, le CLUF du driver apparaîtra.
-
Procédez de l'une des manières suivantes :
- Appuyez à plusieurs reprises sur [Entrée] pour parcourir lentement le CLUF.
- Appuyez à plusieurs reprises sur la barre d'espace pour parcourir rapidement le CLUF.
- Appuyez sur q pour quitter le texte de licence et faire apparaître les options d'acceptation du CLUF.
-
Procédez de l'une des manières suivantes :
- Saisissez « y » et appuyez sur [Entrée] pour accepter le CLUF et démarrer l'installation.
- Saisissez « n » et appuyez sur [Entrée] pour rejeter le CLUF et quitter l'installation.
-
Saisissez « v » et appuyez sur [Entrée] pour afficher de nouveau le CLUF.
-
Attendez la fin de l'installation (indiquée par « Complete! »), puis démarrez le service Data Movement gateway :
sudo systemctl start repagent
-
Confirmez éventuellement le lancement du service :
sudo systemctl status repagent
Le statut doit être comme suit :
Active: active (running) since <timestamp> ago
Le driver sera installé.
Mise à jour du driver
Exécutez la commande update si vous souhaitez désinstaller des versions précédentes du driver avant d'installer le driver fourni.
Pour mettre à jour le driver :
-
Arrêtez le service Data Movement gateway :
sudo systemctl stop repagent
-
Confirmez éventuellement l'arrêt du service :
sudo systemctl status repagent
Le statut doit être comme suit :
Active: inactive (dead) since <timestamp> ago
-
Sur le poste de passerelle Déplacement des données, remplacez le répertoire de travail par :
opt/qlik/gateway/movement/drivers/bin
-
Exécutez la commande suivante :
Syntaxe :
./update snowflake
Sinon, le CLUF du driver apparaîtra.
-
Procédez de l'une des manières suivantes :
- Appuyez à plusieurs reprises sur [Entrée] pour parcourir lentement le CLUF.
- Appuyez à plusieurs reprises sur la barre d'espace pour parcourir rapidement le CLUF.
- Appuyez sur q pour quitter le texte de licence et faire apparaître les options d'acceptation du CLUF.
-
Procédez de l'une des manières suivantes :
- Saisissez « y » et appuyez sur [Entrée] pour accepter le CLUF et démarrer l'installation.
- Saisissez « n » et appuyez sur [Entrée] pour rejeter le CLUF et quitter l'installation.
- Saisissez « v » et appuyez sur [Entrée] pour passer le CLUF en revue depuis le début.
-
Attendez la fin de l'installation (indiquée par « Complete! »), puis démarrez le service Data Movement gateway :
sudo systemctl start repagent
-
Confirmez éventuellement le lancement du service :
sudo systemctl status repagent
Le statut doit être comme suit :
Active: active (running) since <timestamp> ago
L'ancien driver sera désinstallé et le nouveau driver sera installé.
Désinstallation du driver
Exécutez la commande uninstall si vous souhaitez désinstaller le driver.
Pour désinstaller le driver :
-
Arrêtez toutes les tâches configurées pour utiliser ce connecteur.
-
Sur le poste de passerelle Déplacement des données, remplacez le répertoire de travail par :
opt/qlik/gateway/movement/drivers/bin
-
Exécutez la commande suivante :
Syntaxe :
./uninstall snowflake
le driver sera désinstallé.
Installation manuelle du pilote
Vous devez tenter d'installer manuellement le driver uniquement si l'installation de pilote automatisée n'a pas fonctionné.
Vous devez installer un pilote ODBC et un pilote JDBC.
Installation du pilote ODBC
- Une fois la Data Movement gateway installée, téléchargez le fichier de pilote snowflake-odbc-<version>x86_64.rpm répertorié sous binary-artifacts dans /opt/qlik/gateway/movement/drivers/manifests/snowflake.yaml et copiez-le sur le poste Data Movement gateway.
- Installez le pilote sur le poste Data Movement gateway.
Installation du pilote JDBC
-
Téléchargez le fichier snowflake-jdbc-<version>.jar répertorié sous binary-artifacts dans /opt/qlik/gateway/movement/drivers/manifests/snowflake.yaml et copiez-le dans le dossier suivant sur le poste Data Movement gateway :
/opt/qlik/gateway/movement/qcs_agents/qdi-db-commands/lib
-
Redémarrez le service Data Movement gateway et vérifiez qu'il a effectivement démarré en exécutant les commandes décrites à la section Commandes du service Data Movement gateway.
Port
Le port du pare-feu 443 doit être ouvert pour la communication sortante.
Performances et optimisation de l'utilisation des services cloud
Limitations et considérations générales
Les restrictions suivantes s'appliquent lors du déplacement de données vers une cible Snowflake :
- La réplication de tables avec des barres obliques inverses dans leurs noms (par ex., SPECIAL\\TABLE\N) n'est pas supportée.
Types de données
Le tableau suivant indique les types de données Snowflake supportés lors de l'utilisation de Qlik Cloud et le mappage par défaut depuis les types de données Qlik Cloud.
Les informations de type de données natif sont préservées et affichées dans la colonne Type de données natif des vues d'ensemble de données. Si la colonne n'est pas visible, vous devez ouvrir le sélecteur de colonnes de la vue d'ensemble de données et sélectionner la colonne Type de données natif.
Types de données Qlik Cloud | Types de données Snowflake |
---|---|
BOOLEAN |
BOOLEAN |
BYTES |
BINARY (length in Bytes) |
DATE |
DATE |
TIME |
TIME (precision) |
DATETIME |
TIMESTAMP_NTZ (precision) |
INT1 |
BYTEINT |
INT2 |
SMALLINT |
INT4 |
INTEGER |
INT8 |
BIGINT |
NUMERIC |
NUMBER (precision, scale) |
REAL4 |
FLOAT4 |
REAL8 |
FLOAT8 |
UINT1 |
BYTEINT |
UINT2 |
INTEGER |
UINT4 |
INTEGER |
UINT8 |
BIGINT |
STRING |
VARCHAR (length in Bytes) |
WSTRING |
NVARCHAR (length in Bytes) |
BLOB |
BINARY (8388608) |
NCLOB |
NVARCHAR (8388608) |
CLOB |
VARCHAR (8388608) |