Partager via


Copier des données de Impala à l’aide d’Azure Data Factory ou Synapse Analytics

S’APPLIQUE À : Azure Data Factory Azure Synapse Analytics

Conseil

Essayez Data Factory dans Microsoft Fabric, une solution d’analyse tout-en-un pour les entreprises. Microsoft Fabric couvre tous les aspects, du déplacement des données à la science des données, en passant par l’analyse en temps réel, la business intelligence et le reporting. Découvrez comment démarrer un nouvel essai gratuitement !

Cet article explique comment utiliser l’activité de copie dans le pipeline Azure Data Factory ou Synapse Analytics pour copier des données de Impala. Il s’appuie sur l’article Vue d’ensemble de l’activité de copie.

Important

Le connecteur Impala version 1.0 est à l’étape de suppression. Vous êtes recommandé de mettre à niveau le connecteur Impala de la version 1.0 vers la version 2.0.

Fonctionnalités prises en charge

Ce connecteur Impala est pris en charge pour les capacités suivantes :

Fonctionnalités prises en charge IR
Activité de copie (source/-) (1) (2)
Activité de recherche (1) (2)

① Runtime d’intégration Azure ② Runtime d’intégration auto-hébergé

Pour obtenir la liste des banques de données prises en charge en tant que sources ou récepteurs par l’activité de copie, consultez le tableau banques de données prises en charge.

Le service fournit un pilote intégré pour permettre la connectivité. Vous n’avez donc pas besoin d’installer manuellement un pilote pour utiliser ce connecteur.

Prérequis

Si votre magasin de données se trouve dans un réseau local, un réseau virtuel Azure ou un cloud privé virtuel Amazon, vous devez configurer un runtime d’intégration auto-hébergé pour vous y connecter.

Si votre magasin de données est un service de données cloud managé, vous pouvez utiliser Azure Integration Runtime. Si l’accès est limité aux adresses IP qui sont approuvées dans les règles de pare-feu, vous pouvez ajouter les adresses IP Azure Integration Runtime dans la liste d’autorisation.

Vous pouvez également utiliser la fonctionnalité de runtime d’intégration de réseau virtuel managé dans Azure Data Factory pour accéder au réseau local sans installer et configurer un runtime d’intégration auto-hébergé.

Pour plus d’informations sur les mécanismes de sécurité réseau et les options pris en charge par Data Factory, consultez Stratégies d’accès aux données.

Remarque

La version 2.0 est prise en charge avec le runtime d’intégration auto-hébergé version 5.55 ou ultérieure.

Bien démarrer

Pour effectuer l’activité de copie avec un pipeline, vous pouvez utiliser l’un des outils ou kits sdk suivants :

Créer un service lié à Impala à l’aide de l’interface utilisateur

Utilisez les étapes suivantes pour créer un service lié à Impala dans l’interface utilisateur du portail Azure.

  1. Accédez à l’onglet Gérer dans votre espace de travail Azure Data Factory ou Synapse, sélectionnez Services liés, puis cliquez sur Nouveau :

  2. Recherchez Impala et sélectionnez le connecteur Impala.

    Capture d’écran du connecteur Impala.

  3. Configurez les informations du service, testez la connexion et créez le nouveau service lié.

    Capture d’écran de la configuration du service lié pour Impala.

Détails de configuration du connecteur

Les sections suivantes fournissent des informations sur les propriétés utilisées pour définir les entités Data Factory spécifiques du connecteur Impala.

Propriétés du service lié

Le connecteur Impala prend désormais en charge la version 2.0. Reportez-vous à cette section pour mettre à niveau votre version du connecteur Impala à partir de la version 1.0. Pour plus d’informations sur la propriété, consultez les sections correspondantes.

Version 2.0

Le service lié Impala prend en charge les propriétés suivantes lorsque la version 2.0 est appliquée :

Propriété Descriptif Obligatoire
type La propriété de type doit être définie sur Impala. Oui
version Version que vous spécifiez. La valeur est 2.0. Oui
host Adresse IP ou nom d’hôte du serveur Impala (c’est-à-dire, 192.168.222.160). Oui
port Port TCP utilisé par le serveur Impala pour écouter les connexions clientes. Valeur par défaut : 21050. Non
thriftTransportProtocol Protocole de transport à utiliser dans la couche Thrift. Les valeurs autorisées sont : Binaire, HTTP. La valeur par défaut est Binary. Oui
type d'authentification Type d’authentification à utiliser.
Les valeurs autorisées sont Anonymous et UsernameAndPassword.
Oui
nom d'utilisateur Nom d’utilisateur utilisé pour accéder au serveur Impala. Non
mot de passe Mot de passe qui correspond au nom d’utilisateur si vous utilisez UsernameAndPassword. Marquez ce champ en tant que SecureString afin de le stocker de façon sécurisée, ou référencez un secret stocké dans Azure Key Vault. Non
Activer SSL Indique si les connexions au serveur sont chiffrées à l'aide du protocole TLS. La valeur par défaut est true. Non
activerLaValidationDuCertificatDuServeur Spécifiez s’il faut activer la validation des certificats SSL du serveur lorsque vous vous connectez. Utilisez toujours le magasin de confiance système. La valeur par défaut est true. Non
connectVia Le runtime d’intégration à utiliser pour se connecter à la banque de données. Pour plus d’informations, consultez la section Conditions préalables. À défaut de spécification, le runtime d’intégration Azure par défaut est utilisé. Vous pouvez utiliser le runtime d’intégration auto-hébergé et sa version doit être 5.55 ou ultérieure. Non

