Copiare dati da DB2 usando Azure Data FactoryCopy data from DB2 by using Azure Data Factory

Questo articolo illustra come usare l'attività di copia in Azure Data Factory per copiare dati da un database DB2.This article outlines how to use the Copy Activity in Azure Data Factory to copy data from a DB2 database. Si basa sull'articolo di panoramica dell'attività di copia che presenta una panoramica generale sull'attività di copia.It builds on the copy activity overview article that presents a general overview of copy activity.

Funzionalità supportateSupported capabilities

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

È possibile copiare dati da un database DB2 in qualsiasi archivio dati di sink supportato.You can copy data from DB2 database to any supported sink data store. Per un elenco degli archivi dati supportati come origini/sink dall'attività di copia, vedere la tabella relativa agli archivi dati supportati.For a list of data stores that are supported as sources/sinks by the copy activity, see the Supported data stores table.

In particolare, il connettore DB2 supporta le piattaforme e le versioni di IBM DB2 seguenti con DRDA (Distributed Relational Database Architecture) SQLAM (SQL Access Manager) versione 9, 10 e 11:Specifically, this DB2 connector supports the following IBM DB2 platforms and versions with Distributed Relational Database Architecture (DRDA) SQL Access Manager (SQLAM) version 9, 10 and 11:

  • IBM DB2 per z/OS 12,1IBM DB2 for z/OS 12.1
  • IBM DB2 per z/OS 11.1IBM DB2 for z/OS 11.1
  • IBM DB2 per z/OS 10.1IBM DB2 for z/OS 10.1
  • IBM DB2 per i 7.3IBM DB2 for i 7.3
  • IBM DB2 per i 7.2IBM DB2 for i 7.2
  • IBM DB2 per i 7.1IBM DB2 for i 7.1
  • IBM DB2 per LUW 11IBM DB2 for LUW 11
  • IBM DB2 per LUW 10.5IBM DB2 for LUW 10.5
  • IBM DB2 per LUW 10.1IBM DB2 for LUW 10.1

Suggerimento

Se si riceve un messaggio d'errore che indica che "Non è stato trovato il pacchetto corrispondente a una richiesta di esecuzione dell'istruzione SQL.If you receive an error message that states "The package corresponding to an SQL statement execution request was not found. SQLSTATE=51002 SQLCODE=805", il motivo è che non viene creato un pacchetto necessario per un utente normale in tale sistema operativo.SQLSTATE=51002 SQLCODE=-805", the reason is a needed package is not created for normal user on such OS. Seguire le istruzioni seguenti in base al tipo di server DB2 in uso:Follow these instructions according to your DB2 server type:

  • DB2 per i (AS400): consente all'utente esperto di creare una raccolta per l'utente di accesso prima di usare l'attività di copia.DB2 for i (AS400): let power user create collection for the login user before using copy activity. Comando: create collection <username>Command: create collection <username>
  • DB2 per z/OS o LUW: usare un account con privilegi elevati (utente esperto o amministratore con autorità di pacchetto e autorizzazioni BIND, BINDADD, GRANT EXECUTE TO PUBLIC), per eseguire una volta l'attività di copia. Il pacchetto necessario viene quindi creato automaticamente durante la copia.DB2 for z/OS or LUW: use a high privilege account - power user or admin with package authorities and BIND, BINDADD, GRANT EXECUTE TO PUBLIC permissions - to run the copy activity once, then the needed package is automatically created during copy. In seguito è possibile tornare a essere un utente normale per le successive esecuzioni delle operazioni di copia.Afterwards, you can switch back to normal user for your subsequent copy runs.

PrerequisitiPrerequisites

Se l'archivio dati è configurato in uno dei modi seguenti, è necessario configurare un Integration Runtime self-hosted per connettersi a questo archivio dati:If your data store is configured in one of the following ways, you need to set up a Self-hosted Integration Runtime in order to connect to this data store:

  • L'archivio dati si trova all'interno di una rete locale, all'interno di una rete virtuale di Azure o all'interno di un cloud privato virtuale di Amazon.The data store is located inside an on-premises network, inside Azure Virtual Network, or inside Amazon Virtual Private Cloud.
  • L'archivio dati è un servizio dati cloud gestito in cui l'accesso è limitato agli indirizzi IP consentiti nelle regole del firewall.The data store is a managed cloud data service where the access is restricted to IPs whitelisted in the firewall rules.

