Condividi tramite


Copia dati da Impala usando Azure Data Factory o Synapse Analytics

SI APPLICA A: Azure Data Factory Azure Synapse Analytics

Suggerimento

Provare Data Factory in Microsoft Fabric, una soluzione di analisi all-in-one per le aziende. Microsoft Fabric copre tutto, dallo spostamento dati al data science, all'analisi in tempo reale, alla business intelligence e alla creazione di report. Vedere le informazioni su come iniziare una nuova prova gratuita!

Questo articolo illustra come usare l'attività di copia in una pipeline di Azure Data Factory o Synapse Analytics per copiare dati da Impala. Si basa sull'articolo di panoramica dell'attività di copia che presenta informazioni generali sull'attività di copia.

Importante

Il connettore Impala versione 2.0 (anteprima) offre un supporto per Impala nativo migliorato. Se si usa il connettore Impala versione 1.0 nella soluzione, aggiornare il connettore Impala prima del 30 settembre 2025. Per informazioni dettagliate sulla differenza tra la versione 2.0 (anteprima) e la versione 1.0, vedere questa sezione .

Funzionalità supportate

Questo connettore Impala è supportato per le funzionalità seguenti:

Funzionalità supportate IR
Attività Copy (origine/-) 7.3
Attività Lookup 7.3

① Azure Integration Runtime ② Runtime di integrazione self-hosted

Per un elenco degli archivi dati supportati come origini o sink dall'attività di copia, vedere la tabella relativa agli archivi dati supportati.

Il servizio fornisce un driver predefinito per abilitare la connettività. Non è pertanto necessario installare manualmente un driver per usare questo connettore.

Prerequisiti

Se l'archivio dati si trova all'interno di una rete locale, una rete virtuale di Azure o un cloud privato virtuale di Amazon, è necessario configurare un runtime di integrazione self-hosted per connettersi.

Se l'archivio dati è un servizio dati del cloud gestito, è possibile usare Azure Integration Runtime. Se l'accesso è limitato solo agli indirizzi IP approvati nelle regole del firewall, è possibile aggiungere IP di Azure Integration Runtime nell'elenco Consentiti.

È anche possibile usare la funzionalitàruntime di integrazione della rete virtuale gestita in Azure Data Factory per accedere alla rete locale senza installare e configurare un runtime di integrazione self-hosted.

Per altre informazioni sui meccanismi di sicurezza di rete e sulle opzioni supportate da Data Factory, vedere strategie di accesso ai dati.

Operazioni preliminari

Per eseguire l'attività di copia con una pipeline, è possibile usare uno degli strumenti o SDK seguenti:

Creare un servizio collegato a Impala usando l'interfaccia utente

Usare la procedura seguente per creare un servizio collegato a Impala nell'interfaccia utente del portale di Azure.

  1. Passare alla scheda Gestisci nell'area di lavoro di Azure Data Factory o Synapse e selezionare Servizi collegati, quindi fare clic su Nuovo:

  2. Cercare Impala e selezionare il connettore Impala.

    Screenshot del connettore Impala.

  3. Configurare i dettagli del servizio, testare la connessione e creare il nuovo servizio collegato.

    Screenshot della configurazione del servizio collegato per Impala.

Dettagli di configurazione del connettore

Le sezioni seguenti riportano informazioni dettagliate sulle proprietà usate per definire entità di Data Factory specifiche per il connettore per Impala.

Proprietà del servizio collegato

Il connettore Impala supporta ora la versione 2.0 (anteprima). Fare riferimento a questa sezione per aggiornare la versione del connettore Impala dalla versione 1.0. Per informazioni dettagliate sulla proprietà, vedere le sezioni corrispondenti.

Versione 2.0 (anteprima)

Il servizio collegato Impala supporta le proprietà seguenti quando si applica la versione 2.0 (anteprima):

