Azure Synapse Analytics
Vous pouvez utiliser Azure Synapse Analytics comme plate-forme de données cible dans un pipeline de données. 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.
La configuration de Azure Synapse Analytics comme cible implique les conditions suivantes :
- Respect des conditions préalables requises
- Configuration d'une connexion à une zone intermédiaire cloud (Azure Data Lake Storage). Cela n'est pas obligatoire, si vous enregistrez des données existantes.
- Configuration d'une connexion à Azure Synapse Analytics
Configuration d'une zone intermédiaire cloud
Vous avez également besoin d'une zone intermédiaire cloud Azure Data Lake Storage dans laquelle placer temporairement les données et modifications avant de les appliquer et de les stocker. Pour savoir comment configurer une connexion à Azure Data Lake Storage, voir Azure Data Lake Storage.
Configuration des propriétés de connexion Azure Synapse Analytics
Une fois que vous avez fourni les paramètres de la Cible Azure Data Lake Storage, procédez comme suit :
-
Dans Connexions, cliquez sur Créer une connexion.
-
Sélectionnez le Azure Synapse Analytics connecteur cible et fournissez les paramètres suivants :
Cible de données
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 : nom d'hôte permettant d'identifier l'emplacement de la base de données Azure Synapse Analytics.
-
Port : port via lequel accéder à votre base de données Azure Synapse Analytics. La valeur par défaut est 1433.
Propriétés de compte
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 Azure Synapse Analytics.
Propriétés de base de données
-
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 : Cette méthode nécessite que l'utilisateur soit créé dans la base de données principale. 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 de chargement des données
Les informations d'identification SQL Server peuvent être créées automatiquement lors de l'exécution (par défaut), ou vous pouvez utiliser des informations d'identification existantes. Effectuez l'une des opérations suivantes, le cas échéant :
- Lorsque la case Create SQL Server credential est cochée (par défaut), les informations d'identification SQL Server sont automatiquement créées lors de l'exécution. Spécifiez votre clé d'accès dans le champ Clé d'accès.
- Pour utiliser des informations d'identification existantes, décochez la case Create SQL Server credential et spécifiez votre nom d'identification SQL Server dans le champ Credential name.
Nom
Nom d'affichage de la connexion.
Conditions préalables requises
Autorisations
Vous devez accorder des autorisations de stockage et des autorisations de base de données, comme décrit ci-dessous.
Autorisations de stockage
L'utilisateur indiqué dans le connecteur Azure Synapse Analytics doit recevoir les autorisations de stockage suivantes :
- Sur le conteneur de stockage ADLS Gen2 : LIST
- Sur le dossier de stockage ADLS Gen2 : READ, WRITE et DELETE
- Dans les paramètres du contrôle d'accès (IAM) pour le système de fichiers ADLS Gen2, attribuez le rôle Contributeur de données de blob de stockage à Data Movement gateway (ID d'application AD). L'application de ce rôle peut demander quelques minutes.
Autorisations de base de données
L'utilisateur spécifié dans le connecteur Azure Synapse Analytics doit recevoir les autorisations suivantes sur la base de données :
-
Autorisations générales :
- rôle db_owner
-
Autorisations de table :
- SELECT, INSERT, UPDATE et DELETE
- Chargement global
- CREATE, ALTER, DROP (si requis par la définition de tâche)
Sélection de base de données
Pour pouvoir sélectionner une base de données (en cliquant sur Charger des bases de données dans la boîte de dialogue du connecteur), l'utilisateur spécifié dans les paramètres du connecteur doit être créé dans la base de données principale.
Configuration du pilote
Un pilote est obligatoire uniquement si vous accédez à la base de données via Data Movement gateway. Dans ce cas, vous devez installer le pilote sur le poste 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 l'exécution d'un script qui téléchargera, installera et configurera automatiquement le driver requis. 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
Installation de driver
Pour télécharger et 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 sqlserver
Si le driver ne peut pas être téléchargé (en raison de restrictions d'accès ou de problèmes techniques), un message s'affichera, vous indiquant où télécharger et copier le driver sur le poste de passerelle Déplacement des données. Une fois que c'est fait, exécutez de nouveau la commande install sqlserver.
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 télécharger et 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 sqlserver
Si le driver ne peut pas être téléchargé (en raison de restrictions d'accès ou de problèmes techniques), un message s'affichera, vous indiquant où télécharger et copier le driversur le poste de passerelle Déplacement des données. Une fois que c'est fait, exécutez de nouveau la commande update sqlserver.
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 sqlserver
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 pilote msodbcsql<version>.x86_64.rpm. Vous trouverez un lien de téléchargement direct vers la version prise en charge sous binary-artifacts dans /opt/qlik/gateway/movement/drivers/manifests/sqlserver.yaml. Une fois le téléchargement terminé, copiez le RPM sur le poste Data Movement gateway.
Sur le serveur Data Movement gateway, ouvrez une invite shell et procédez comme suit :
-
Arrêtez le service Data Movement gateway :
sudo systemctl stop repagent
-
Confirmez éventuellement l'arrêt du service :
sudo systemctl status repagent
-
Installez le pilote (RPM).
-
Modifiez le répertoire de travail par <product_dir>/bin.
-
Copiez l'emplacement du pilote dans le fichier
site_arep_login.sh
comme suit :echo "export LD_LIBRARY_PATH=\$LD_LIBRARY_PATH:/opt/microsoft/
msodbcsql<version>
/lib64/" >> site_arep_login.sh
Cette opération ajoute le pilote à "LD_LIBRARY_PATH" et met à jour l'emplacement du pilote dans le fichier site_arep_login.sh .
-
Confirmez éventuellement que l'emplacement du pilote a été copié :
cat site_arep_login.sh
-
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
-
Data Movement gateway requiert la bibliothèque ODBC suivante : msodbcsql-18.1.so.1.1.
Pour vérifier la version de la bibliothèque actuellement installée, exécutez la commande suivante :
ls /opt/microsoft/msodbcsql<version>/lib64/
Si la bibliothèque existante a un numéro de version différent (par exemple, libmsodbcsql-18.0.so.1.1), vous devez créer un lien symbolique entre la bibliothèque existante et la bibliothèque obligatoire.
Pour ce faire exécutez les commandes suivantes :
cd /opt/microsoft/msodbcsql<version>/lib64/
ln -s existing_library_name
msodbcsql-18.1.so.1.1où
existing_library_name
correspond au nom de la bibliothèque actuellement installée (par exemple, libmsodbcsql-18.0.so.1.1).
Le statut doit être comme suit :
Active: inactive (dead) since <timestamp> ago
Installation du pilote JDBC
-
Téléchargez le fichier mssql-jdbc-<version>.jar. Vous trouverez un lien de téléchargement direct vers la version prise en charge sous binary-artifacts dans /opt/qlik/gateway/movement/drivers/manifests/sqlserver.yaml. Une fois le téléchargement terminé, copiez le fichier JAR 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 en exécutant la commande décrite à la section Redémarrage du service.
Ports
- Lorsque Data Movement gateway s'exécute sur une machine en dehors d'Azure, ouvrez le port 1433 pour la communication sortante.
- Lorsque Data Movement gateway s'exécute sur un AzureVM, ouvrez les ports suivants pour la communication sorante :
- 1433
- 11000-11999
- 14000-14999
Limitations et considérations générales
Lors de l'utilisation d'Azure Synapse Analytics comme cible, vous devez tenir compte des limitations et considérations suivantes :
-
Les colonnes sources avec des types de données CHAR/VARCHAR et un classement non latin (par ex., "Chinese_PRC_CI_AS") doivent être mappées vers NVARCHAR.
-
Traitement des colonnes sources vides :
-
En cas de déplacement d'un colonne binaire source (par exemple, VARBINARY ou BLOB) avec une valeur vide, Qlik Talend Data Integration insère NULL dans la colonne cible correspondante.
Note InformationsLes valeurs vides ne sont pas NULL, mais des données de longueur zéro. -
- Le Déplacement d'enregistrements dépassant 1 Mo n'est pas pris en charge.
- Le Déplacement de données avec des caractères emoji de 4 octets nécessite que le type de données soit une chaîne large (par exemple, NCHAR/NVARCHAR/NCLOB) sur la cible.
Types de données
Le tableau suivant indique les types de données Azure Synapse Analytics pris en charge 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 Azure Synapse Analytics |
---|---|
BOOLEAN |
BIT |
BYTES |
VARBINARY (length in Bytes) |
DATE |
DATE |
TIME |
TIME |
DATETIME |
DATETIME |
INT1 |
BYTEINT |
INT2 |
SMALLINT |
INT4 |
INTEGER |
INT8 |
BIGINT |
NUMERIC |
NUMERIC (precision, scale) |
REAL4 |
REAL |
REAL8 |
FLOAT |
UINT1 |
BYTEINT |
UINT2 |
INTEGER |
UINT4 |
INTEGER |
UINT8 |
BIGINT |
STRING |
VARCHAR (length in Bytes) |
WSTRING |
NVARCHAR (length in Bytes) |
BLOB |
VARBINARY (length in Bytes) |
NCLOB |
NVARCHAR (length in Bytes) |
CLOB |
VARCHAR (length in Bytes) |