Il runtime di integrazione offre un driver per DB2 integrato e non è quindi necessario installare manualmente alcun driver quando si copiano dati da/in DB2.The Integration Runtime provides a built-in DB2 driver, therefore you don't need to manually install any driver when copying data from DB2.

IntroduzioneGetting 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 riportano informazioni dettagliate sulle proprietà che vengono usate per definire entità di Data Factory specifiche per il connettore DB2.The following sections provide details about properties that are used to define Data Factory entities specific to DB2 connector.

Proprietà del servizio collegatoLinked service properties

Per il servizio collegato di DB2 sono supportate le proprietà seguenti:The following properties are supported for DB2 linked service:

ProprietàProperty DescrizioneDescription ObbligatoriaRequired
typetype La proprietà type deve essere impostata su: Db2The type property must be set to: Db2 Yes
serverserver Nome del server DB2.Name of the DB2 server. È possibile specificare il numero di porta dopo il nome del server delimitato da due punti, ad esempio server:port.You can specify the port number following the server name delimited by colon e.g. server:port. Yes
databasedatabase Nome del database DB2.Name of the DB2 database. Yes
authenticationTypeauthenticationType Tipo di autenticazione usato per connettersi al database DB2.Type of authentication used to connect to the DB2 database.
Il valore consentito è: Basic.Allowed value is: Basic.
Yes
usernameusername Specificare il nome utente per la connessione al database DB2.Specify user name to connect to the DB2 database. Yes
passwordpassword Specificare la password per l'account utente specificato per il nome utente.Specify password for the user account you specified for the username. Contrassegnare questo campo come SecureString per archiviarlo in modo sicuro in Azure Data Factory oppure fare riferimento a un segreto archiviato in Azure Key Vault.Mark this field as a SecureString to store it securely in Data Factory, or reference a secret stored in Azure Key Vault. Yes
connectViaconnectVia Il runtime di integrazione da usare per la connessione all'archivio dati.The Integration Runtime to be used to connect to the data store. Ulteriori informazioni sono disponibili nella sezione prerequisiti .Learn more from Prerequisites section. Se non specificato, viene usato il runtime di integrazione di Azure predefinito.If not specified, it uses the default Azure Integration Runtime. NoNo

Esempio:Example:

{
    "name": "Db2LinkedService",
    "properties": {
        "type": "Db2",
        "typeProperties": {
            "server": "<servername:port>",
            "database": "<dbname>",
            "authenticationType": "Basic",
            "username": "<username>",
            "password": {
                "type": "SecureString",
                "value": "<password>"
            }
        },
        "connectVia": {
            "referenceName": "<name of Integration Runtime>",
            "type": "IntegrationRuntimeReference"
        }
    }
}

Proprietà del set di datiDataset properties

Per un elenco completo delle sezioni e delle proprietà disponibili per la definizione di set di dati, vedere l'articolo sui set di dati.For a full list of sections and properties available for defining datasets, see the datasets article. Questa sezione presenta un elenco delle proprietà supportate dal set di dati DB2.This section provides a list of properties supported by DB2 dataset.

Per copiare dati da DB2, sono supportate le proprietà seguenti:To copy data from DB2, the following properties are supported:

ProprietàProperty DescrizioneDescription ObbligatoriaRequired
typetype La proprietà type del set di dati deve essere impostata su: Db2TableThe type property of the dataset must be set to: Db2Table YesYes
schemaschema Nome dello schema.Name of the schema. No (se nell'origine dell'attività è specificato "query")No (if "query" in activity source is specified)
tabletable Nome della tabella.Name of the table. No (se nell'origine dell'attività è specificato "query")No (if "query" in activity source is specified)
tableNametableName Nome della tabella con schema.Name of the table with schema. Questa proprietà è supportata per compatibilità con le versioni precedenti.This property is supported for backward compatibility. Usare schema etable per il nuovo carico di lavoro.Use schema and table for new workload. No (se nell'origine dell'attività è specificato "query")No (if "query" in activity source is specified)