Proprietà Descrizione Richiesto
tipo La proprietà type deve essere impostata su Impala.
Versione Versione specificata. Il valore è 2.0.
ospitante Indirizzo IP o nome host del server Impala (ovvero, 192.168.222.160).
porto Porta TCP che il server Impala usa per l'ascolto delle connessioni client. Il valore predefinito è 21050. NO
protocollo di trasporto Thrift Protocollo di trasporto da usare nel livello Thrift. I valori consentiti sono : Binary, HTTP. Il valore predefinito è Binary.
tipo di autenticazione Tipo di autenticazione da usare.
I valori consentiti sono Anonymous e UsernameAndPassword.
nome utente Nome utente usato per accedere al server Impala. NO
parola d’ordine La password che corrisponde al nome utente quando si usa UsernameAndPassword. Contrassegnare questo campo come SecureString per archiviarlo in modo sicuro oppure fare riferimento a un segreto archiviato in Azure Key Vault. NO
abilitaSsl Specifica se le connessioni al server sono crittografate tramite TLS. Il valore predefinito è true. NO
abilitaValidazioneCertificatoServer Specificare se abilitare la convalida del certificato SSL del server quando ci si connette. Usare sempre System Trust Store. Il valore predefinito è true. NO
connectVia Runtime di integrazione da usare per la connessione all'archivio dati. Per altre informazioni, vedere la sezione Prerequisiti. Se non specificato, viene usato il runtime di integrazione di Azure predefinito. NO

Esempio:

{
    "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"
        }
    }
}

Versione 1.0

Le proprietà seguenti sono supportate per il servizio collegato Impala quando si applica la versione 1.0:

Per il servizio collegato Impala sono supportate le proprietà seguenti.

Proprietà Descrizione Richiesto
tipo La proprietà type deve essere impostata su Impala.
ospitante Indirizzo IP o nome host del server Impala (ovvero, 192.168.222.160).
porto Porta TCP che il server Impala usa per l'ascolto delle connessioni client. Il valore predefinito è 21050. NO
tipo di autenticazione Tipo di autenticazione da usare.
I valori consentiti sono Anonymous, SASLUsername e UsernameAndPassword.
nome utente Nome utente usato per accedere al server Impala. Quando si usa SASLUsername, il valore predefinito è Anonymous. NO
parola d’ordine La password che corrisponde al nome utente quando si usa UsernameAndPassword. Contrassegnare questo campo come SecureString per archiviarlo in modo sicuro oppure fare riferimento a un segreto archiviato in Azure Key Vault. NO
abilitaSsl Specifica se le connessioni al server sono crittografate tramite TLS. Il valore predefinito è false. NO
trustedCertPath (percorso certificato attendibile) Percorso completo del file PEM contenente i certificati CA attendibili usati per verificare il server in caso di connessione tramite TLS. Questa proprietà può essere impostata solo quando si usa TLS in runtime di integrazione self-hosted. Il valore predefinito è il file cacerts.pem installato con il runtime di integrazione. NO
utilizzare il TrustStore di sistema Specifica se usare o meno un certificato della CA dall'archivio di scopi consentiti o da un file .pem specificato. Il valore predefinito è false. NO
allowHostNameCNMismatch Specifica se è necessario che il nome del certificato TLS/SSL rilasciato dall'Autorità di certificazione corrisponda al nome host del server per la connessione tramite TLS. Il valore predefinito è false. NO
ConsentiCertificatoServerAutoFirmato Specifica se consentire o meno i certificati autofirmati dal server. Il valore predefinito è false. NO
connectVia Runtime di integrazione da usare per la connessione all'archivio dati. Per altre informazioni, vedere la sezione Prerequisiti. Se non specificato, viene usato il runtime di integrazione di Azure predefinito. NO

Esempio:

{
    "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"
        }
    }
}

Proprietà del set di dati

Per un elenco completo delle sezioni e delle proprietà disponibili per la definizione dei set di dati, vedere l'articolo Set di dati. Questa sezione presenta un elenco delle proprietà supportate dal set di dati Impala.

Per copiare dati da Impala, impostare la proprietà type del set di dati su ImpalaObject. Sono supportate le proprietà seguenti:

Proprietà Descrizione Richiesto
tipo La proprietà type del set di dati deve essere impostata su: ImpalaObject
schema Nome dello schema. No (se nell'origine dell'attività è specificato "query")
tabella Nome della tabella. No (se nell'origine dell'attività è specificato "query")
nomeTabella Nome della tabella con schema. Questa proprietà è supportata per garantire la compatibilità con le versioni precedenti. Per i nuovi carichi di lavoro, usare schema e table. No (se nell'origine dell'attività è specificato "query")

