Kopiera data från och till ODBC-datalager med hjälp av Azure Data Factory eller Synapse Analytics
GÄLLER FÖR: Azure Data Factory Azure Synapse Analytics
Dricks
Prova Data Factory i Microsoft Fabric, en allt-i-ett-analyslösning för företag. Microsoft Fabric omfattar allt från dataflytt till datavetenskap, realtidsanalys, business intelligence och rapportering. Lär dig hur du startar en ny utvärderingsversion kostnadsfritt!
Den här artikeln beskriver hur du använder kopieringsaktiviteten i Azure Data Factory för att kopiera data från och till ett ODBC-datalager. Den bygger på översiktsartikeln för kopieringsaktivitet som visar en allmän översikt över kopieringsaktiviteten.
Funktioner som stöds
Den här ODBC-anslutningsappen stöds för följande funktioner:
Funktioner som stöds | IR |
---|---|
Kopieringsaktivitet (källa/mottagare) | (2) |
Sökningsaktivitet | (2) |
(1) Azure Integration Runtime (2) Lokalt installerad integrationskörning
En lista över datalager som stöds som källor/mottagare finns i tabellen Datalager som stöds.
Mer specifikt stöder den här ODBC-anslutningsappen kopiering av data från/till alla ODBC-kompatibla datalager med grundläggande eller anonym autentisering. En 64-bitars ODBC-drivrutin krävs. För ODBC-mottagare stöder tjänsten ODBC version 2.0 standard.
Förutsättningar
Om du vill använda den här ODBC-anslutningsappen måste du:
- Konfigurera en lokalt installerad integrationskörning. Mer information finns i artikeln Om lokalt installerad integrationskörning .
- Installera 64-bitars ODBC-drivrutinen för datalagret på Integration Runtime-datorn.
Komma igång
Om du vill utföra kopieringsaktiviteten med en pipeline kan du använda något av följande verktyg eller SDK:er:
- Verktyget Kopiera data
- Azure-portalen
- The .NET SDK
- The Python SDK
- Azure PowerShell
- REST-API:et
- Azure Resource Manager-mallen
Skapa en länkad tjänst till ett ODBC-datalager med hjälp av användargränssnittet
Använd följande steg för att skapa en länkad tjänst till ett ODBC-datalager i azure-portalens användargränssnitt.
Bläddra till fliken Hantera i Din Azure Data Factory- eller Synapse-arbetsyta och välj Länkade tjänster och klicka sedan på Ny:
Sök efter ODBC och välj ODBC-anslutningsappen.
Konfigurera tjänstinformationen, testa anslutningen och skapa den nya länkade tjänsten.
Konfigurationsinformation för anslutningsprogram
Följande avsnitt innehåller information om egenskaper som används för att definiera Data Factory-entiteter som är specifika för ODBC-anslutningsprogram.
Länkade tjänstegenskaper
Följande egenskaper stöds för ODBC-länkad tjänst:
Property | Beskrivning | Obligatoriskt |
---|---|---|
type | Typegenskapen måste anges till: Odbc | Ja |
connectionString | Niska veze exklusive autentiseringsuppgiftsdelen. Du kan ange niska veze med mönster som Driver={SQL Server};Server=Server.database.windows.net; Database=TestDatabase; , eller använda system-DSN (datakällnamn) som du har konfigurerat på Integration Runtime-datorn med (du behöver fortfarande ange autentiseringsuppgiftsdelen i den länkade tjänsten i enlighet med DSN=<name of the DSN on IR machine>; detta).Du kan också placera ett lösenord i Azure Key Vault och hämta konfigurationen password från niska veze. Mer information finns i Lagra autentiseringsuppgifter i Azure Key Vault. |
Ja |
authenticationType | Typ av autentisering som används för att ansluta till ODBC-datalagret. Tillåtna värden är: Grundläggande och Anonym. |
Ja |
userName | Ange användarnamn om du använder grundläggande autentisering. | Nej |
password | Ange lösenord för det användarkonto som du angav för userName. Markera det här fältet som en SecureString för att lagra det på ett säkert sätt eller referera till en hemlighet som lagras i Azure Key Vault. | Nej |
credential | Åtkomstautentiseringsdelen av niska veze som anges i drivrutinsspecifikt egenskapsvärdeformat. Exempel: "RefreshToken=<secret refresh token>;" . Markera det här fältet som en SecureString. |
Nej |
connectVia | Integration Runtime som ska användas för att ansluta till datalagret. En lokalt installerad integrationskörning krävs enligt vad som anges i Krav. | Ja |
Exempel 1: Använda grundläggande autentisering
{
"name": "ODBCLinkedService",
"properties": {
"type": "Odbc",
"typeProperties": {
"connectionString": "<connection string>",
"authenticationType": "Basic",
"userName": "<username>",
"password": {
"type": "SecureString",
"value": "<password>"
}
},
"connectVia": {
"referenceName": "<name of Integration Runtime>",
"type": "IntegrationRuntimeReference"
}
}
}
Exempel 2: Använda anonym autentisering
{
"name": "ODBCLinkedService",
"properties": {
"type": "Odbc",
"typeProperties": {
"connectionString": "<connection string>",
"authenticationType": "Anonymous",
"credential": {
"type": "SecureString",
"value": "RefreshToken=<secret refresh token>;"
}
},
"connectVia": {
"referenceName": "<name of Integration Runtime>",
"type": "IntegrationRuntimeReference"
}
}
}
Egenskaper för datauppsättning
En fullständig lista över avsnitt och egenskaper som är tillgängliga för att definiera datauppsättningar finns i artikeln datauppsättningar . Det här avsnittet innehåller en lista över egenskaper som stöds av ODBC-datauppsättningen.
Följande egenskaper stöds för att kopiera data från/till ODBC-kompatibla datalager:
Property | Beskrivning | Obligatoriskt |
---|---|---|
type | Typegenskapen för datamängden måste anges till: OdbcTable | Ja |
tableName | Namnet på tabellen i ODBC-datalagret. | Nej för källan (om "fråga" i aktivitetskällan har angetts); Ja för mottagare |
Exempel
{
"name": "ODBCDataset",
"properties": {
"type": "OdbcTable",
"schema": [],
"linkedServiceName": {
"referenceName": "<ODBC linked service name>",
"type": "LinkedServiceReference"
},
"typeProperties": {
"tableName": "<table name>"
}
}
}
Om du använder RelationalTable
en typ av datauppsättning stöds den fortfarande i sin form, medan du rekommenderas att använda den nya framöver.
Kopiera egenskaper för aktivitet
En fullständig lista över avsnitt och egenskaper som är tillgängliga för att definiera aktiviteter finns i artikeln Pipelines . Det här avsnittet innehåller en lista över egenskaper som stöds av ODBC-källan.
ODBC som källa
Om du vill kopiera data från ODBC-kompatibelt datalager stöds följande egenskaper i avsnittet kopieringsaktivitetskälla:
Property | Beskrivning | Obligatoriskt |
---|---|---|
type | Typegenskapen för kopieringsaktivitetskällan måste anges till: OdbcSource | Ja |
query | Använd den anpassade SQL-frågan för att läsa data. Exempel: "SELECT * FROM MyTable" . |
Nej (om "tableName" i datauppsättningen har angetts) |
Exempel:
"activities":[
{
"name": "CopyFromODBC",
"type": "Copy",
"inputs": [
{
"referenceName": "<ODBC input dataset name>",
"type": "DatasetReference"
}
],
"outputs": [
{
"referenceName": "<output dataset name>",
"type": "DatasetReference"
}
],
"typeProperties": {
"source": {
"type": "OdbcSource",
"query": "SELECT * FROM MyTable"
},
"sink": {
"type": "<sink type>"
}
}
}
]
Om du använde RelationalSource
en typbaserad källa stöds den fortfarande som den är, medan du rekommenderas att använda den nya framöver.
ODBC som mottagare
Om du vill kopiera data till ODBC-kompatibelt datalager anger du mottagartypen i kopieringsaktiviteten till OdbcSink. Följande egenskaper stöds i avsnittet kopieringsaktivitetsmottagare:
Property | Beskrivning | Obligatoriskt |
---|---|---|
type | Typegenskapen för kopieringsaktivitetsmottagaren måste anges till: OdbcSink | Ja |
writeBatchTimeout | Vänta tills batchinfogningsåtgärden har slutförts innan tidsgränsen uppnås. Tillåtna värden är: tidsintervall. Exempel: "00:30:00" (30 minuter). |
Nej |
writeBatchSize | Infogar data i SQL-tabellen när buffertstorleken når writeBatchSize. Tillåtna värden är: heltal (antal rader). |
Nej (standardvärdet är 0 – identifieras automatiskt) |
preCopyScript | Ange en SQL-fråga för kopieringsaktivitet som ska köras innan du skriver data till datalagret i varje körning. Du kan använda den här egenskapen för att rensa inlästa data. | Nej |
Kommentar
För "writeBatchSize" identifierar kopieringsaktiviteten först om drivrutinen stöder batchåtgärder och anger 10000 om den gör det, eller anger den till 1 om den inte gör det. Om du uttryckligen anger det andra värdet än 0 respekterar kopieringsaktiviteten värdet och misslyckas vid körning om drivrutinen inte stöder batchåtgärder.
Exempel:
"activities":[
{
"name": "CopyToODBC",
"type": "Copy",
"inputs": [
{
"referenceName": "<input dataset name>",
"type": "DatasetReference"
}
],
"outputs": [
{
"referenceName": "<ODBC output dataset name>",
"type": "DatasetReference"
}
],
"typeProperties": {
"source": {
"type": "<source type>"
},
"sink": {
"type": "OdbcSink",
"writeBatchSize": 100000
}
}
}
]
Egenskaper för uppslagsaktivitet
Mer information om egenskaperna finns i Sökningsaktivitet.
Felsök anslutningsproblem
Om du vill felsöka anslutningsproblem använder du fliken Diagnostik i Integration Runtime Configuration Manager.
- Starta Integration Runtime Configuration Manager.
- Växla till fliken Diagnostik.
- Under avsnittet "Testanslutning" väljer du typ av datalager (länkad tjänst).
- Ange den niska veze som används för att ansluta till datalagret, välj autentisering och ange användarnamn, lösenord och/eller autentiseringsuppgifter.
- Klicka på Testa anslutning för att testa anslutningen till datalagret.
Relaterat innehåll
En lista över datalager som stöds som källor och mottagare av kopieringsaktiviteten finns i datalager som stöds.