Copiare dati da e verso il database di Azure per PostgreSQL usando Azure Data FactoryCopy data to and from Azure Database for PostgreSQL by using Azure Data Factory

Questo articolo descrive come usare la funzionalità di copia dell'attività in Azure Data Factory per copiare dati da database di Azure per PostgreSQL.This article describes how to use the copy activity feature in Azure Data Factory to copy data from Azure Database for PostgreSQL. Si basa sull' attività di copia in Azure Data Factory articolo, che presenta una panoramica generale dell'attività di copia.It builds on the Copy activity in Azure Data Factory article, which presents a general overview of copy activity.

Questo connettore è specializzato per il servizio database di Azure per PostgreSQL.This connector is specialized for the Azure Database for PostgreSQL service. Per copiare dati da un database PostgreSQL generico situato in locale o nel cloud, usare il connettore PostgreSQL.To copy data from a generic PostgreSQL database located on-premises or in the cloud, use the PostgreSQL connector.

Funzionalità supportateSupported capabilities

Questo connettore di database di Azure per PostgreSQL è supportato per le attività seguenti:This Azure Database for PostgreSQL connector is supported for the following activities:

È possibile copiare i dati dal Database di Azure per PostgreSQL a un qualsiasi archivio dati sink supportato.You can copy data from Azure Database for PostgreSQL to any supported sink data store. In alternativa, è possibile copiare dati da qualsiasi archivio dati di origine supportato a database di Azure per PostgreSQL.Or, you can copy data from any supported source data store to Azure Database for PostgreSQL. Per un elenco di archivi dati supportati dall'attività di copia come origini e sink, vedere la tabella relativa agli archivi dati supportati .For a list of data stores that the copy activity supports as sources and sinks, see the Supported data stores table.

Azure Data Factory fornisce un driver predefinito per abilitare la connettività.Azure Data Factory provides a built-in driver to enable connectivity. Non è quindi necessario installare manualmente alcun driver per usare questo connettore.Therefore, you don't need to manually install any driver to use this connector.

Inizia oraGetting started

È possibile usare l'attività di copia con una pipeline tramite uno degli strumenti o degli SDK seguenti.You can use one of the following tools or SDKs to use the copy activity with a pipeline. Per istruzioni dettagliate, selezionare un collegamento:Select a link for step-by-step instructions:

Le sezioni seguenti offrono informazioni dettagliate sulle proprietà che vengono usate per definire Data Factory entità specifiche del connettore database di Azure per PostgreSQL.The following sections offer details about properties that are used to define Data Factory entities specific to Azure Database for PostgreSQL connector.

Proprietà del servizio collegatoLinked service properties

Per il servizio collegato database di Azure per PostgreSQL sono supportate le proprietà seguenti:The following properties are supported for the Azure Database for PostgreSQL linked service:

ProprietàProperty DescriptionDescription ObbligatoriaRequired
typetype La proprietà Type deve essere impostata su: AzurePostgreSql.The type property must be set to: AzurePostgreSql. Yes
connectionStringconnectionString Stringa di connessione ODBC per la connessione al Database di Azure per PostgreSQL.An ODBC connection string to connect to Azure Database for PostgreSQL.
Contrassegnare questo campo come SecureString per archiviare la chiave in modo sicuro in Data Factory.Mark this field as a SecureString to store it securely in Data Factory. È anche possibile inserire una password in Azure Key Vault ed estrarre la configurazione password dalla stringa di connessione.You can also put a password in Azure Key Vault and pull the password configuration out of the connection string. Per ulteriori informazioni, vedere gli esempi seguenti e archiviare le credenziali in Azure Key Vault .See the following samples and Store credentials in Azure Key Vault for more details.
Yes
connectViaconnectVia Questa proprietà rappresenta il runtime di integrazione da usare per la connessione all'archivio dati.This property represents the integration runtime to be used to connect to the data store. È possibile usare il runtime di integrazione di Azure o il runtime di integrazione self-hosted (se l'archivio dati si trova in una rete privata).You can use Azure Integration Runtime or Self-hosted Integration Runtime (if your data store is located in private network). Se non diversamente specificato, viene usato il runtime di integrazione di Azure predefinito.If not specified, it uses the default Azure Integration Runtime. NoNo

Una stringa di connessione tipica è Server=<server>.postgres.database.azure.com;Database=<database>;Port=<port>;UID=<username>;Password=<Password>.A typical connection string is Server=<server>.postgres.database.azure.com;Database=<database>;Port=<port>;UID=<username>;Password=<Password>. Di seguito sono riportate altre proprietà che è possibile impostare in base al caso:Here are more properties you can set per your case:

ProprietàProperty DescriptionDescription OpzioniOptions ObbligatoriaRequired
EncryptionMethod (EM)EncryptionMethod (EM) Il metodo usato dal driver per crittografare i dati inviati tra il driver e il server di database.The method the driver uses to encrypt data sent between the driver and the database server. Ad esempio, EncryptionMethod=<0/1/6>;For example, EncryptionMethod=<0/1/6>; 0 (Nessuna crittografia) (impostazione predefinita) / 1 (SSL) / 6 (RequestSSL)0 (No Encryption) (Default) / 1 (SSL) / 6 (RequestSSL) NoNo
ValidateServerCertificate (VSC)ValidateServerCertificate (VSC) Determina se il driver convalida il certificato inviato dal server di database quando è abilitata la crittografia SSL (metodo di crittografia = 1).Determines whether the driver validates the certificate that's sent by the database server when SSL encryption is enabled (Encryption Method=1). Ad esempio, ValidateServerCertificate=<0/1>;For example, ValidateServerCertificate=<0/1>; 0 (disabilitato) (impostazione predefinita) / 1 (abilitato)0 (Disabled) (Default) / 1 (Enabled) NoNo

Esempio:Example:

{
    "name": "AzurePostgreSqlLinkedService",
    "properties": {
        "type": "AzurePostgreSql",
        "typeProperties": {
            "connectionString": {
                "type": "SecureString",
                "value": "Server=<server>.postgres.database.azure.com;Database=<database>;Port=<port>;UID=<username>;Password=<Password>"
            }
        }
    }
}

Esempio:Example:

Archivia la password in Azure Key VaultStore password in Azure Key Vault

{
    "name": "AzurePostgreSqlLinkedService",
    "properties": {
        "type": "AzurePostgreSql",
        "typeProperties": {
            "connectionString": {
                 "type": "SecureString",
                 "value": "Server=<server>.postgres.database.azure.com;Database=<database>;Port=<port>;UID=<username>;"
            },
            "password": { 
                "type": "AzureKeyVaultSecret", 
                "store": { 
                    "referenceName": "<Azure Key Vault linked service name>", 
                    "type": "LinkedServiceReference" 
                }, 
                "secretName": "<secretName>" 
            }
        }
    }
}

Proprietà del set di datiDataset properties

Per un elenco completo delle sezioni e delle proprietà disponibili per la definizione dei set di impostazioni, vedere DataSets in Azure Data Factory.For a full list of sections and properties available for defining datasets, see Datasets in Azure Data Factory. Questa sezione presenta un elenco delle proprietà supportate da database di Azure per PostgreSQL nei set di dati.This section provides a list of properties that Azure Database for PostgreSQL supports in datasets.

Per copiare dati dal Database di Azure per PostgreSQL, impostare la proprietà type del set di dati su AzurePostgreSqlTable.To copy data from Azure Database for PostgreSQL, set the type property of the dataset to AzurePostgreSqlTable. Sono supportate le proprietà seguenti:The following properties are supported:

ProprietàProperty DescriptionDescription ObbligatoriaRequired
typetype La proprietà Type del set di dati deve essere impostata su AzurePostgreSqlTableThe type property of the dataset must be set to AzurePostgreSqlTable Yes
tableNametableName Nome della tabella.Name of the table No (se nell'origine dell'attività è specificato "query")No (if "query" in activity source is specified)

Esempio:Example:

{
    "name": "AzurePostgreSqlDataset",
    "properties": {
        "type": "AzurePostgreSqlTable",
        "linkedServiceName": {
            "referenceName": "<AzurePostgreSql linked service name>",
            "type": "LinkedServiceReference"
        },
        "typeProperties": {}
    }
}

Proprietà dell'attività di copiaCopy activity properties

Per un elenco completo delle sezioni e delle proprietà disponibili per la definizione delle attività, vedere pipeline e attività in Azure Data Factory.For a full list of sections and properties available for defining activities, see Pipelines and activities in Azure Data Factory. Questa sezione presenta un elenco delle proprietà supportate da un'origine database di Azure per PostgreSQL.This section provides a list of properties supported by an Azure Database for PostgreSQL source.

Database di Azure per PostgreSQL come origineAzure Database for PostgreSql as source