Esempio

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

Proprietà dell'attività di copia

Per un elenco completo delle sezioni e delle proprietà disponibili per la definizione delle attività, vedere l'articolo sulle pipeline. Questa sezione presenta un elenco delle proprietà supportate dal tipo di origine Impala.

Impala come tipo di origine

Per copiare dati da Impala, impostare il tipo di origine nell'attività di copia su ImpalaSource. Nella sezione source dell'attività di copia sono supportate le proprietà seguenti.

Proprietà Descrizione Richiesto
tipo La proprietà type dell'origine dell'attività di copia deve essere impostata su ImpalaSource.
quesito Usare la query SQL personalizzata per leggere i dati. Un esempio è "SELECT * FROM MyTable". No (se nel set di dati è specificato "tableName")

Esempio:

"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>"
            }
        }
    }
]

Mapping dei tipi di dati per Impala

Quando si copiano dati da e in Impala, vengono usati i seguenti mapping provvisori dei tipi di dati all'interno del servizio. Per informazioni su come l'attività di copia esegue il mapping dello schema di origine e del tipo di dati al sink, vedere Mapping dello schema e del tipo di dati.

Tipo di dati Impala Tipo di dati del servizio provvisorio (per la versione 2.0 (anteprima)) Tipo di dati del servizio provvisorio (per la versione 1.0)
ARRAY Stringa Stringa
BIGINT Int64 Int64
BOOLEANO Booleano Booleano
CHAR Stringa Stringa
DATTERO Data e ora Data e ora
DECIMALE Decimale Decimale
DOPPIO Doppio Doppio
Galleggiare Singolo Singolo
INT Int32 Int32
MAPPA Stringa Stringa
SMALLINT Int16 Int16
filo Stringa Stringa
STRUTTURA Stringa Stringa
TIMESTAMP DateTimeOffset (struttura per gestire data e ora con fuso orario) Data e ora
TINYINT SByte Int16
VARCHAR Stringa Stringa

Proprietà dell'attività Lookup

Per altre informazioni sulle proprietà, vedere Attività Lookup.

Aggiornare il connettore Impala

Ecco i passaggi che consentono di aggiornare il connettore Impala:

  1. Nella pagina Modifica servizio collegato selezionare la versione 2.0 (anteprima) e configurare il servizio collegato facendo riferimento alle proprietà del servizio collegato versione 2.0.

  2. Il mapping dei tipi di dati per il servizio collegato Impala versione 2.0 (anteprima) è diverso da quello per la versione 1.0. Per informazioni sul mapping dei tipi di dati più recente, vedere Mapping dei tipi di dati per Impala.

Differenze tra Impala versione 2.0 (anteprima) e versione 1.0

Il connettore Impala versione 2.0 (anteprima) offre nuove funzionalità ed è compatibile con la maggior parte delle funzionalità della versione 1.0. La tabella seguente illustra le differenze di funzionalità tra la versione 2.0 (anteprima) e la versione 1.0.

Versione 2.0 (anteprima) Versione 1.0
Il tipo di autenticazione SASLUsername non è supportato. Supportare il tipo di autenticazione SASLUsername.
Il valore predefinito di enableSSL è true. trustedCertPath useSystemTrustStore, allowHostNameCNMismatche allowSelfSignedServerCert non sono supportati.

enableServerCertificateValidation è supportato.
Il valore predefinito di enableSSL è false. trustedCertPath useSystemTrustStore, allowHostNameCNMismatche allowSelfSignedServerCert sono supportati.

enableServerCertificateValidation non è supportato.
I seguenti mapping vengono usati dai tipi di dati Impala a tipi di dati provvisori del servizio.

TIMESTAMP -> DateTimeOffset
TINYINT -> SByte
I seguenti mapping vengono usati dai tipi di dati Impala a tipi di dati provvisori del servizio.

TIMESTAMP -> DateTime
TINYINT -> Int16

Per un elenco degli archivi dati supportati come origini e sink dall'attività di copia, vedere Archivi dati supportati.