Exemple :

{
    "name": "ImpalaLinkedService",
    "properties": {
        "type": "Impala",
        "version": "2.0",
        "typeProperties": {
            "host" : "<host>",
            "port" : "<port>",
            "authenticationType" : "UsernameAndPassword",
            "username" : "<username>",
            "password": {
                "type": "SecureString",
                "value": "<password>"
            },
            "enableSsl": true,
            "thriftTransportProtocol": "Binary",
            "enableServerCertificateValidation": true
        },
        "connectVia": {
            "referenceName": "<name of Integration Runtime>",
            "type": "IntegrationRuntimeReference"
        }
    }
}

Version 1.0

Les propriétés prises en charge pour le service lié Impala lors de l’application de la version 1.0 sont les suivantes :

Les propriétés suivantes sont prises en charge pour le service lié Impala.

Propriété Descriptif Obligatoire
type La propriété de type doit être définie sur Impala. Oui
host Adresse IP ou nom d’hôte du serveur Impala (c’est-à-dire, 192.168.222.160). Oui
port Port TCP utilisé par le serveur Impala pour écouter les connexions clientes. Valeur par défaut : 21050. Non
type d'authentification Type d’authentification à utiliser.
Les valeurs autorisées sont Anonymous, SASLUsername et UsernameAndPassword.
Oui
nom d'utilisateur Nom d’utilisateur utilisé pour accéder au serveur Impala. La valeur par défaut est Anonymous si vous utilisez SASLUsername. Non
mot de passe Mot de passe qui correspond au nom d’utilisateur si vous utilisez UsernameAndPassword. Marquez ce champ en tant que SecureString afin de le stocker de façon sécurisée, ou référencez un secret stocké dans Azure Key Vault. Non
Activer SSL Indique si les connexions au serveur sont chiffrées à l'aide du protocole TLS. La valeur par défaut est false. Non
trustedCertPath Chemin complet du fichier .pem qui contient les certificats d'autorité de certification approuvés utilisés pour vérifier le serveur lorsque vous vous connectez via TLS. Cette propriété ne peut être définie que lorsque vous utilisez TLS sur le runtime d'intégration auto-hébergé. Valeur par défaut : le fichier cacerts.pem installé avec le runtime d’intégration. Non
UtiliserLeMagasinDeConfianceDuSystème Indique s’il faut utiliser un certificat d’autorité de certification provenant du magasin de confiance du système ou d’un fichier PEM spécifié. La valeur par défaut est false. Non
allowHostNameCNMismatch Indique si le nom du certificat TLS/SSL émis par l'autorité de certification doit correspondre au nom d'hôte du serveur si vous vous connectez via TLS. La valeur par défaut est false. Non
allowSelfSignedServerCert Indique si les certificats auto-signés provenant du serveur sont autorisés ou non. La valeur par défaut est false. Non
connectVia Le runtime d’intégration à utiliser pour se connecter à la banque de données. Pour plus d’informations, consultez la section Conditions préalables. À défaut de spécification, le runtime d’intégration Azure par défaut est utilisé. Non

Exemple :

{
    "name": "ImpalaLinkedService",
    "properties": {
        "type": "Impala",
        "typeProperties": {
            "host" : "<host>",
            "port" : "<port>",
            "authenticationType" : "UsernameAndPassword",
            "username" : "<username>",
            "password": {
                "type": "SecureString",
                "value": "<password>"
            }
        },
        "connectVia": {
            "referenceName": "<name of Integration Runtime>",
            "type": "IntegrationRuntimeReference"
        }
    }
}

Propriétés du jeu de données

Pour obtenir la liste complète des sections et propriétés disponibles pour la définition de jeux de données, consultez l’article Jeux de données. Cette section donne la liste des propriétés prises en charge par le jeu de données Impala.

Pour copier des données d’Impala, affectez la valeur ImpalaObject à la propriété type du jeu de données. Les propriétés prises en charge sont les suivantes :