Per copiare i dati da un Database di Azure per PostgreSQL, impostare il tipo di origine nell'attività di copia su AzurePostgreSqlSource.To copy data from Azure Database for PostgreSQL, set the source type in the copy activity to AzurePostgreSqlSource. Nella sezione origine dell'attività di copia sono supportate le proprietà seguenti:The following properties are supported in the copy activity source section:

ProprietàProperty DescriptionDescription ObbligatoriaRequired
typetype La proprietà Type dell'origine dell'attività di copia deve essere impostata su AzurePostgreSqlSourceThe type property of the copy activity source must be set to AzurePostgreSqlSource Yes
queryquery Usare la query SQL personalizzata per leggere i dati.Use the custom SQL query to read data. Ad esempio: "SELECT * FROM MyTable"For example: "SELECT * FROM MyTable" No (se è specificata la proprietà TableName nel set di dati)No (if the tableName property in the dataset is specified)

Esempio:Example:

"activities":[
    {
        "name": "CopyFromAzurePostgreSql",
        "type": "Copy",
        "inputs": [
            {
                "referenceName": "<AzurePostgreSql input dataset name>",
                "type": "DatasetReference"
            }
        ],
        "outputs": [
            {
                "referenceName": "<output dataset name>",
                "type": "DatasetReference"
            }
        ],
        "typeProperties": {
            "source": {
                "type": "AzurePostgreSqlSource",
                "query": "<custom query e.g. SELECT * FROM MyTable>"
            },
            "sink": {
                "type": "<sink type>"
            }
        }
    }
]

Database di Azure per PostgreSQL come sinkAzure Database for PostgreSQL as sink

Per copiare dati in database di Azure per PostgreSQL, nella sezione sink dell'attività di copia sono supportate le proprietà seguenti:To copy data to Azure Database for PostgreSQL, the following properties are supported in the copy activity sink section:

ProprietàProperty DescriptionDescription ObbligatoriaRequired
typetype La proprietà Type del sink dell'attività di copia deve essere impostata su AzurePostgreSQLSink.The type property of the copy activity sink must be set to AzurePostgreSQLSink. Yes
preCopyScriptpreCopyScript Specificare una query SQL per l'attività di copia da eseguire prima di scrivere i dati nel database di Azure per PostgreSQL a ogni esecuzione.Specify a SQL query for the copy activity to execute before you write data into Azure Database for PostgreSQL in each run. È possibile usare questa proprietà per pulire i dati precaricati.You can use this property to clean up the preloaded data. NoNo
writeBatchSizewriteBatchSize Inserisce i dati nella tabella di database di Azure per PostgreSQL quando la dimensione del buffer raggiunge writeBatchSize.Inserts data into the Azure Database for PostgreSQL table when the buffer size reaches writeBatchSize.
Il valore consentito è un numero intero che rappresenta il numero di righe.Allowed value is an integer that represents the number of rows.
No (il valore predefinito è 10.000)No (default is 10,000)
writeBatchTimeoutwriteBatchTimeout Tempo di attesa per l'operazione di inserimento batch da completare prima del timeout.Wait time for the batch insert operation to complete before it times out.
I valori consentiti sono stringhe TimeSpan.Allowed values are Timespan strings. Ad esempio "00:30:00" (30 minuti).An example is 00:30:00 (30 minutes).
No (il valore predefinito è 00:00:30)No (default is 00:00:30)

Esempio:Example:

"activities":[
    {
        "name": "CopyToAzureDatabaseForPostgreSQL",
        "type": "Copy",
        "inputs": [
            {
                "referenceName": "<input dataset name>",
                "type": "DatasetReference"
            }
        ],
        "outputs": [
            {
                "referenceName": "<Azure PostgreSQL output dataset name>",
                "type": "DatasetReference"
            }
        ],
        "typeProperties": {
            "source": {
                "type": "<source type>"
            },
            "sink": {
                "type": "AzurePostgreSQLSink",
                "preCopyScript": "<custom SQL script>",
                "writeBatchSize": 100000
            }
        }
    }
]

Proprietà attività di ricercaLookup activity properties

Per ulteriori informazioni sulle proprietà, vedere attività Lookup in Azure Data Factory.For more information about the properties, see Lookup activity in Azure Data Factory.

Passaggi successiviNext steps

Per un elenco degli archivi dati supportati come origini o sink dall'attività di copia in Azure Data Factory, vedere Archivi dati supportati.For a list of data stores supported as sources and sinks by the copy activity in Azure Data Factory, see Supported data stores.