Accéder au contenu principal Passer au contenu complémentaire

QlikView - Import

Availability-note AWS

Prérequis du pont

Ce pont :
  • n'est supporté que sous Microsoft Windows.

  • nécessite une installation de l'outil pour accéder à son SDK.

Spécifications du pont

Fournisseur QlikTech
Nom de l'outil QlikView
Version de l'outil 11.2 à 12.x
Site Web de l'outil http://www.qlik.com/us/products/qlikview
Méthodologie supportée [Business Intelligence] Multimodèle, Rapport BI (Source relationnelle, Parsage d'expressions, Structure de rapports) via une API COM sur un fichier QVW ou QVD
Profiling de données
Collecte incrémentale
Collecte multi-modèle
Navigation dans le référentiel distant pour sélectionner un modèle

SPÉCIFICATIONS
Outil : QlikTech/QlikView version 11.2 à 12.x via une API COM sur un fichier QVW ou QVD
Consultez http://www.qlik.com/us/products/qlikview
Métadonnées : [Business Intelligence] Multimodèle, Rapport BI (Source relationnelle, Parsage d'expressions, Structure de rapports)
Composant : QlikViewFiles version 11.2.0

VUE D'ENSEMBLE
Ce pont d'import importe des métadonnées de reporting Business Intelligence (BI) à partir d'un répertoire (et des sous-répertoires) des fichiers QlikView, notamment :
- des documents QlikView Working (QVW) ;
- des fichiers QlikView Data (QVD) ;
- des fichiers de log d'exécution QlikView associés à chaque document QVW ;
- des fichiers de script externe QlikView référencés par des documents QVW.

PRÉREQUIS
AVERTISSEMENT : Ce pont utilise l'API COM d'un client basé Windows et/ou SDK devant être (a) correctement installé, (b) avoir une licence adéquate au nom de l'utilisateur Windows capable d'exécuter cet outil et (c) capable d'accéder au contenu du serveur de l'outil. De plus :
(1) Comme recommandé par le fournisseur de l'outil, le serveur de l'outil ne doit pas être installé ou coexister sur la machine où le client de l'outil (et le pont) est installé/en cours d'exécution, à cause de conflits potentiels de ressources, notamment par rapport à l'API COM.
(2) Les outils basés sur l'API COM Windows sont connus pour être instables après des échecs répétés ou un manque de ressources système et nécessitent un redémarrage de Windows pour fonctionner à nouveau correctement.
(3) Si ce pont s'exécute en tant qu'application, la connexion doit être faite par le même utilisateur que pour Windows.
Si ce pont est exécuté en tant que service Windows, allez dans le gestionnaire des services Windows, cliquez-droit sur le service MIMB Application Server et allez dans l'onglet "Log On" pour définir le nom du compte sous lequel le service va s'exécuter.

- Logiciel QlikView installé :
Ce pont d'import requiert que le logiciel QlikView et son API COM/OLE soient installés sur la machine l'exécutant.

- Le logiciel QlikView n'est pas en cours d'exécution :
Étant donné que la connectivité à l'API se fait via une automatisation basée sur COM, veillez à fermer toutes les instances QlikView et consultez le Gestionnaire de tâches pour confirmer qu'aucun processus QlikView n'est en cours d'exécution, car cela pourrait interférer avec le démarrage de ce pont d'import.

- Log d'exécution QlikView disponible :
Ce pont d'import requiert le log d'exécution de document QlikView, car certains (ou tous les) détails de métadonnées ne peuvent pas être extraits du script source en raison de leur aspect dynamique (p. ex. utilisation de boucles, sous-routines, définitions de variable).
Notez que le paramètre Divers propose une option -log.notavailable (mais elle n'est pas recommandée).

FOIRE AUX QUESTIONS
Q : Que faire si ce pont d'import semble s'arrêter un long moment sans afficher de message de log après "Connecté à la version xx.xx.xxxxx.x de QlikView" ?
R : Problème de fenêtre pop-up : Étant donné que la connectivité à l'API se fait via une automatisation basée sur COM, l'import peut être bloqué, car un message de boîte de dialogue peut être émis par QlikView et attendre une réponse. Pour résoudre ce problème, recherchez des fenêtres en arrière-plan pouvant être la boîte de dialogue demandant l'attention de l'utilisateur. Parfois, par exemple si ce pont d'import est exécuté en tant que service plutôt que directement en tant qu'application, pour être certain de voir ce message, réexécutez ce pont en tant qu'application plutôt qu'en tant que service.

Q : Comment créer les fichiers de log d'exécution utilisés par ce pont d'import ?
R : Les fichiers de log d'exécution sont générés par QlikView lorsqu'un script de document QVW est exécuté. Activez la génération des fichiers de log dans le menu de QlikView Paramètres > Propriétés du document > Général > Générer un fichier de log. Ensuite, exécutez le script du document QVW.

Q : Quand dois-je générer des fichiers de log d'exécution ?
R : Les fichiers de log d'exécution contiennent des informations qui aident le pont d'import à comprendre les expressions de scripts. Si le script contient des variables, boucles ou instructions de script dynamiques, les fichiers de log d'exécution peuvent être utiles.

Q : Pourquoi mon import produit-il un lignage incorrect si les tables ont le même nom, dans différents projets ?
R : Par exemple, le document charge des données des tables X et Y vers la table Z. Il stocke ensuite les données de la table Z vers le fichier abc123.qvd. Il supprime ensuite la table Z.
Puis il charge les données des tables Y et W vers la table Z et stocke le fichier qwe123.qvd. Il supprime ensuite la table Z.
Puis il charge les données des tables T et X vers la table Z et stocke le fichier asq123.qvd.
Ce document réutilise le nom de la table Z dans trois instructions SQL SELECT différentes. (SELECT > STORE > DROP)
Afin de maintenir le lignage, je dois créer les trois tables susmentionnées, mais je ne peux créer trois tables du même nom. Le pont détecte les tables supprimées et les traite comme des tables temporaires, accordant à chacune un nom unique. Le format de ce nom est : name_Md5(application id)_removedTableNumber.

LIMITATIONS
Consultez les limitations générales connues à l'adresse MIMB Known Limitations ou dans Documentation/ReadMe/MIMBKnownLimitations.html où elles sont regroupées

SUPPORT
Fournissez un package de dépannage avec :
- le log de débogage (configurable dans l'interface ou dans conf/conf.properties avec MIR_LOG_LEVEL=6)
- la sauvegarde des métadonnées si disponible (configurable dans le paramètre Divers avec l'option -backup même si cette option commune n'est pas implémentée pour tous les ponts pour des raisons techniques).

Q : Comment fournir au Support les informations nécessaires pour reproduire un problème ?
R : Fournissez une archive des fichiers impliqués dans le problème (QVW, QVD, logs d'exécution, scripts externes). Si vous souhaitez supprimer des données confidentielles de ces fichiers, demandez à un script de s'en charger.


Paramètres du pont

Nom du paramètre Description Type Valeurs Défaut Périmètre
Directory Répertoire (et sous-répertoires) des documents QlikView, fichiers de log et fichiers de scripts externes impliqués dans le projet QlikView.

Idéalement, le paramètre doit pointer vers l'emplacement de production du projet. Lorsqu'il n'est pas possible d'accéder à l'emplacement de production directement, vous pouvez copier le répertoire de production dans un emplacement différent et faire pointer le paramètre vers cet emplacement. Dans ce cas, lorsque le projet utilise des instructions DIRECTORY QlikView, vous devez rediriger les instructions vers le nouvel emplacement. Consultez la documentation du paramètre Divers pour obtenir des informations supplémentaires.
RÉPERTOIRE     Éléments obligatoires
ID utilisateur Identifiant de l'utilisateur spécifié dans la section Accès pour protéger tous les documents QlikView. Cet identifiant d'utilisateur doit avoir accès à tous les documents dans le répertoire. Sinon, le pont d'import restera en suspens, à cause d'une fenêtre contextuelle de QlikView qui attendra un identifiant d'utilisateur correct. Chaîne de caractères      
Password Mot de passe pour l'identifiant d'utilisateur spécifié dans la section Accès pour protéger tous les documents QlikView. MOT DE PASSE      
Filtre par inclusion Le modèle utilise la syntaxe des expressions UNIX glob étendue, sensible à la casse.
Vous pouvez spécifier plusieurs modèles en les séparant par une virgule.
Voici quelques exemples courants :
*.* - inclut tout fichier au niveau racine
*.csv - inclut uniquement les fichiers CSV au niveau racine
**.csv - inclut uniquement les fichiers CSV à tous les niveaux
*.{csv,gz} inclut uniquement les fichiers CSV ou GZ au niveau racine
dir\*.csv - inclut uniquement les fichiers CSV dans le dossier "dir"
dir\**.csv - inclut uniquement les fichiers CSV dans le dossier "dir" à tous les niveaux
dir\**.* - inclut tout fichier dans le dossier "dir" à tous les niveaux
f.csv - inclut tous les fichiers dans n'importe quel dossier "dir" à tous les niveaux
**\f.csv - inclut uniquement f.csv à tous les niveaux
**dir\** - inclut tous les fichiers dans n'importe quel dossier "dir" à tous les niveaux
**dir1\dir2\** - inclut tous les fichiers dans n'importe quel dossier "dir2", sous n'importe quel dossier "dir1" à tous les niveaux
Chaîne de caractères      
Filtre par exclusion Le modèle utilise la même syntaxe que le Filtre par inclusion. Vous pouvez le consulter pour obtenir des détails sur la syntaxe et quelques exemples.
Les fichiers qui correspondent au filtre par exclusion sont ignorés.
Vous pouvez spécifier plusieurs modèles en les séparant par une virgule.
Si les filtres par inclusion et par exclusion sont vides, tous les dossiers et fichiers sous le répertoire racine sont inclus.
Si le filtre par inclusion est vide et que le filtre par exclusion ne l'est pas, les dossiers et fichiers sous le répertoire racine sont inclus, sauf ceux correspondant au filtre d'exclusion.
Chaîne de caractères      
Miscellaneous INTRODUCTION
Spécifiez les options Divers, commençant par un tiret et suivies éventuellement par des paramètres, par exemple :
-connection.cast MyDatabase1="MICROSOFT SQL SERVER"
Certaines options peuvent être utilisées plusieurs fois, si applicable, par exemple :
-connection.rename NewConnection1=OldConnection1 -connection.rename NewConnection2=OldConnection2;
La liste d'options pouvant être une longue chaîne, il est possible de la charger à partir d'un fichier qui doit être situé dans ${MODEL_BRIDGE_HOME}\data\MIMB\parameters et avoir l'extension .txt. Dans ce cas, toutes les options doivent être définies au sein de ce fichier comme seule valeur de ce paramètre, par exemple
ETL/Miscellaneous.txt

OPTIONS DE L'ENVIRONNEMENT JAVA
-java.memory <taille maximale de la mémoire Java> (anciennement -m)

1 Go par défaut sur un JRE de 64 bits ou tel que défini dans conf/conf.properties, par exemple
-java.memory 8G
-java.memory 8000M

-java.parameters <options de ligne de commande de Java Runtime Environment> (anciennement -j)

Cette option doit être la dernière dans le paramètre Divers car tout le texte après -java.parameters est passé tel quel à la JRE. Par ex.
-java.parameters -Dname=value -Xms1G
L'option suivante doit être définie lorsqu'un proxy est utilisé pour accéder à Internet (cela est essentiel pour accéder à https://repo.maven.apache.org/maven2/ et exceptionnellement à quelques autres sites d'outils) afin de télécharger les bibliothèques logicielles tierces nécessaires.
Note : La majorité des proxys sont relatifs au chiffrement (HTTPS) du trafic extérieur (à l'entreprise) et à la confiance en le trafic intérieur pouvant accéder au proxy via HTTP. Dans ce cas, une requête HTTPS atteint le proxy via HTTP où le proxy la chiffre en HTTPS.
-java.parameters -java.parameters -Dhttp.proxyHost=127.0.0.1 -Dhttp.proxyPort=3128 -Dhttp.proxyUser=user -Dhttp.proxyPassword=pass

OPTIONS D'IMPORT DU MODÈLE
-model.name <nom modèle>

Écrase le nom du modèle, par ex.
-model.name "My Model Name"

-prescript <nom script>

Cette option permet d'exécuter un script avant l'exécution du pont.
Le script doit se situer dans le répertoire bin (ou comme spécifié dans M_SCRIPT_PATH dans conf/conf.properties) et avoir une extension .bat ou .sh.
Le chemin d'accès au script ne doit pas inclure de symbole relatif au répertoire parent (..).
Le script doit retourner le code de sortie 0 pour indiquer un succès ou une autre valeur pour indiquer un échec.
Par exemple :
-prescript "script.bat arg1 arg2"

-postscript <nom script>

Cette option permet d'exécuter un script après l'exécution réussie du pont.
Le script doit se situer dans le répertoire bin (ou comme spécifié dans M_SCRIPT_PATH dans conf/conf.properties) et avoir une extension .bat ou .sh.
Le chemin d'accès au script ne doit pas inclure de symbole relatif au répertoire parent (..).
Le script doit retourner le code de sortie 0 pour indiquer un succès ou une autre valeur pour indiquer un échec.
Par exemple :
-postscript "script.bat arg1 arg2"

-cache.clear

Vide le cache avant l'import et va exécuter un import complet avec collecte incrémentale.

Si le modèle n'a pas été modifié et que le paramètre -cache.clear n'est pas utilisé (collecte incrémentale), une nouvelle version ne sera pas créée.
Si le modèle n'a pas été modifié et que le paramètre -cache.clear n'est pas utilisé (collecte incrémentale), une nouvelle version ne sera pas créée.

-backup <répertoire>

Cette option permet de sauvegarder les métadonnées d'entrée du pont à des fins de débogage. Le <répertoire> fourni doit être vide.

L'utilisation principale de cette option concerne les ponts d'import des data stores, en particulier les ponts d'import basés sur des bases de données JDBC.

Notez que cette option n'est pas opérationnelle sur certains ponts, notamment :
- les ponts d'import basés sur des fichiers (car des fichiers d'entrée peuvent être utilisés à la place)
- les ponts d'import de référentiels d'intégration de données/BI (car les outils natifs de sauvegarde du référentiel peuvent être utilisés à la place)
- Certains ponts d'import basés sur des API (par ex. basés sur COM) pour des raisons techniques.

OPTIONS DES CONNEXIONS DE DONNÉES
Les connexions de données sont produites par les ponts d'import, généralement à partir des outils ETL/DI et BI pour faire référence aux data stores sources et cibles qu'elles utilisent. Ces connexions de données sont ensuite utilisées par les outils de gestion des métadonnées pour connecter ces dernières (connexion des métadonnées) à leurs data stores réels (par exemple, bases de données, système de fichiers, etc.) afin de produire le lignage complet de flux de données et de l'analyse d'impact de bout en bout. Le nom des connexions de données doit être unique dans chaque modèle d'import. Les noms de connexion de données utilisés dans les outils de conception DI/BI sont utilisés quand cela est possible, sinon ils sont générés en étant courts mais significatifs, comme le nom de la base de données/du schéma, le chemin d'accès au système de fichiers ou l'URI (Uniform Resource Identifier). L'option suivante vous permet de manipuler les connexions. Ces options remplacent les options héritées -c, -cd et -cs.

-connection.cast ConnectionName=ConnectionType

Lance une connexion à une base de données générique (par exemple ODBC/JDBC) pour un type de base de données précis (par exemple ORACLE) pour une analyse SQL, par exemple
-connection.cast "My Database"="MICROSOFT SQL SERVER".
La liste des types de connexions aux data stores comprend :
ACCESS
APACHE CASSANDRA
DB2/UDB
DENODO
GOOGLE BIGQUERY
HIVE
MYSQL
NETEZZA
ORACLE
POSTGRESQL
PRESTO
REDSHIFT
SALESFORCE
SAP HANA
SNOWFLAKE
MICROSOFT SQL AZURE
MICROSOFT SQL SERVER
SYBASE SQL SERVER
SYBASE AS ENTERPRISE
TERADATA
VECTORWISE
HP VERTICA

-connection.rename OldConnection=NewConnection

Renomme une connexion existante, par exemple, par ex.
-connection.rename OldConnectionName=NewConnectionName
Plusieurs connexions de bases de données existantes peuvent être renommées et fusionnées en une nouvelle connexion de base de données, par exemple :
-connection.rename MySchema1=MyDatabase -connection.rename MySchema2=MyDatabase

-connection.split oldConnection.Schema1=newConnection

Scinde une connexion de base de données en une ou plusieurs connexions de base de données.
Une connexion de base de données peut être scindée en une connexion par schéma, par exemple :
-connection.split MyDatabase
Toutes les connexions de base de données peuvent être fractionnées en une connexion par schéma, par exemple :
-connection.split *
Une connexion de base de données peut être explicitement fractionnée en une nouvelle connexion de base de données en ajoutant un nom de schéma à une base de données, par exemple :
-connection.split MyDatabase.schema1=MySchema1

-connection.map SourcePath=DestinationPath

Mappe un chemin d'accès source à un chemin d'accès de destination. Cela est utile pour les connexions aux systèmes de fichiers lorsque différents chemins d'accès pointent vers le même objet (répertoire ou fichier).
Sur Hadoop, un processus peut écrire dans un fichier CSV spécifié avec le chemin d'accès complet HDFS, tandis qu'un autre processus lit d'une table Hive implémentée (externe) par le même fichier spécifié à l'aide d'un chemin d'accès relatif avec un nom et une extension de fichier par défaut, par exemple :
-connection.map /user1/folder=hdfs://host:8020/users/user1/folder/file.csv
Sous Linux, il peut être fait référence à un répertoire (ou à un fichier) donné tel que /data par plusieurs liens symboliques tels que /users/john et /users/paul, par exemple :
-connection.map /data=/users/John -connection.map /data=/users/paul
Sous Windows, il peut être fait référence à un répertoire donné tel que C:\data par plusieurs lecteurs réseau tels que M: et N:, par exemple :
-connection.map C:\data=M:\ -connection.map C:\data=N:\

-connection.casesensitive ConnectionName...

Écrase les règles de rapprochement insensibles à la casse par défaut pour les identifiants d'objets dans la connexion spécifiée, si le type du data store détecté supporte cette configuration (par ex. Microsoft SQL Server, MySQL etc.), par exemple :
-connection.casesensitive "My Database"

-connection.caseinsensitive ConnectionName...

Écrase les règles de rapprochement sensibles à la casse par défaut pour les identifiants d'objets dans la connexion spécifiée, si le type du data store détecté supporte cette configuration (par ex. Microsoft SQL Server, MySQL etc.), par exemple :
-connection.caseinsensitive "My Database"

-connection.level AggregationLevel

Spécifie le niveau d'agrégation pour les connexions externes, par exemple -connection.level catalog
Liste des valeurs supportées :
server (serveur)
catalog (catalogue)
schema (schéma)(par défaut)

-database.type <liste de types de base de données de connexion>

Si l'accès aux bases de données est possible grâce à des connexions ODBC génériques, il est alors essentiel de connaître le type de base de données exact afin de parser correctement cette syntaxe SQL spécifique de base de données pour le lignage.
La liste de types de base de données de connexion doit être spécifiée sous la forme d'une paire de valeurs séparées par une virgule : <Connection name>=<Database type>
Les types de base de données supportés par le parsing SQL sont :
ACCESS
CASSANDRA
DB2
DENODO
HIVE
MYSQL
NETEZZA
ORACLE
POSTGRESQL
PRESTO
REDSHIFT
SALESFORCE
SAP HANA
SNOWFLAKE
SQL SERVER
SYBASE
TERADATA
VECTORWISE
VERTICA

Spécifiez la connexion de base de données par défaut sans nom de connexion, par exemple :
-database.type ORACLE

Si plusieurs connexions de base de données sont utilisées, spécifiez alors chaque type de base de données en utilisant le nom de la connexion associée, par exemple :
-database.type MyConnectionName=ORACLE

Il est possible de mélanger le type de base de données par défaut et plusieurs types de base de données de connexion, par exemple :
-database.type ORACLE , MyConnectionName1=TERADATA , MyConnectionName1=DB2

OPTIONS QLIK
-directory <instruction>

Une instruction DIRECTORY de document Qlik est utilisée pour définir le chemin d'accès au répertoire pour les instructions LOAD suivantes.

Si ce répertoire n'est pas accessible, utilisez alors une instruction DIRECTORY pour le rediriger vers un autre répertoire. Pour y parvenir, copiez l'instruction DIRECTORY depuis un log d'exécution de document Qlik, ajoutez "=" et spécifiez le chemin d'accès à un autre répertoire. Dans le cas suivant, le dossier 'c:\folder' est redirigé vers le dossier 'd:\folder2', par exemple :
-directory [c:\folder1]=[d:\folder2]

Si le chemin d'accès après l'instruction DIRECTORY est vide, toutes les instructions DIRECTORY sont redirigées vers le répertoire spécifié, par exemple :
-directory []=[d:\folder2]

-file.path <répertoire du fichier>

Un document Qlik peut avoir des instructions telles que INCLUDE, STORE, LOAD qui fonctionnent avec un chemin d'accès au fichier. Si le chemin d'accès au fichier original n'est pas accessible par ce pont d'import, il enregistre les erreurs suivantes :
- "Impossible d'ouvrir le fichier Include : '\\inaccessible\scripts\include.txt"
- "Impossible d'effectuer le processus de dépendance, car le document source '\\inaccessible\QVDs\file.qvd' n'est pas accessible"
Vous pouvez résoudre les erreurs en copiant les fichiers inaccessibles dans des chemins d'accès accessibles.

Si les fichiers dont vous avez besoin sont situés dans "\\inaccessible\folder", copiez-les dans C:\accessible\folder et donnez l'instruction au pont d'import de les lire depuis leur nouvel emplacement, par exemple :
-file.path [\\inaccessible]=[c:\accessible]

L'option file.path vous permet de remplacer une partie du chemin d'accès du fichier d'origine par une autre en spécifiant plusieurs options file.path, par exemple :
-file.path [\\inaccessible]=[c:\accessible], [\\inaccessible2]=[c:\accessible2]

Le pont d'import applique plusieurs options -file.path dans l'ordre fourni.
-file.path [\\a]=[c:\a], [\\aa]=[c:\aa] - La mauvaise façon
-file.path [\\aa]=[c:\aa], [\\a]=[c:\a] - La bonne façon

Assurez-vous de ne pas spécifier le file.path à l'extérieur du chemin d'accès au répertoire dans lequel sont placés les documents QlikView à importer.

-log.notavailable

Le log d'exécution du document Qlik est requis, car des métadonnées essentielles (p. ex. tables de data store sources exactes pour le lignage) ne peuvent pas être extraites directement à partir des scripts Qlik en raison de leur aspect dynamique (p. ex. utilisation de boucles, sous-routines, définitions de variable).
Cette option permet d'effectuer l'import même si le log d'exécution n'est pas disponible. Dans ce cas, des métadonnées essentielles pour le lignage peuvent manquer.

-qvd.as.file

Si ce paramètre est spécifié, le pont importe des fichiers QVD à partir d'instructions LOAD, STORE en tant que fichiers usuels (type CSV ou TXT).
Les fichiers QVD peuvent être inaccessibles. Il n'est pas nécessaire d'écraser les chemins des fichiers QVD inaccessibles à l'aide de -file.path.
Si ce paramètre n'est pas spécifié, le pont importe des fichiers QVD en tant que modèles OLAP.
Les fichiers QVD doivent être accessibles par ce pont d'import (consultez -file.path pour plus d'informations).
Chaîne de caractères      

 

Mapping du pont

Meta Integration Repository (MIR)
Métamodèle
(se base sur le standard OMG CWM)
"QlikView"
Métamodèle
QlikView (Application)
Mapping des commentaires
     
DirectoryStructureModel Application  
CreationTime Heure de création  
Description Description  
ImportDate Date d'import  
Name (Nom) Name (Nom)  
NativeId Identifiant natif  
NativeType Type natif  
Dossier Dossier  
Author Auteur  
CreationTime Heure de création  
Description Description  
LastModificationTime Heure de la dernière modification  
Modificateur Modificateur  
Name (Nom) Name (Nom)  
NativeId Identifiant natif  
NativeType Type natif  
StoreContent QVW, Connexion, QVD  
Author Auteur  
CreationTime Heure de création  
Description Description  
LastModificationTime Heure de la dernière modification  
Modificateur Modificateur  
Name (Nom) Name (Nom)  
NativeId Identifiant natif  
NativeType Type natif  

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.