EsempioExample

{
    "name": "DB2Dataset",
    "properties":
    {
        "type": "Db2Table",
        "typeProperties": {},
        "schema": [],
        "linkedServiceName": {
            "referenceName": "<DB2 linked service name>",
            "type": "LinkedServiceReference"
        }
    }
}

Se si usa RelationalTable un set di dati tipizzato, è ancora supportato così com'è, mentre si consiglia di usare quello nuovo in futuro.If you were using RelationalTable typed dataset, it is still supported as-is, while you are suggested to use the new one going forward.

Proprietà dell'attività di copiaCopy activity properties

Per un elenco completo delle sezioni e delle proprietà disponibili per la definizione delle attività, vedere l'articolo sulle pipeline.For a full list of sections and properties available for defining activities, see the Pipelines article. Questa sezione presenta un elenco delle proprietà supportate dall'origine DB2.This section provides a list of properties supported by DB2 source.

DB2 come origineDB2 as source

Per copiare dati da DB2, nella sezione origine dell'attività di copia sono supportate le proprietà seguenti:To copy data from DB2, the following properties are supported in the copy activity source section:

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

Esempio:Example:

"activities":[
    {
        "name": "CopyFromDB2",
        "type": "Copy",
        "inputs": [
            {
                "referenceName": "<DB2 input dataset name>",
                "type": "DatasetReference"
            }
        ],
        "outputs": [
            {
                "referenceName": "<output dataset name>",
                "type": "DatasetReference"
            }
        ],
        "typeProperties": {
            "source": {
                "type": "Db2Source",
                "query": "SELECT * FROM \"DB2ADMIN\".\"Customers\""
            },
            "sink": {
                "type": "<sink type>"
            }
        }
    }
]

Se si usa RelationalSource l'origine tipizzata, questo è ancora supportato così com'è, mentre si consiglia di usare quello nuovo in futuro.If you were using RelationalSource typed source, it is still supported as-is, while you are suggested to use the new one going forward.

Mapping dei tipi di dati per DB2Data type mapping for DB2

Quando si copiano dati da DB2, vengono usati i mapping seguenti tra i tipi di dati di DB2 e i tipi di dati provvisori di Azure Data Factory.When copying data from DB2, the following mappings are used from DB2 data types to Azure Data Factory interim data types. Vedere Mapping dello schema e del tipo di dati per informazioni su come l'attività di copia esegue il mapping dello schema di origine e del tipo di dati al sink.See Schema and data type mappings to learn about how copy activity maps the source schema and data type to the sink.

Tipo di database DB2DB2 Database type Tipo di dati provvisori di Data FactoryData factory interim data type
BigIntBigInt Int64Int64
BinaryBinary Byte[]Byte[]
BlobBlob Byte[]Byte[]
CharChar StringString
ClobClob StringString
DateDate DatetimeDatetime
DB2DynArrayDB2DynArray StringString
DbClobDbClob StringString
DecimalDecimal DecimalDecimal
DecimalFloatDecimalFloat DecimalDecimal
DoubleDouble DoubleDouble
FloatFloat DoubleDouble
GraphicGraphic StringString
IntegerInteger Int32Int32
LongVarBinaryLongVarBinary Byte[]Byte[]
LongVarCharLongVarChar StringString
LongVarGraphicLongVarGraphic StringString
NumericNumeric DecimalDecimal
RealReal SingleSingle
SmallIntSmallInt Int16Int16
TimeTime TimeSpanTimeSpan
TimestampTimestamp DateTimeDateTime
VarBinaryVarBinary Byte[]Byte[]
VarCharVarChar StringString
VarGraphicVarGraphic StringString
XmlXml Byte[]Byte[]

Proprietà attività di ricercaLookup activity properties

Per informazioni dettagliate sulle proprietà, controllare l' attività di ricerca.To learn details about the properties, check Lookup activity.

Passaggi successiviNext steps

Per un elenco degli archivi dati supportati come origini o sink dall'attività di copia in Azure Data Factory, vedere gli 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.