Propriété Descriptif Obligatoire
type La propriété type du jeu de données doit être définie sur : ImpalaObject Oui
schéma Nom du schéma. Non (si « query » dans la source de l’activité est spécifié)
tableau Nom de la table. Non (si « query » dans la source de l’activité est spécifié)
tableName Nom de la table avec le schéma. Cette propriété est prise en charge pour la compatibilité descendante. Utilisez schema et table pour une nouvelle charge de travail. Non (si « query » dans la source de l’activité est spécifié)

Exemple

{
    "name": "ImpalaDataset",
    "properties": {
        "type": "ImpalaObject",
        "typeProperties": {},
        "schema": [],
        "linkedServiceName": {
            "referenceName": "<Impala linked service name>",
            "type": "LinkedServiceReference"
        }
    }
}

Propriétés de l’activité de copie

Pour obtenir la liste complète des sections et des propriétés disponibles pour la définition des activités, consultez l’article Pipelines. Cette section donne la liste des propriétés prises en charge par le type de source Impala.

Impala en tant que type de source

Pour copier des données d’Impala, affectez la valeur ImpalaSource au type source de l’activité de copie. Les propriétés suivantes sont prises en charge dans la section source de l’activité de copie.

Propriété Descriptif Obligatoire
type La propriété type de la source de l’activité de copie doit être définie sur ImpalaSource. Oui
requête Utiliser la requête SQL personnalisée pour lire les données. par exemple "SELECT * FROM MyTable". Non (si « tableName » est spécifié dans dataset)

Exemple :

"activities":[
    {
        "name": "CopyFromImpala",
        "type": "Copy",
        "inputs": [
            {
                "referenceName": "<Impala input dataset name>",
                "type": "DatasetReference"
            }
        ],
        "outputs": [
            {
                "referenceName": "<output dataset name>",
                "type": "DatasetReference"
            }
        ],
        "typeProperties": {
            "source": {
                "type": "ImpalaSource",
                "query": "SELECT * FROM MyTable"
            },
            "sink": {
                "type": "<sink type>"
            }
        }
    }
]

Mappage de type de données pour Impala

Lorsque vous copiez des données depuis et vers Impala, les mappages de types de données intermédiaires suivants sont utilisés dans le service. Pour découvrir comment l’activité de copie mappe le schéma et le type de données la source au récepteur, consultez Mappage de schéma dans l’activité de copie.

Type de données Impala Type de données de service intermédiaire (pour la version 2.0) Type de données de service intermédiaire (pour la version 1.0)
ARRAY Chaîne Chaîne
bigint Int64 Int64
BOOLEAN Booléen Booléen
CHAR Chaîne Chaîne
DATE Date et heure Date et heure
DECIMAL Décimal Décimal
DOUBLE Double Double
FLOAT Célibataire Célibataire
INT Int32 Int32
CARTE Chaîne Chaîne
SMALLINT Int16 Int16
STRING Chaîne Chaîne
STRUCT Chaîne Chaîne
timestamp DateTimeOffset Date et heure
TINYINT SByte Int16
VARCHAR Chaîne Chaîne

Propriétés de l’activité Lookup

Pour en savoir plus sur les propriétés, consultez Activité Lookup.

Cycle de vie et mise à niveau du connecteur Impala

Le tableau suivant présente l’étape de mise en production et les journaux de modification pour différentes versions du connecteur Impala :

Version Phase de mise en production Journal des modifications
Version 1.0 Removed Non applicable.
Version 2.0 Version en disponibilité générale disponible • La version du runtime d’intégration auto-hébergée doit être 5.55 ou ultérieure.

• La valeur par défaut est enableSSL true. enableServerCertificateValidation est pris en charge.
trustedCertPath, useSystemTrustStoreallowHostNameCNMismatch et allowSelfSignedServerCert ne sont pas pris en charge.

• TIMESTAMP est lu en tant que type de données DateTimeOffset.

• TINYINT est lu en tant que type de données SByte.

• Le type d’authentification SASLUsername n’est pas pris en charge.

Mettre à niveau le connecteur Impala de la version 1.0 vers la version 2.0

  1. Dans la page Modifier le service lié , sélectionnez la version 2.0 et configurez le service lié en faisant référence aux propriétés du service lié version 2.0.

  2. Le mappage de type de données pour le service lié Impala version 2.0 est différent de celui de la version 1.0. Pour découvrir le mappage de type de données le plus récent, consultez Le mappage de type de données pour Impala.

  3. Appliquez un runtime d’intégration auto-hébergé avec la version 5.55 ou ultérieure.

Consultez les magasins de données pris en charge pour obtenir la liste des sources et magasins de données pris en charge en tant que récepteurs par l’activité Copy.