Condividi tramite


Copiare dati da Presto tramite 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à Copy in una pipeline di Azure Data Factory o Synapse Analytics per copiare dati da Presto. Si basa sull'articolo di panoramica dell'attività di copia che presenta una panoramica generale sull'attività di copia.

Importante

Il connettore Presto versione 2.0 offre un supporto nativo Presto migliorato. Se stai usando Presto Connector versione 1.0 nella tua soluzione, aggiorna il connettore Presto prima del 31 agosto 2025. Per informazioni dettagliate sulla differenza tra la versione 2.0 e la versione 1.0, vedere questa sezione .

Funzionalità supportate

Questo connettore di Presto è 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/sink dall'attività di copia, vedere la tabella relativa agli archivi dati supportati.

Il servizio offre un driver predefinito per abilitare la connettività, pertanto non è necessario installare manualmente alcun driver usando questo connettore.

Introduzione

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

Creare un servizio collegato a Presto usando l'interfaccia utente

Usare la procedura seguente per creare un servizio collegato a Presto 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 Presto e selezionare il connettore di Presto.

    Screenshot del connettore di Presto.

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

    Screenshot della configurazione del servizio collegato di Presto.

Dettagli di configurazione del connettore

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

Proprietà del servizio collegato

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

Versione 2.0

Il servizio collegato Presto supporta le proprietà seguenti quando si applica la versione 2.0:

Proprietà Descrizione Richiesto
tipo La proprietà type deve essere impostata su: Presto.
Versione Versione specificata. Il valore è 2.0.
ospitante Indirizzo IP o nome host del server Presto, (ad esempio, 192.168.222.160)
catalogo Il contesto del catalogo di tutte le richieste sul server.
porto Porta TCP che il server Presto usa per l'ascolto delle connessioni client. Il valore predefinito è 8443. NO
tipo di autenticazione Meccanismo di autenticazione usato per la connessione al server Presto.
I valori consentiti sono: Anonima, LDAP.
nome utente Nome utente usato per connettersi al server Presto. NO
parola d’ordine Password corrispondente al nome utente. 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 vengono 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
ID del fuso orario Fuso orario locale usato dalla connessione. I valori validi per questa opzione vengono specificati nel database del fuso orario IANA. Il valore predefinito è il fuso orario di sistema Presto. NO

Esempio:

{
    "name": "PrestoLinkedService",
    "properties": {
        "type": "Presto",
        "version" : "2.0",
        "typeProperties": {
            "host" : "<host>",
            "catalog" : "<catalog>",
            "port" : 8443,
            "authenticationType" : "LDAP",
            "username" : "<username>",
            "password": {
                 "type": "SecureString",
                 "value": "<password>"
            },
            "enableSsl": true,
            "enableServerCertificateValidation": true,
            "timeZoneID" : ""
        }
    }
}

Versione 1.0

Il servizio collegato Presto supporta le proprietà seguenti quando si applica la versione 1.0:

Proprietà Descrizione Richiesto
tipo La proprietà type deve essere impostata su: Presto.
ospitante Indirizzo IP o nome host del server Presto, (ad esempio, 192.168.222.160)
versioneDelServer Versione del server Presto, (ad esempio, 0,148-t)
catalogo Il contesto del catalogo di tutte le richieste sul server.
porto Porta TCP che il server Presto usa per l'ascolto delle connessioni client. Il valore predefinito è 8080. NO
tipo di autenticazione Meccanismo di autenticazione usato per la connessione al server Presto.
I valori consentiti sono: Anonima, LDAP.
nome utente Nome utente usato per connettersi al server Presto. NO
parola d’ordine Password corrispondente al nome utente. 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 vengono crittografate tramite TLS. Il valore predefinito è false. NO
trustedCertPath (percorso certificato attendibile) Percorso completo del file .pem contenente certificati della CA attendibili per verificare il server durante la 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 richiedere un nome di certificato TLS/SSL rilasciato dalla CA in modo che corrisponda al nome host del server durante 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
ID del fuso orario Fuso orario locale usato dalla connessione. I valori validi per questa opzione vengono specificati nel database del fuso orario IANA. Il valore predefinito è il fuso orario di Azure Data Factory. NO

Esempio:

{
    "name": "PrestoLinkedService",
    "properties": {
        "type": "Presto",
        "typeProperties": {
            "host" : "<host>",
            "serverVersion" : "0.148-t",
            "catalog" : "<catalog>",
            "port" : "<port>",
            "authenticationType" : "LDAP",
            "username" : "<username>",
            "password": {
                 "type": "SecureString",
                 "value": "<password>"
            },
            "timeZoneID" : "Europe/Berlin"
        }
    }
}

Proprietà del set di dati

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

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

Proprietà Descrizione Richiesto
tipo La proprietà tipo del set di dati deve essere impostata su PrestoObject
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": "PrestoDataset",
    "properties": {
        "type": "PrestoObject",
        "typeProperties": {},
        "schema": [],
        "linkedServiceName": {
            "referenceName": "<Presto 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 dall'origine Presto.

Presto come origine

Per copiare dati da Presto, impostare il tipo di origine nell'attività di copia su PrestoSource. Nella sezione origine 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: PrestoSource.
quesito Usare la query SQL personalizzata per leggere i dati. Ad esempio: "SELECT * FROM MyTable". No (se nel set di dati è specificato "tableName")

Esempio:

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

Mappatura dei tipi di dati per Presto

Quando si copiano dati da Presto, i mapping seguenti si applicano dai tipi di dati di Presto ai tipi di dati interni usati dal 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 Presto Tipo di dati del servizio provvisorio (per la versione 2.0) Tipo di dati del servizio provvisorio (per la versione 1.0)
ARRAY Stringa Stringa
BIGINT Int64 Int64
BOOLEANO Booleano Booleano
CHAR Stringa Stringa
DATTERO Dati Data e ora
DECIMAL (precisione < 28) Decimale Decimale
DECIMAL (precisione >= 28) Decimale Stringa
DOPPIO Doppio Doppio
NUMERO INTERO Int32 Int32
Intervallo Giorno a Secondo Intervallo di tempo Non supportato.
INTERVALLO_ANNO_A_MESE Stringa Non supportato.
IPADDRESS Stringa Non supportato.
JSON (JavaScript Object Notation) Stringa Stringa
MAPPA Stringa Stringa
REALE Singolo Singolo
FILA Stringa Stringa
SMALLINT Int16 Int16
TEMPO Tempo Intervallo di tempo
ORARIO_CON_FUSO_ORARIO Stringa Stringa
TIMESTAMP Data e ora Data e ora
TIMESTAMPWITHTIMEZONE Datetimeoffset Non supportato.
TINYINT SByte Int16
UUID (Identificatore Unico Universale) Guid Non supportato.
VARBINARY Byte[] Byte[]
VARCHAR Stringa Stringa

Proprietà dell'attività Lookup

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

Aggiornare il connettore Presto

Ecco i passaggi che consentono di aggiornare il connettore Presto:

  1. Nella pagina Modifica servizio collegato selezionare la versione 2.0 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 Presto versione 2.0 è 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 Presto.

Differenze tra presto connector versione 2.0 e versione 1.0

Il connettore Presto versione 2.0 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 e la versione 1.0.

Versione 2.0 Versione 1.0
serverVersion non è supportato. serverVersion è supportato.
Il valore predefinito di port è 8443. Il valore predefinito di port è 8080.
Il valore predefinito di enableSSL è true.

enableServerCertificateValidation è supportato.

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

enableServerCertificateValidation non è supportato.

trustedCertPath, useSystemTrustStore, allowHostNameCNMismatch e allowSelfSignedServerCert sono supportati.
Il valore predefinito di timeZoneID è il fuso orario del sistema Presto. Il valore predefinito di timeZoneID è il fuso orario di Azure Data Factory.
I seguenti mapping sono utilizzati per passare dai tipi di dati di Presto ai tipi di dati provvisori del servizio.

DATE -> Data
DECIMALE (Precisione >= 28) -> Decimale
INTERVAL_DAY_TO_SECOND -> Intervallo di tempo
INTERVAL_YEAR_TO_MONTH -> Stringa
IPADDRESS -> String
TIME -> Tempo
TIMESTAMPWITHTIMEZONE -> Datetimeoffset
TINYINT -> SByte
UUID -> Guid
I seguenti mapping sono utilizzati per passare dai tipi di dati di Presto ai tipi di dati provvisori del servizio.

DATE -> Data e ora
DECIMAL (Precisione >= 28) -> Stringa
TIME -> Intervallo di tempo
TINYINT -> Int16
Le altre mappature elencate a sinistra supportate dalla versione 2.0 non sono supportate dalla versione 1.0.

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