Azure Data Factory – JSON-skriptreferens

Anteckning

Den här artikeln gäller för version 1 av Data Factory.

Viktigt

Stödet för Machine Learning Studio (klassisk) upphör den 31 augusti 2024. Vi rekommenderar att du byter till Azure Machine Learning innan dess.

Från och med den 1 december 2021 kommer du inte att kunna skapa nya Machine Learning Studio-resurser (klassiska) (arbetsyta och webbtjänstplan). Till och med den 31 augusti 2024 kan du fortsätta att använda befintliga Machine Learning Studio-experiment (klassiska) och webbtjänster.

Dokumentationen om ML Studio (klassisk) håller på att dras tillbaka och kanske inte uppdateras i framtiden.

Den här artikeln innehåller JSON-scheman och exempel för att definiera Azure Data Factory-entiteter (pipeline, aktivitet, datauppsättning och länkad tjänst).

Anteckning

Den här artikeln använder Azure Az PowerShell-modulen, som är den rekommenderade PowerShell-modulen för att interagera med Azure. För att komma igång med Az PowerShell kan du läsa artikeln om att installera Azure PowerShell. Information om hur du migrerar till Az PowerShell-modulen finns i artikeln om att migrera Azure PowerShell från AzureRM till Az.

Pipeline

Strukturen på hög nivå för en pipelinedefinition är följande:

{
  "name": "SamplePipeline",
  "properties": {
    "description": "Describe what pipeline does",
    "activities": [
    ],
    "start": "2016-07-12T00:00:00",
    "end": "2016-07-13T00:00:00"
  }
}

I följande tabell beskrivs egenskaperna i pipelinens JSON-definition:

Egenskap Beskrivning Obligatorisk
name Namnet på pipeline. Ange ett namn som representerar den åtgärd som aktiviteten eller pipelinen är konfigurerad att utföra
  • Max. antal tecken: 260
  • Måste börja med en bokstav, en siffra eller ett understreck (_)
  • Följande tecken är inte tillåtna: ".", "+", "?", "/", "<","",">*","%","&,"":","\"
Yes
beskrivning Text som beskriver vad aktiviteten eller pipelinen används för No
activities Innehåller en lista över aktiviteter. Yes
start Startdatum för pipelinen. Måste vara i ISO-format. Exempel: 2014-10-14T16:32:41.

Det går att ange en lokal tid, till exempel en EST-tid. Här är ett exempel: 2016-02-27T06:00:00**-05:00, som är 06:00 EST.

Start- och slutegenskaperna anger tillsammans aktiv period för pipelinen. Utdatasektorer skapas endast med under den här aktiva perioden.
No

Om du anger ett värde för slutegenskapen måste du ange värdet för startegenskapen.

Start- och sluttiderna kan båda vara tomma för att skapa en pipeline. Du måste ange båda värdena för att ange en aktiv period för pipelinen som ska köras. Om du inte anger start- och sluttider när du skapar en pipeline kan du ange dem med hjälp av cmdleten Set-AzDataFactoryPipelineActivePeriod senare.
slut Slutdatum för pipelinen. Om det anges måste vara i ISO-format. Exempel: 2014-10-14T17:32:41

Det går att ange en lokal tid, till exempel en EST-tid. Här är ett exempel: 2016-02-27T06:00:00**-05:00, som är 06:00 EST.

Om du vill köra pipelinen på obestämd tid, anger du 9999-09-09 som värde för slutegenskapen.
No

Om du anger ett värde för startegenskapen måste du ange värdet för slutegenskapen.

Se anteckningar för startegenskapen.
isPaused Om värdet är sant körs inte pipelinen. Standardvärde = falskt. Du kan använda den här egenskapen för att aktivera eller inaktivera. No
pipelineMode Metoden för att schemalägga körningar för pipelinen. Tillåtna värden är: schemalagda (standard), engångsvärden.

"Schemalagd" anger att pipelinen körs med ett angivet tidsintervall enligt dess aktiva period (start- och sluttid). "Onetime" anger att pipelinen bara körs en gång. Engångspipelines när de har skapats kan för närvarande inte ändras/uppdateras. Mer information om engångsinställning finns i Onetime-pipeline .
No
expirationTime Tiden efter skapandet där pipelinen är giltig och bör förbli etablerad. Om den inte har några aktiva, misslyckade eller väntande körningar tas pipelinen bort automatiskt när den når förfallotiden. No

Aktivitet

Strukturen på hög nivå för en aktivitet inom en pipelinedefinition (aktivitetselement) är följande:

{
    "name": "ActivityName",
    "description": "description",
    "type": "<ActivityType>",
    "inputs":  "[]",
    "outputs":  "[]",
    "linkedServiceName": "MyLinkedService",
    "typeProperties":
    {

    },
    "policy":
    {
    },
    "scheduler":
    {
    }
}

I följande tabell beskrivs egenskaperna i aktivitetens JSON-definition:

Tagg Beskrivning Obligatorisk
name Namnet på aktiviteten. Ange ett namn som representerar den åtgärd som aktiviteten är konfigurerad att utföra
  • Max. antal tecken: 260
  • Måste börja med en bokstav, en siffra eller ett understreck (_)
  • Följande tecken är inte tillåtna: ".", "+", "?", "/", "<","",">*","%","&,"":","\"
Yes
beskrivning Text som beskriver vad aktiviteten används för. No
typ Anger typen av aktivitet. Se avsnitten DATALAGER och DATATRANSFORMERINGSAKTIVITETER för olika typer av aktiviteter. Yes
Ingångar Indatatabeller som används av aktiviteten

// one input table
"inputs": [ { "name": "inputtable1" } ],

// two input tables
"inputs": [ { "name": "inputtable1" }, { "name": "inputtable2" } ],
Nej för HDInsightStreaming- och SqlServerStoredProcedure-aktiviteter

Ja för alla andra
Utgångar Utdatatabeller som används av aktiviteten.

// one output table
"outputs": [ { "name": “outputtable1” } ],

//two output tables
"outputs": [ { "name": “outputtable1” }, { "name": “outputtable2” } ],
Yes
linkedServiceName Namnet på den länkade tjänst som används av aktiviteten.

En aktivitet kan kräva att du anger den länkade tjänst som länkar till den nödvändiga beräkningsmiljön.
Ja för HDInsight-aktiviteter, ML Studio-aktiviteter (klassisk) och Lagrad proceduraktivitet.

Nej för alla andra
typeProperties Egenskaperna i avsnittet typeProperties beror på typen av aktivitet. No
policy Principer som påverkar körningsbeteende för aktiviteten. Om den inte anges används standardprinciper. No
scheduler Egenskapen "scheduler" används för att definiera önskad schemaläggning för aktiviteten. Dess underegenskaper är desamma som de i tillgänglighetsegenskapen i en datauppsättning. No

Principer

Principer påverkar körningsbeteendet för en aktivitet, särskilt när sektorn i en tabell bearbetas. Följande tabell innehåller information.

Egenskap Tillåtna värden Standardvärde Beskrivning
samtidighet Integer

Maxvärde: 10
1 Antal samtidiga körningar av aktiviteten.

Den avgör antalet parallella aktivitetskörningar som kan ske på olika sektorer. Om en aktivitet till exempel behöver gå igenom en stor uppsättning tillgängliga data, ökar databearbetningen snabbare om du har ett större samtidighetsvärde.
executionPriorityOrder NewestFirst

Äldsta förste
Äldsta förste Avgör ordningen på datasektorer som bearbetas.

Om du till exempel har 2 sektorer (en sker kl. 16.00 och en annan kl. 17)) och båda väntar på att köras. Om du anger executionPriorityOrder till NewestFirst bearbetas sektorn kl. 17:00 först. Om du anger executionPriorityORder till OldestFIrst bearbetas sektorn kl. 16.00.
retry Integer

Maxvärdet kan vara 10
0 Antal återförsök innan databehandlingen för sektorn markeras som Fel. Aktivitetskörning för en datasektor görs på nytt upp till det angivna antalet återförsök. Återförsöket görs så snart som möjligt efter felet.
timeout TimeSpan 00:00:00 Tidsgräns för aktiviteten. Exempel: 00:10:00 (innebär timeout 10 minuter)

Om ett värde inte anges eller är 0 är tidsgränsen oändlig.

Om databehandlingstiden för en sektor överskrider tidsgränsvärdet avbryts den och systemet försöker utföra bearbetningen igen. Antalet återförsök beror på återförsöksegenskapen. När tidsgränsen uppnås anges statusen till TimedOut.
Försening TimeSpan 00:00:00 Ange fördröjningen innan databehandlingen av sektorn startar.

Körningen av aktiviteten för en datasektor startas efter att fördröjningen har passerat den förväntade körningstiden.

Exempel: 00:10:00 (innebär en fördröjning på 10 minuter)
longRetry Integer

Maxvärde: 10
1 Antalet långa återförsök innan segmentkörningen misslyckas.

longRetry-försök är fördelade med longRetryInterval. Så om du behöver ange en tid mellan återförsök använder du longRetry. Om både Retry och longRetry anges innehåller varje longRetry-försök Återförsök försök och det maximala antalet försök är Återförsök * longRetry.

Om vi till exempel har följande inställningar i aktivitetsprincipen:
Försök igen: 3
longRetry: 2
longRetryInterval: 01:00:00

Anta att det bara finns en sektor att köra (status är Väntar) och att aktivitetskörningen misslyckas varje gång. Inledningsvis skulle det ske tre på varandra följande körningsförsök. Efter varje försök skulle segmentstatusen vara Försök igen. När de tre första försöken är över blir segmentstatusen LongRetry.

Efter en timme (d.v.s. longRetryIntevals-värde) skulle det finnas en annan uppsättning med tre på varandra följande körningsförsök. Därefter skulle segmentstatusen vara Misslyckad och inga fler försök skulle göras. Totalt gjordes därför 6 försök.

Om en körning lyckas blir segmentstatusen Klar och inga fler försök görs.

longRetry kan användas i situationer där beroende data anländer vid icke-deterministiska tider eller i den övergripande miljön som databehandlingen sker under. I sådana fall kanske återförsök en efter en inte hjälper och om du gör det efter ett tidsintervall resulterar det i önskade utdata.

Var försiktig: ange inte höga värden för longRetry eller longRetryInterval. Normalt innebär högre värden andra systemproblem.
longRetryInterval TimeSpan 00:00:00 Fördröjningen mellan långa återförsök

typeProperties-avsnittet

Avsnittet typeProperties är olika för varje aktivitet. Transformeringsaktiviteter har bara typegenskaperna. Se avsnittet DATATRANSFORMERINGSAKTIVITETER i den här artikeln för JSON-exempel som definierar transformeringsaktiviteter i en pipeline.

Kopieringsaktiviteten har två underavsnitt i avsnittet typeProperties: källa och mottagare. Se avsnittet DATALAGER i den här artikeln för JSON-exempel som visar hur du använder ett datalager som källa och/eller mottagare.

Exempel på kopieringspipeline

I följande exempel på pipeline finns det en aktivitet av typen Copy (Kopiera) i avsnittet activities. I det här exemplet kopierar kopieringsaktiviteten data från en Azure Blob Storage till Azure SQL Database.

{
  "name": "CopyPipeline",
  "properties": {
    "description": "Copy data from a blob to Azure SQL table",
    "activities": [
      {
        "name": "CopyFromBlobToSQL",
        "type": "Copy",
        "inputs": [
          {
            "name": "InputDataset"
          }
        ],
        "outputs": [
          {
            "name": "OutputDataset"
          }
        ],
        "typeProperties": {
          "source": {
            "type": "BlobSource"
          },
          "sink": {
            "type": "SqlSink",
            "writeBatchSize": 10000,
            "writeBatchTimeout": "60:00:00"
          }
        },
        "Policy": {
          "concurrency": 1,
          "executionPriorityOrder": "NewestFirst",
          "retry": 0,
          "timeout": "01:00:00"
        }
      }
    ],
    "start": "2016-07-12T00:00:00",
    "end": "2016-07-13T00:00:00"
  }
}

Observera följande punkter:

  • I avsnittet Aktiviteter finns det bara en aktivitet vars typ anges till Kopia.
  • Indata för aktiviteten är inställd på InputDataset och utdata för aktiviteten är inställd på OutputDataset.
  • I avsnittet för typeProperties har BlobSource angetts som källtyp och SqlSink har angetts som mottagartyp.

Se avsnittet DATALAGER i den här artikeln för JSON-exempel som visar hur du använder ett datalager som källa och/eller mottagare.

En fullständig genomgång av hur du skapar den här pipelinen finns i Självstudie: Kopiera data från Blob Storage till SQL Database.

Exempel på transfomeringspipeline

I följande exempel på pipeline finns det en aktivitet av typen HDInsightHive i avsnittet activities. I det här exemplet transformerar HDInsight Hive-aktiviteten data från Azure Blob Storage genom att köra en Hive-skriptfil på ett Azure HDInsight Hadoop-kluster.

{
    "name": "TransformPipeline",
    "properties": {
        "description": "My first Azure Data Factory pipeline",
        "activities": [
            {
                "type": "HDInsightHive",
                "typeProperties": {
                    "scriptPath": "adfgetstarted/script/partitionweblogs.hql",
                    "scriptLinkedService": "AzureStorageLinkedService",
                    "defines": {
                        "inputtable": "wasb://adfgetstarted@<storageaccountname>.blob.core.windows.net/inputdata",
                        "partitionedtable": "wasb://adfgetstarted@<storageaccountname>.blob.core.windows.net/partitioneddata"
                    }
                },
                "inputs": [
                    {
                        "name": "AzureBlobInput"
                    }
                ],
                "outputs": [
                    {
                        "name": "AzureBlobOutput"
                    }
                ],
                "policy": {
                    "concurrency": 1,
                    "retry": 3
                },
                "scheduler": {
                    "frequency": "Month",
                    "interval": 1
                },
                "name": "RunSampleHiveActivity",
                "linkedServiceName": "HDInsightOnDemandLinkedService"
            }
        ],
        "start": "2016-04-01T00:00:00",
        "end": "2016-04-02T00:00:00",
        "isPaused": false
    }
}

Observera följande punkter:

  • I activities-avsnittet finns det bara en aktivitet vars typ anges till HDInsightHive.
  • Hive-skriptfilen partitionweblogs.hql lagras i Azure-lagringskontot (anges med scriptLinkedService, kallas AzureStorageLinkedService), och i mappen skript i containern adfgetstarted.
  • Avsnittet definierar används för att ange körningsinställningar som skickas till Hive-skriptet som Hive-konfigurationsvärden (t.ex ${hiveconf:inputtable}. , ${hiveconf:partitionedtable}).

Se avsnittet DATATRANSFORMERINGSAKTIVITETER i den här artikeln för JSON-exempel som definierar transformeringsaktiviteter i en pipeline.

En fullständig genomgång av hur du skapar den här pipelinen finns i Självstudie: Skapa din första pipeline för att bearbeta data med Hadoop-kluster.

Länkad tjänst

Den övergripande strukturen för en länkad tjänstdefinition är följande:

{
    "name": "<name of the linked service>",
    "properties": {
        "type": "<type of the linked service>",
        "typeProperties": {
        }
    }
}

I följande tabell beskrivs egenskaperna i aktivitets-JSON-definitionen:

Egenskap Beskrivning Obligatorisk
name Namnet på den länkade tjänsten. Yes
properties – typ Typ av länkad tjänst. Exempel: Azure Storage, Azure SQL Database.
typeProperties Avsnittet typeProperties innehåller element som är olika för varje datalager eller beräkningsmiljö. Se avsnittet datalager för alla länkade datalagertjänster och beräkningsmiljöer för alla beräkningslänkade tjänster

Datamängd

En datauppsättning i Azure Data Factory definieras på följande sätt:

{
    "name": "<name of dataset>",
    "properties": {
        "type": "<type of dataset: AzureBlob, AzureSql etc...>",
        "external": <boolean flag to indicate external data. only for input datasets>,
        "linkedServiceName": "<Name of the linked service that refers to a data store.>",
        "structure": [
            {
                "name": "<Name of the column>",
                "type": "<Name of the type>"
            }
        ],
        "typeProperties": {
            "<type specific property>": "<value>",
            "<type specific property 2>": "<value 2>",
        },
        "availability": {
            "frequency": "<Specifies the time unit for data slice production. Supported frequency: Minute, Hour, Day, Week, Month>",
            "interval": "<Specifies the interval within the defined frequency. For example, frequency set to 'Hour' and interval set to 1 indicates that new data slices should be produced hourly>"
        },
        "policy":
        {
        }
    }
}

I följande tabell beskrivs egenskaper i ovanstående JSON:

Egenskap Beskrivning Krävs Standardvärde
name Namnet på datauppsättningen. Se Azure Data Factory – namngivningsregler för namngivningsregler. Yes NA
typ Typ av datauppsättning. Ange en av de typer som stöds av Azure Data Factory (till exempel AzureBlob, AzureSqlTable). Se avsnittet DATALAGER för alla datalager och datauppsättningstyper som stöds av Data Factory.
Struktur Schema för datauppsättningen. Den innehåller kolumner, deras typer osv. No NA
typeProperties Egenskaper som motsvarar den valda typen. Se avsnittet DATALAGER för typer som stöds och deras egenskaper. Yes NA
extern Boolesk flagga för att ange om en datauppsättning uttryckligen produceras av en datafabrikspipeline eller inte. No falskt
availability Definierar bearbetningsfönstret eller segmenteringsmodellen för datauppsättningsproduktionen. Mer information om datauppsättningens segmenteringsmodell finns i artikeln Schemaläggning och körning . Yes NA
policy Definierar villkoren eller villkoret som datamängdssegmenten måste uppfylla.

Mer information finns i avsnittet Datauppsättningsprincip.
No NA

Varje kolumn i strukturavsnittet innehåller följande egenskaper:

Egenskap Beskrivning Obligatorisk
name Namnet på kolumnen. Yes
typ Datatyp för kolumnen. No
Kultur .NET-baserad kultur som ska användas när typen anges och är .NET-typ Datetime eller Datetimeoffset. Standardvärdet är en-us. No
format Formatsträng som ska användas när typen anges och är .NET-typ Datetime eller Datetimeoffset. No

I följande exempel har datauppsättningen tre kolumner slicetimestamp, projectnameoch pageviews de är av typen: Sträng, Sträng respektive Decimal.

structure:
[
    { "name": "slicetimestamp", "type": "String"},
    { "name": "projectname", "type": "String"},
    { "name": "pageviews", "type": "Decimal"}
]

I följande tabell beskrivs egenskaper som du kan använda i avsnittet om tillgänglighet :

Egenskap Beskrivning Krävs Standardvärde
frequency Anger tidsenhet för produktion av datauppsättningssektorer.

Frekvens som stöds: Minut, timme, dag, vecka, månad
Yes NA
interval Anger en multiplikator för frekvens

"Frekvens x intervall" avgör hur ofta sektorn produceras.

Om du vill att datauppsättningen ska segmenteras per timme anger du Frekvens till Timme och Intervall till 1.

Obs! Om du anger Frekvens som Minut rekommenderar vi att du anger intervallet till inte mindre än 15
Yes NA
stil Anger om sektorn ska skapas i början/slutet av intervallet.
  • StartOfInterval
  • EndOfInterval


Om Frekvens är inställt på Månad och format är inställt på EndOfInterval skapas sektorn den sista dagen i månaden. Om formatet är inställt på StartOfInterval skapas sektorn den första dagen i månaden.

Om Frekvens är inställt på Dag och format är inställt på EndOfInterval skapas sektorn under dagens sista timme.

Om Frekvens är inställt på Timme och format är inställt på EndOfInterval skapas sektorn i slutet av timmen. För till exempel en sektor för perioden 13:00–14:00 produceras sektorn kl. 14.00.
No EndOfInterval
anchorDateTime Definierar den absoluta positionen i tid som används av scheduler för att beräkna datamängdens segmentgränser.

Obs! Om AnchorDateTime har datumdelar som är mer detaljerade än frekvensen ignoreras de mer detaljerade delarna.

Om intervallet till exempel är timvis (frekvens: timme och intervall: 1) och AnchorDateTime innehåller minuter och sekunder ignoreras delarna för minuter och sekunder i AnchorDateTime.
No 01/01/0001
offset Tidsintervallet då start och slut för alla datauppsättningssektorer flyttas.

Obs! Om både anchorDateTime och offset anges blir resultatet det kombinerade skiftet.
No NA

Följande tillgänglighetsavsnitt anger att utdatauppsättningen antingen produceras varje timme (eller) indatauppsättningen är tillgänglig varje timme:

"availability":
{
    "frequency": "Hour",
    "interval": 1
}

Principavsnittet i datauppsättningsdefinitionen definierar villkoren eller villkoret som datamängdssegmenten måste uppfylla.

Principnamn Beskrivning Tillämpad på Obligatorisk Standardvärde
minimumSizeMB Verifierar att data i en Azure-blob uppfyller minimikraven för storlek (i MEGABYTE). Azure-blobb No NA
minimumRows Verifierar att data i Azure SQL Database eller en Azure-tabell innehåller det minsta antalet rader.
  • Azure SQL Database
  • Azure-tabell
No NA

Exempel:

"policy":

{
    "validation":
    {
        "minimumSizeMB": 10.0
    }
}

Om inte en datauppsättning skapas av Azure Data Factory bör den markeras som extern. Den här inställningen gäller vanligtvis för indata för den första aktiviteten i en pipeline såvida inte aktivitet eller pipelinelänkning används.

Name Beskrivning Krävs Standardvärde
dataDelay Tid att fördröja kontrollen av tillgängligheten för externa data för den angivna sektorn. Om data till exempel är tillgängliga varje timme är kontrollen för att se externa data tillgänglig och motsvarande sektor är Klar kan fördröjas med hjälp av dataDelay.

Gäller endast för den aktuella tiden. Om det till exempel är 13:00 just nu och det här värdet är 10 minuter börjar verifieringen kl. 13:10.

Den här inställningen påverkar inte tidigare sektorer (sektorer med sektorsluttid + dataDelay < Now) bearbetas utan fördröjning.

Tid som är längre än 23:59 timmar måste anges med formatet day.hours:minutes:seconds . Om du till exempel vill ange 24 timmar ska du inte använda 24:00:00; använd i stället 1.00:00:00. Om du använder 24:00:00 behandlas det som 24 dagar (24.00:00:00). För 1 dag och 4 timmar anger du 1:04:00:00.
No 0
retryInterval Väntetiden mellan ett fel och nästa återförsök. Om ett försök misslyckas är nästa försök efter retryInterval.

Om det är 13:00 just nu börjar vi det första försöket. Om varaktigheten för att slutföra den första valideringskontrollen är 1 minut och åtgärden misslyckades är nästa återförsök 1:00 + 1 min (varaktighet) + 1 min (återförsöksintervall) = 13:02.

För tidigare sektorer finns det ingen fördröjning. Återförsöket görs omedelbart.
No 00:01:00 (1 minut)
retryTimeout Tidsgränsen för varje återförsök.

Om den här egenskapen är inställd på 10 minuter måste verifieringen slutföras inom 10 minuter. Om det tar längre tid än 10 minuter att utföra verifieringen uppnås tidsgränsen för återförsöket.

Om alla försök för verifieringen överskrider tidsgränsen markeras sektorn som TimedOut.
No 00:10:00 (10 minuter)
maximumRetry Antal gånger som externa data ska vara tillgängliga. Det tillåtna maxvärdet är 10. No 3

DATALAGER

Avsnittet Länkad tjänst innehåller beskrivningar för JSON-element som är gemensamma för alla typer av länkade tjänster. Det här avsnittet innehåller information om JSON-element som är specifika för varje datalager.

Avsnittet Datauppsättning innehåller beskrivningar för JSON-element som är gemensamma för alla typer av datauppsättningar. Det här avsnittet innehåller information om JSON-element som är specifika för varje datalager.

I avsnittet Aktivitet finns beskrivningar för JSON-element som är gemensamma för alla typer av aktiviteter. Det här avsnittet innehåller information om JSON-element som är specifika för varje datalager när det används som källa/mottagare i en kopieringsaktivitet.

Klicka på länken för det arkiv som du är intresserad av för att se JSON-scheman för länkad tjänst, datauppsättning och källa/mottagare för kopieringsaktiviteten.

Kategori Datalager
Azure Azure Blob Storage
  Azure Data Lake Store
  Azure Cosmos DB
  Azure SQL Database
  Azure Synapse Analytics
  Azure Cognitive Search
  Azure Table Storage
Databaser Amazon Redshift
  IBM DB2
  MySQL
  Oracle
  PostgreSQL
  SAP Business Warehouse
  SAP HANA
  SQL Server
  Sybase
  Teradata
NoSQL Cassandra
  MongoDB
Fil Amazon S3
  Filsystem
  FTP
  HDFS
  SFTP
Övrigt HTTP
  OData
  ODBC
  Salesforce
  Webbtabell

Azure Blob Storage

Länkad tjänst

Det finns två typer av länkade tjänster: Länkad Azure Storage-tjänst och länkad Azure Storage SAS-tjänst.

Länkad Azure Storage-tjänst

Om du vill länka ditt Azure Storage-konto till en datafabrik med hjälp av kontonyckeln skapar du en länkad Azure Storage-tjänst. Om du vill definiera en länkad Azure Storage-tjänst anger du typen av länkad tjänst till AzureStorage. Sedan kan du ange följande egenskaper i avsnittet typeProperties :

Egenskap Beskrivning Krävs
Connectionstring Ange den information som behövs för att ansluta till Azure Storage för egenskapen connectionString. Yes
Exempel
{
    "name": "StorageLinkedService",
    "properties": {
        "type": "AzureStorage",
        "typeProperties": {
            "connectionString": "DefaultEndpointsProtocol=https;AccountName=<accountname>;AccountKey=<accountkey>"
        }
    }
}

Länkad Azure Storage SAS-tjänst

Med den länkade Azure Storage SAS-tjänsten kan du länka ett Azure Storage-konto till en Azure-datafabrik med hjälp av en signatur för delad åtkomst (SAS). Den ger datafabriken begränsad/tidsbunden åtkomst till alla/specifika resurser (blob/container) i lagringen. Om du vill länka ditt Azure Storage-konto till en datafabrik med hjälp av signatur för delad åtkomst skapar du en länkad Azure Storage SAS-tjänst. Om du vill definiera en länkad Azure Storage SAS-tjänst anger du typen av länkad tjänst till AzureStorageSas. Sedan kan du ange följande egenskaper i avsnittet typeProperties :

Egenskap Beskrivning Krävs
sasUri Ange URI för signatur för delad åtkomst till Azure Storage-resurser som blob, container eller tabell. Yes
Exempel
{
    "name": "StorageSasLinkedService",
    "properties": {
        "type": "AzureStorageSas",
        "typeProperties": {
            "sasUri": "<storageUri>?<sasToken>"
        }
    }
}

Mer information om dessa länkade tjänster finns i artikeln Azure Blob Storage-anslutningsapp .

Datamängd

Om du vill definiera en Azure Blob-datauppsättning anger du typen av datauppsättning till AzureBlob. Ange sedan följande Azure Blob-specifika egenskaper i avsnittet typeProperties :

Egenskap Beskrivning Krävs
folderPath Sökväg till containern och mappen i bloblagringen. Exempel: myblobcontainer\myblobfolder\ Yes
fileName Namnet på bloben. fileName är valfritt och skiftlägeskänsligt.

Om du anger ett filnamn fungerar aktiviteten (inklusive Kopiera) på den specifika bloben.

När fileName inte anges inkluderar Copy alla blobar i folderPath för indatauppsättningen.

Om fileName inte anges för en utdatauppsättning skulle namnet på den genererade filen ha följande format: Data.<Guid>.txt (till exempel: : Data.0a405f8a-93ff-4c6f-b3be-f69616f1df7a.txt
No
partitionedBy partitionedBy är en valfri egenskap. Du kan använda den för att ange en dynamisk folderPath och ett filnamn för tidsseriedata. FolderPath kan till exempel parametriseras för varje timmes data. No
format Följande formattyper stöds: TextFormat, JsonFormat, AvroFormat, OrcFormat, ParquetFormat. Ange typegenskapen under format till något av dessa värden. Mer information finns i avsnitten Textformat, Json-format, Avro-format, Orc-format och Parquet-format .

Om du vill kopiera filer som de är mellan filbaserade arkiv (binär kopia) hoppar du över formatavsnittet i både indata- och utdatauppsättningsdefinitioner.
No
komprimering Ange typ och komprimeringsnivå för data. Typer som stöds är: GZip, Deflate, BZip2 och ZipDeflate. Nivåer som stöds är: Optimal och Snabbast. Mer information finns i Fil- och komprimeringsformat i Azure Data Factory. No

Exempel

{
    "name": "AzureBlobInput",
    "properties": {
        "type": "AzureBlob",
        "linkedServiceName": "AzureStorageLinkedService",
        "typeProperties": {
            "fileName": "input.log",
            "folderPath": "adfgetstarted/inputdata",
            "format": {
                "type": "TextFormat",
                "columnDelimiter": ","
            }
        },
        "availability": {
            "frequency": "Month",
            "interval": 1
        },
        "external": true,
        "policy": {}
    }
}

Mer information finns i artikeln om Azure Blob Connector .

BlobSource i kopieringsaktivitet

Om du kopierar data från en Azure Blob Storage anger du källtypen för kopieringsaktiviteten till BlobSource och anger följande egenskaper i källavsnittet :

Egenskap Beskrivning Tillåtna värden Obligatorisk
Rekursiv Anger om data läse rekursivt från undermapparna eller endast från den angivna mappen. Sant (standardvärde), Falskt No

Exempel: BlobSource

{
    "name": "SamplePipeline",
    "properties": {
        "start": "2016-06-01T18:00:00",
        "end": "2016-06-01T19:00:00",
        "description": "pipeline with copy activity",
        "activities": [{
            "name": "AzureBlobtoSQL",
            "description": "Copy Activity",
            "type": "Copy",
            "inputs": [{
                "name": "AzureBlobInput"
            }],
            "outputs": [{
                "name": "AzureSqlOutput"
            }],
            "typeProperties": {
                "source": {
                    "type": "BlobSource"
                },
                "sink": {
                    "type": "SqlSink"
                }
            },
            "policy": {
                "concurrency": 1,
                "executionPriorityOrder": "OldestFirst",
                "retry": 0,
                "timeout": "01:00:00"
            }
        }]
    }
}

BlobSink i kopieringsaktivitet

Om du kopierar data till en Azure Blob Storage anger du mottagartypen för kopieringsaktiviteten till BlobSink och anger följande egenskaper i mottagaravsnittet :

Egenskap Beskrivning Tillåtna värden Obligatorisk
copyBehavior Definierar kopieringsbeteendet när källan är BlobSource eller FileSystem. PreserveHierarchy: bevarar filhierarkin i målmappen. Den relativa sökvägen för källfilen till källmappen är identisk med den relativa sökvägen för målfilen till målmappen.

FlattenHierarchy: alla filer från källmappen finns på den första nivån i målmappen. Målfilerna har automatiskt genererat namn.

MergeFiles (standard): sammanfogar alla filer från källmappen till en fil. Om fil-/blobnamnet anges är det kopplade filnamnet det angivna namnet. annars skulle vara automatiskt genererat filnamn.
No

Exempel: BlobSink

{
    "name": "SamplePipeline",
    "properties": {
        "start": "2016-06-01T18:00:00",
        "end": "2016-06-01T19:00:00",
        "description": "pipeline for copy activity",
        "activities": [{
            "name": "AzureSQLtoBlob",
            "description": "copy activity",
            "type": "Copy",
            "inputs": [{
                "name": "AzureSQLInput"
            }],
            "outputs": [{
                "name": "AzureBlobOutput"
            }],
            "typeProperties": {
                "source": {
                    "type": "SqlSource",
                    "SqlReaderQuery": "$$Text.Format('select * from MyTable where timestampcolumn >= \\'{0:yyyy-MM-dd HH:mm}\\' AND timestampcolumn < \\'{1:yyyy-MM-dd HH:mm}\\'', WindowStart, WindowEnd)"
                },
                "sink": {
                    "type": "BlobSink"
                }
            },
            "policy": {
                "concurrency": 1,
                "executionPriorityOrder": "OldestFirst",
                "retry": 0,
                "timeout": "01:00:00"
            }
        }]
    }
}

Mer information finns i artikeln om Azure Blob Connector .

Azure Data Lake Store

Länkad tjänst

Om du vill definiera en länkad Azure Data Lake Store-tjänst anger du typen av länkad tjänst till AzureDataLakeStore och anger följande egenskaper i avsnittet typeProperties :

Egenskap Beskrivning Krävs
typ Typegenskapen måste anges till: AzureDataLakeStore Yes
dataLakeStoreUri Ange information om Azure Data Lake Store-kontot. Den har följande format: https://[accountname].azuredatalakestore.net/webhdfs/v1 eller adl://[accountname].azuredatalakestore.net/. Yes
subscriptionId Azure-prenumerations-ID som Data Lake Store tillhör. Krävs för mottagare
resourceGroupName Namnet på den Azure-resursgrupp som Data Lake Store tillhör. Krävs för mottagare
servicePrincipalId Ange programmets klient-ID. Ja (för autentisering med tjänstens huvudnamn)
servicePrincipalKey Ange programmets nyckel. Ja (för autentisering med tjänstens huvudnamn)
tenant Ange den klientinformation (domännamn eller klientorganisations-ID) som programmet finns under. Du kan hämta den genom att hovra med musen i det övre högra hörnet i Azure-portalen. Ja (för autentisering med tjänstens huvudnamn)
auktorisering Klicka på knappen Auktorisera i Data Factory-redigeraren och ange dina autentiseringsuppgifter som tilldelar den automatiskt genererade auktoriserings-URL:en till den här egenskapen. Ja (för autentisering av användarautentiseringsuppgifter)
Sessionid OAuth-sessions-ID från OAuth-auktoriseringssessionen. Varje sessions-ID är unikt och kan bara användas en gång. Den här inställningen genereras automatiskt när du använder Data Factory-redigeraren. Ja (för autentisering av användarautentiseringsuppgifter)

Exempel: använda autentisering med tjänstens huvudnamn

{
    "name": "AzureDataLakeStoreLinkedService",
    "properties": {
        "type": "AzureDataLakeStore",
        "typeProperties": {
            "dataLakeStoreUri": "https://<accountname>.azuredatalakestore.net/webhdfs/v1",
            "servicePrincipalId": "<service principal id>",
            "servicePrincipalKey": "<service principal key>",
            "tenant": "<tenant info. Example: microsoft.onmicrosoft.com>"
        }
    }
}

Exempel: använda autentiseringsuppgifter för användare

{
    "name": "AzureDataLakeStoreLinkedService",
    "properties": {
        "type": "AzureDataLakeStore",
        "typeProperties": {
            "dataLakeStoreUri": "https://<accountname>.azuredatalakestore.net/webhdfs/v1",
            "sessionId": "<session ID>",
            "authorization": "<authorization URL>",
            "subscriptionId": "<subscription of ADLS>",
            "resourceGroupName": "<resource group of ADLS>"
        }
    }
}

Mer information finns i artikeln om Anslutningsprogram för Azure Data Lake Store .

Datamängd

Om du vill definiera en Azure Data Lake Store-datauppsättning anger du datauppsättningens typ till AzureDataLakeStore och anger följande egenskaper i avsnittet typeProperties :

Egenskap Beskrivning Krävs
folderPath Sökväg till containern och mappen i Azure Data Lake Store. Yes
fileName Namnet på filen i Azure Data Lake Store. fileName är valfritt och skiftlägeskänsligt.

Om du anger ett filnamn fungerar aktiviteten (inklusive Kopiera) på den specifika filen.

När fileName inte anges inkluderar Copy alla filer i folderPath för indatauppsättningen.

Om fileName inte anges för en utdatauppsättning skulle namnet på den genererade filen ha följande format: Data.<Guid>.txt (till exempel: : Data.0a405f8a-93ff-4c6f-b3be-f69616f1df7a.txt
No
partitionedBy partitionedBy är en valfri egenskap. Du kan använda den för att ange en dynamisk folderPath och ett filnamn för tidsseriedata. FolderPath kan till exempel parametriseras för varje timmes data. No
format Följande formattyper stöds: TextFormat, JsonFormat, AvroFormat, OrcFormat, ParquetFormat. Ange typegenskapen under format till något av dessa värden. Mer information finns i avsnitten Textformat, Json-format, Avro-format, Orc-format och Parquet-format .

Om du vill kopiera filer som de är mellan filbaserade arkiv (binär kopia) hoppar du över formatavsnittet i både indata- och utdatauppsättningsdefinitioner.
No
komprimering Ange typ och komprimeringsnivå för data. Typer som stöds är: GZip, Deflate, BZip2 och ZipDeflate. Nivåer som stöds är: Optimal och Snabbast. Mer information finns i Fil- och komprimeringsformat i Azure Data Factory. No

Exempel

{
    "name": "AzureDataLakeStoreInput",
    "properties": {
        "type": "AzureDataLakeStore",
        "linkedServiceName": "AzureDataLakeStoreLinkedService",
        "typeProperties": {
            "folderPath": "datalake/input/",
            "fileName": "SearchLog.tsv",
            "format": {
                "type": "TextFormat",
                "rowDelimiter": "\n",
                "columnDelimiter": "\t"
            }
        },
        "external": true,
        "availability": {
            "frequency": "Hour",
            "interval": 1
        },
        "policy": {
            "externalData": {
                "retryInterval": "00:01:00",
                "retryTimeout": "00:10:00",
                "maximumRetry": 3
            }
        }
    }
}

Mer information finns i artikeln om Anslutningsprogram för Azure Data Lake Store .

Azure Data Lake Store-källa i kopieringsaktivitet

Om du kopierar data från en Azure Data Lake Store anger du källtypen för kopieringsaktiviteten till AzureDataLakeStoreSource och anger följande egenskaper i källavsnittet :

AzureDataLakeStoreSource stöder följande egenskapstypEgenskaper-avsnittet :

Egenskap Beskrivning Tillåtna värden Obligatorisk
Rekursiv Anger om data läse rekursivt från undermapparna eller endast från den angivna mappen. Sant (standardvärde), Falskt No

Exempel: AzureDataLakeStoreSource

{
    "name": "SamplePipeline",
    "properties": {
        "start": "2016-06-01T18:00:00",
        "end": "2016-06-01T19:00:00",
        "description": "pipeline for copy activity",
        "activities": [{
            "name": "AzureDakeLaketoBlob",
            "description": "copy activity",
            "type": "Copy",
            "inputs": [{
                "name": "AzureDataLakeStoreInput"
            }],
            "outputs": [{
                "name": "AzureBlobOutput"
            }],
            "typeProperties": {
                "source": {
                    "type": "AzureDataLakeStoreSource"
                },
                "sink": {
                    "type": "BlobSink"
                }
            },
            "policy": {
                "concurrency": 1,
                "executionPriorityOrder": "OldestFirst",
                "retry": 0,
                "timeout": "01:00:00"
            }
        }]
    }
}

Mer information finns i artikeln om Anslutningsprogram för Azure Data Lake Store .

Azure Data Lake Store-mottagare i kopieringsaktivitet

Om du kopierar data till en Azure Data Lake Store anger du mottagartypen för kopieringsaktiviteten till AzureDataLakeStoreSink och anger följande egenskaper i mottagaravsnittet :

Egenskap Beskrivning Tillåtna värden Obligatorisk
copyBehavior Anger kopieringsbeteendet. PreserveHierarchy: bevarar filhierarkin i målmappen. Den relativa sökvägen för källfilen till källmappen är identisk med den relativa sökvägen för målfilen till målmappen.

FlattenHierarchy: alla filer från källmappen skapas på den första nivån i målmappen. Målfilerna skapas med automatiskt genererat namn.

MergeFiles: sammanfogar alla filer från källmappen till en fil. Om fil-/blobnamnet anges är det kopplade filnamnet det angivna namnet. annars skulle vara automatiskt genererat filnamn.
No

Exempel: AzureDataLakeStoreSink

{
    "name": "SamplePipeline",
    "properties": {
        "start": "2016-06-01T18:00:00",
        "end": "2016-06-01T19:00:00",
        "description": "pipeline with copy activity",
        "activities": [{
            "name": "AzureBlobtoDataLake",
            "description": "Copy Activity",
            "type": "Copy",
            "inputs": [{
                "name": "AzureBlobInput"
            }],
            "outputs": [{
                "name": "AzureDataLakeStoreOutput"
            }],
            "typeProperties": {
                "source": {
                    "type": "BlobSource"
                },
                "sink": {
                    "type": "AzureDataLakeStoreSink"
                }
            },
            "scheduler": {
                "frequency": "Hour",
                "interval": 1
            },
            "policy": {
                "concurrency": 1,
                "executionPriorityOrder": "OldestFirst",
                "retry": 0,
                "timeout": "01:00:00"
            }
        }]
    }
}

Mer information finns i artikeln om Anslutningsprogram för Azure Data Lake Store .

Azure Cosmos DB

Länkad tjänst

Om du vill definiera en länkad Azure Cosmos DB-tjänst anger du typen av länkad tjänst till DocumentDb och anger följande egenskaper i avsnittet typeProperties :

Egenskap Beskrivning Obligatoriskt
Connectionstring Ange den information som behövs för att ansluta till Azure Cosmos DB-databasen. Yes

Exempel

{
    "name": "CosmosDBLinkedService",
    "properties": {
        "type": "DocumentDb",
        "typeProperties": {
            "connectionString": "AccountEndpoint=<EndpointUrl>;AccountKey=<AccessKey>;Database=<Database>"
        }
    }
}

Mer information finns i artikeln om Azure Cosmos DB-anslutningsprogram .

Datamängd

Om du vill definiera en Azure Cosmos DB-datauppsättning anger du datauppsättningens typ till DocumentDbCollection och anger följande egenskaper i avsnittet typeProperties :

Egenskap Beskrivning Obligatoriskt
collectionName Namnet på Azure Cosmos DB-samlingen. Yes

Exempel

{
    "name": "PersonCosmosDBTable",
    "properties": {
        "type": "DocumentDbCollection",
        "linkedServiceName": "CosmosDBLinkedService",
        "typeProperties": {
            "collectionName": "Person"
        },
        "external": true,
        "availability": {
            "frequency": "Day",
            "interval": 1
        }
    }
}

Mer information finns i artikeln om Azure Cosmos DB-anslutningsprogram .

Azure Cosmos DB-samlingskälla i kopieringsaktivitet

Om du kopierar data från en Azure Cosmos DB anger du källtypen för kopieringsaktiviteten till DocumentDbCollectionSource och anger följande egenskaper i källavsnittet :

Egenskap Beskrivning Tillåtna värden Obligatoriskt
DocumentDB Ange frågan för att läsa data. Frågesträng som stöds av Azure Cosmos DB.

Exempel: SELECT c.BusinessEntityID, c.PersonType, c.NameStyle, c.Title, c.Name.First AS FirstName, c.Name.Last AS LastName, c.Suffix, c.EmailPromotion FROM c WHERE c.ModifiedDate > \"2009-01-01T00:00:00\"
No

Om inget anges körs SQL-instruktionen: select <columns defined in structure> from mycollection
nestingSeparator Specialtecken som anger att dokumentet är kapslat Alla tecken.

Azure Cosmos DB är ett NoSQL-arkiv för JSON-dokument, där kapslade strukturer tillåts. Med Azure Data Factory kan användaren ange hierarki via nestingSeparator, som är "". i exemplen ovan. Med avgränsaren genererar kopieringsaktiviteten objektet "Name" med tre underordnade element First, Middle och Last, enligt "Name.First", "Name.Middle" och "Name.Last" i tabelldefinitionen.
No

Exempel

{
    "name": "DocDbToBlobPipeline",
    "properties": {
        "activities": [{
            "type": "Copy",
            "typeProperties": {
                "source": {
                    "type": "DocumentDbCollectionSource",
                    "query": "SELECT Person.Id, Person.Name.First AS FirstName, Person.Name.Middle as MiddleName, Person.Name.Last AS LastName FROM Person",
                    "nestingSeparator": "."
                },
                "sink": {
                    "type": "BlobSink",
                    "blobWriterAddHeader": true,
                    "writeBatchSize": 1000,
                    "writeBatchTimeout": "00:00:59"
                }
            },
            "inputs": [{
                "name": "PersonCosmosDBTable"
            }],
            "outputs": [{
                "name": "PersonBlobTableOut"
            }],
            "policy": {
                "concurrency": 1
            },
            "name": "CopyFromCosmosDbToBlob"
        }],
        "start": "2016-04-01T00:00:00",
        "end": "2016-04-02T00:00:00"
    }
}

Azure Cosmos DB-samlingsmottagare i kopieringsaktivitet

Om du kopierar data till Azure Cosmos DB anger du mottagartypen för kopieringsaktiviteten till DocumentDbCollectionSink och anger följande egenskaper i mottagaravsnittet :

Egenskap Beskrivning Tillåtna värden Obligatoriskt
nestingSeparator Ett specialtecken i källkolumnens namn som anger att kapslat dokument behövs.

Till exempel ovan: Name.First i utdatatabellen skapas följande JSON-struktur i Cosmos DB-dokumentet:

"Namn": {
"Först": "John"
},
Tecken som används för att avgränsa kapslingsnivåer.

Standardvärdet är . (punkt).
Tecken som används för att avgränsa kapslingsnivåer.

Standardvärdet är . (punkt).
writeBatchSize Antal parallella begäranden till Azure Cosmos DB-tjänsten för att skapa dokument.

Du kan finjustera prestanda när du kopierar data till och från Azure Cosmos DB med hjälp av den här egenskapen. Du kan förvänta dig bättre prestanda när du ökar writeBatchSize eftersom fler parallella begäranden till Azure Cosmos DB skickas. Du måste dock undvika begränsningar som kan utlösa felmeddelandet: "Begärandefrekvensen är stor".

Begränsning bestäms av ett antal faktorer, inklusive dokumentstorlek, antal termer i dokument, indexeringsprincip för målinsamling osv. För kopieringsåtgärder kan du använda en bättre samling (till exempel S3) för att få det mest tillgängliga dataflödet (2 500 enheter för programbegäran per sekund).
Integer Nej (standard: 5)
writeBatchTimeout Vänta tills åtgärden har slutförts innan tidsgränsen uppnås. tidsintervall

Exempel: "00:30:00" (30 minuter).
No

Exempel

{
    "name": "BlobToDocDbPipeline",
    "properties": {
        "activities": [{
            "type": "Copy",
            "typeProperties": {
                "source": {
                    "type": "BlobSource"
                },
                "sink": {
                    "type": "DocumentDbCollectionSink",
                    "nestingSeparator": ".",
                    "writeBatchSize": 2,
                    "writeBatchTimeout": "00:00:00"
                },
                "translator": {
                    "type": "TabularTranslator",
                    "ColumnMappings": "FirstName: Name.First, MiddleName: Name.Middle, LastName: Name.Last, BusinessEntityID: BusinessEntityID, PersonType: PersonType, NameStyle: NameStyle, Title: Title, Suffix: Suffix"
                }
            },
            "inputs": [{
                "name": "PersonBlobTableIn"
            }],
            "outputs": [{
                "name": "PersonCosmosDbTableOut"
            }],
            "policy": {
                "concurrency": 1
            },
            "name": "CopyFromBlobToCosmosDb"
        }],
        "start": "2016-04-14T00:00:00",
        "end": "2016-04-15T00:00:00"
    }
}

Mer information finns i artikeln om Azure Cosmos DB-anslutningsprogram .

Azure SQL Database

Länkad tjänst

Om du vill definiera en länkad Azure SQL Database-tjänst anger du typen av länkad tjänst till AzureSqlDatabase och anger följande egenskaper i avsnittet typeProperties :

Egenskap Beskrivning Krävs
Connectionstring Ange den information som behövs för att ansluta till Azure SQL Database-instansen för egenskapen connectionString. Yes

Exempel

{
    "name": "AzureSqlLinkedService",
    "properties": {
        "type": "AzureSqlDatabase",
        "typeProperties": {
            "connectionString": "Server=tcp:<servername>.database.windows.net,1433;Database=<databasename>;User ID=<username>@<servername>;Password=<password>;Trusted_Connection=False;Encrypt=True;Connection Timeout=30"
        }
    }
}

Mer information finns i artikeln om Azure SQL-anslutningsprogram .

Datamängd

Om du vill definiera en Azure SQL Database-datauppsättning anger du datauppsättningens typ till AzureSqlTable och anger följande egenskaper i avsnittet typeProperties :

Egenskap Beskrivning Krävs
tableName Namnet på tabellen eller vyn i Den Azure SQL Database-instans som den länkade tjänsten refererar till. Yes

Exempel

{
    "name": "AzureSqlInput",
    "properties": {
        "type": "AzureSqlTable",
        "linkedServiceName": "AzureSqlLinkedService",
        "typeProperties": {
            "tableName": "MyTable"
        },
        "external": true,
        "availability": {
            "frequency": "Hour",
            "interval": 1
        },
        "policy": {
            "externalData": {
                "retryInterval": "00:01:00",
                "retryTimeout": "00:10:00",
                "maximumRetry": 3
            }
        }
    }
}

Mer information finns i artikeln om Azure SQL-anslutningsprogram .

SQL-källa i kopieringsaktivitet

Om du kopierar data från en Azure SQL Database anger du källtypen för kopieringsaktiviteten till SqlSource och anger följande egenskaper i källavsnittet :

Egenskap Beskrivning Tillåtna värden Obligatorisk
sqlReaderQuery Använd den anpassade frågan för att läsa data. SQL-frågesträng. Exempel: select * from MyTable. No
sqlReaderStoredProcedureName Namnet på den lagrade proceduren som läser data från källtabellen. Namnet på den lagrade proceduren. No
storedProcedureParameters Parametrar för den lagrade proceduren. Namn/värdepar. Namn och hölje för parametrar måste matcha namnen och höljet för parametrarna för den lagrade proceduren. No

Exempel

{
    "name": "SamplePipeline",
    "properties": {
        "start": "2016-06-01T18:00:00",
        "end": "2016-06-01T19:00:00",
        "description": "pipeline for copy activity",
        "activities": [{
            "name": "AzureSQLtoBlob",
            "description": "copy activity",
            "type": "Copy",
            "inputs": [{
                "name": "AzureSQLInput"
            }],
            "outputs": [{
                "name": "AzureBlobOutput"
            }],
            "typeProperties": {
                "source": {
                    "type": "SqlSource",
                    "SqlReaderQuery": "$$Text.Format('select * from MyTable where timestampcolumn >= \\'{0:yyyy-MM-dd HH:mm}\\' AND timestampcolumn < \\'{1:yyyy-MM-dd HH:mm}\\'', WindowStart, WindowEnd)"
                },
                "sink": {
                    "type": "BlobSink"
                }
            },
            "scheduler": {
                "frequency": "Hour",
                "interval": 1
            },
            "policy": {
                "concurrency": 1,
                "executionPriorityOrder": "OldestFirst",
                "retry": 0,
                "timeout": "01:00:00"
            }
        }]
    }
}

Mer information finns i artikeln om Azure SQL-anslutningsprogram .

SQL-mottagare i kopieringsaktivitet

Om du kopierar data till Azure SQL Database anger du mottagartypen för kopieringsaktiviteten till SqlSink och anger följande egenskaper i mottagaravsnittet :

Egenskap Beskrivning Tillåtna värden Obligatorisk
writeBatchTimeout Vänta tills batchinfogningsåtgärden har slutförts innan tidsgränsen uppnås. tidsintervall

Exempel: "00:30:00" (30 minuter).
No
writeBatchSize Infogar data i SQL-tabellen när buffertstorleken når writeBatchSize. Heltal (antal rader) Nej (standard: 10000)
sqlWriterCleanupScript Ange en fråga för kopieringsaktiviteten så att data i en viss sektor rensas. En frågeuttryck. No
sliceIdentifierColumnName Ange ett kolumnnamn för kopieringsaktiviteten som ska fyllas med automatiskt genererad utsnittsidentifierare, som används för att rensa data för en viss sektor vid omkörning. Kolumnnamn för en kolumn med datatypen binary(32). No
sqlWriterStoredProcedureName Namnet på den lagrade procedur som uppdaterar (uppdaterar/infogar) data i måltabellen. Namnet på den lagrade proceduren. No
storedProcedureParameters Parametrar för den lagrade proceduren. Namn/värdepar. Namn och hölje för parametrar måste matcha namnen och höljet för parametrarna för den lagrade proceduren. No
sqlWriterTableType Ange ett tabelltypnamn som ska användas i den lagrade proceduren. Kopieringsaktivitet gör data som flyttas tillgängliga i en temporär tabell med den här tabelltypen. Lagrad procedurkod kan sedan sammanfoga data som kopieras med befintliga data. Ett tabelltypnamn. No

Exempel

{
    "name": "SamplePipeline",
    "properties": {
        "start": "2016-06-01T18:00:00",
        "end": "2016-06-01T19:00:00",
        "description": "pipeline with copy activity",
        "activities": [{
            "name": "AzureBlobtoSQL",
            "description": "Copy Activity",
            "type": "Copy",
            "inputs": [{
                "name": "AzureBlobInput"
            }],
            "outputs": [{
                "name": "AzureSqlOutput"
            }],
            "typeProperties": {
                "source": {
                    "type": "BlobSource",
                    "blobColumnSeparators": ","
                },
                "sink": {
                    "type": "SqlSink"
                }
            },
            "scheduler": {
                "frequency": "Hour",
                "interval": 1
            },
            "policy": {
                "concurrency": 1,
                "executionPriorityOrder": "OldestFirst",
                "retry": 0,
                "timeout": "01:00:00"
            }
        }]
    }
}

Mer information finns i artikeln om Azure SQL-anslutningsprogram .

Azure Synapse Analytics

Länkad tjänst

Om du vill definiera en länkad Azure Synapse Analytics-tjänst anger du typen av länkad tjänst till AzureSqlDW och anger följande egenskaper i avsnittet typeProperties :

Egenskap Beskrivning Krävs
Connectionstring Ange den information som behövs för att ansluta till Azure Synapse Analytics-instansen för egenskapen connectionString. Yes

Exempel

{
    "name": "AzureSqlDWLinkedService",
    "properties": {
        "type": "AzureSqlDW",
        "typeProperties": {
            "connectionString": "Server=tcp:<servername>.database.windows.net,1433;Database=<databasename>;User ID=<username>@<servername>;Password=<password>;Trusted_Connection=False;Encrypt=True;Connection Timeout=30"
        }
    }
}

Mer information finns i artikeln om Anslutningsapp för Azure Synapse Analytics .

Datamängd

Om du vill definiera en Azure Synapse Analytics-datauppsättning anger du datauppsättningens typ till AzureSqlDWTable och anger följande egenskaper i avsnittet typeProperties :

Egenskap Beskrivning Krävs
tableName Namnet på tabellen eller vyn i Azure Synapse Analytics-databasen som den länkade tjänsten refererar till. Yes

Exempel

{
    "name": "AzureSqlDWInput",
    "properties": {
    "type": "AzureSqlDWTable",
        "linkedServiceName": "AzureSqlDWLinkedService",
        "typeProperties": {
            "tableName": "MyTable"
        },
        "external": true,
        "availability": {
            "frequency": "Hour",
            "interval": 1
        },
        "policy": {
            "externalData": {
                "retryInterval": "00:01:00",
                "retryTimeout": "00:10:00",
                "maximumRetry": 3
            }
        }
    }
}

Mer information finns i artikeln om Anslutningsapp för Azure Synapse Analytics .

Azure Synapse Analytics-källa i kopieringsaktivitet

Om du kopierar data från Azure Synapse Analytics anger du källtypen för kopieringsaktiviteten till SqlDWSource och anger följande egenskaper i källavsnittet :

Egenskap Beskrivning Tillåtna värden Obligatorisk
sqlReaderQuery Använd den anpassade frågan för att läsa data. SQL-frågesträng. Exempel: select * from MyTable. No
sqlReaderStoredProcedureName Namnet på den lagrade proceduren som läser data från källtabellen. Namnet på den lagrade proceduren. No
storedProcedureParameters Parametrar för den lagrade proceduren. Namn/värdepar. Namn och hölje för parametrar måste matcha namnen och höljet för parametrarna för den lagrade proceduren. No

Exempel

{
    "name": "SamplePipeline",
    "properties": {
        "start": "2016-06-01T18:00:00",
        "end": "2016-06-01T19:00:00",
        "description": "pipeline for copy activity",
        "activities": [{
            "name": "AzureSQLDWtoBlob",
            "description": "copy activity",
            "type": "Copy",
            "inputs": [{
                "name": "AzureSqlDWInput"
            }],
            "outputs": [{
                "name": "AzureBlobOutput"
            }],
            "typeProperties": {
                "source": {
                    "type": "SqlDWSource",
                    "sqlReaderQuery": "$$Text.Format('select * from MyTable where timestampcolumn >= \\'{0:yyyy-MM-dd HH:mm}\\' AND timestampcolumn < \\'{1:yyyy-MM-dd HH:mm}\\'', WindowStart, WindowEnd)"
                },
                "sink": {
                    "type": "BlobSink"
                }
            },
            "scheduler": {
                "frequency": "Hour",
                "interval": 1
            },
            "policy": {
                "concurrency": 1,
                "executionPriorityOrder": "OldestFirst",
                "retry": 0,
                "timeout": "01:00:00"
            }
        }]
    }
}

Mer information finns i artikeln om Anslutningsapp för Azure Synapse Analytics .

Azure Synapse Analytics-mottagare i kopieringsaktivitet

Om du kopierar data till Azure Synapse Analytics anger du kopieringsaktivitetens mottagartyp till SqlDWSink och anger följande egenskaper i mottagaravsnittet :

Egenskap Beskrivning Tillåtna värden Obligatorisk
sqlWriterCleanupScript Ange en fråga för kopieringsaktiviteten så att data i en viss sektor rensas. En frågeuttryck. No
allowPolyBase Anger om polybase ska användas (om tillämpligt) i stället för BULKINSERT-mekanism.

Att använda PolyBase är det rekommenderade sättet att läsa in data i Azure Synapse Analytics.
Sant
False (standard)
No
polyBaseSettings En grupp med egenskaper som kan anges när egenskapen allowPolybase är inställd på true.   No
rejectValue Anger antalet eller procentandelen rader som kan avvisas innan frågan misslyckas.

Läs mer om PolyBase-avvisningsalternativen i avsnittet Argument i avsnittet CREATE EXTERNAL TABLE (Transact-SQL).
0 (standard), 1, 2, ... No
rejectType Anger om alternativet rejectValue anges som ett literalvärde eller en procentandel. Värde (standard), Procent No
rejectSampleValue Avgör hur många rader som ska hämtas innan PolyBase beräknar om procentandelen avvisade rader. 1, 2, ... Ja, om rejectType är procent
useTypeDefault Anger hur du hanterar saknade värden i avgränsade textfiler när PolyBase hämtar data från textfilen.

Läs mer om den här egenskapen i avsnittet Argument i CREATE EXTERNAL FILE FORMAT (Transact-SQL).
True, False (standard) No
writeBatchSize Infogar data i SQL-tabellen när buffertstorleken når writeBatchSize Heltal (antal rader) Nej (standard: 10000)
writeBatchTimeout Vänta tills batchinfogningsåtgärden har slutförts innan tidsgränsen uppnås. tidsintervall

Exempel: "00:30:00" (30 minuter).
No

Exempel

{
    "name": "SamplePipeline",
    "properties": {
        "start": "2016-06-01T18:00:00",
        "end": "2016-06-01T19:00:00",
        "description": "pipeline with copy activity",
        "activities": [{
            "name": "AzureBlobtoSQLDW",
            "description": "Copy Activity",
            "type": "Copy",
            "inputs": [{
                "name": "AzureBlobInput"
            }],
            "outputs": [{
                "name": "AzureSqlDWOutput"
            }],
            "typeProperties": {
                "source": {
                "type": "BlobSource",
                    "blobColumnSeparators": ","
                },
                "sink": {
                    "type": "SqlDWSink",
                    "allowPolyBase": true
                }
            },
            "scheduler": {
                "frequency": "Hour",
                "interval": 1
            },
            "policy": {
                "concurrency": 1,
                "executionPriorityOrder": "OldestFirst",
                "retry": 0,
                "timeout": "01:00:00"
            }
        }]
    }
}

Mer information finns i artikeln om Anslutningsapp för Azure Synapse Analytics .

Länkad tjänst

Om du vill definiera en länkad Azure Cognitive Search-tjänst anger du typen av länkad tjänst till AzureSearch och anger följande egenskaper i avsnittet typeProperties :

Egenskap Beskrivning Krävs
url URL för söktjänsten. Yes
key Administratörsnyckel för söktjänsten. Yes

Exempel

{
    "name": "AzureSearchLinkedService",
    "properties": {
        "type": "AzureSearch",
        "typeProperties": {
            "url": "https://<service>.search.windows.net",
            "key": "<AdminKey>"
        }
    }
}

Mer information finns i artikeln om Azure Cognitive Search-anslutningsappen .

Datamängd

Om du vill definiera en Azure Cognitive Search-datauppsättning anger du datauppsättningens typ till AzureSearchIndex och anger följande egenskaper i avsnittet typeProperties :

Egenskap Beskrivning Krävs
typ Typegenskapen måste anges till AzureSearchIndex. Yes
indexName Namnet på sökindexet. Data Factory skapar inte indexet. Indexet måste finnas i Azure Cognitive Search. Yes

Exempel

{
    "name": "AzureSearchIndexDataset",
    "properties": {
        "type": "AzureSearchIndex",
        "linkedServiceName": "AzureSearchLinkedService",
        "typeProperties": {
            "indexName": "products"
        },
        "availability": {
            "frequency": "Minute",
            "interval": 15
        }
    }
}

Mer information finns i artikeln om Azure Cognitive Search-anslutningsprogram .

Indexmottagare för Azure Cognitive Search i kopieringsaktivitet

Om du kopierar data till ett sökindex anger du kopieringsaktivitetens mottagartyp till AzureSearchIndexSink och anger följande egenskaper i mottagaravsnittet :

Egenskap Beskrivning Tillåtna värden Obligatorisk
WriteBehavior Anger om du vill sammanfoga eller ersätta när ett dokument redan finns i indexet. Sammanslagning (standard)
Ladda upp
No
WriteBatchSize Laddar upp data till sökindexet när buffertstorleken når writeBatchSize. 1 till 1 000. Standardvärdet är 1 000. No

Exempel

{
    "name": "SamplePipeline",
    "properties": {
        "start": "2016-06-01T18:00:00",
        "end": "2016-06-01T19:00:00",
        "description": "pipeline for copy activity",
        "activities": [{
            "name": "SqlServertoAzureSearchIndex",
            "description": "copy activity",
            "type": "Copy",
            "inputs": [{
                "name": " SqlServerInput"
            }],
            "outputs": [{
                "name": "AzureSearchIndexDataset"
            }],
            "typeProperties": {
                "source": {
                    "type": "SqlSource",
                    "SqlReaderQuery": "$$Text.Format('select * from MyTable where timestampcolumn >= \\'{0:yyyy-MM-dd HH:mm}\\' AND timestampcolumn < \\'{1:yyyy-MM-dd HH:mm}\\'', WindowStart, WindowEnd)"
                },
                "sink": {
                    "type": "AzureSearchIndexSink"
                }
            },
            "scheduler": {
                "frequency": "Hour",
                "interval": 1
            },
            "policy": {
                "concurrency": 1,
                "executionPriorityOrder": "OldestFirst",
                "retry": 0,
                "timeout": "01:00:00"
            }
        }]
    }
}

Mer information finns i artikeln om Azure Cognitive Search-anslutningsprogram .

Azure Table Storage

Länkad tjänst

Det finns två typer av länkade tjänster: länkad Azure Storage-tjänst och länkad Azure Storage SAS-tjänst.

Länkad Azure Storage-tjänst

Om du vill länka ditt Azure Storage-konto till en datafabrik med hjälp av kontonyckeln skapar du en länkad Azure Storage-tjänst. Om du vill definiera en länkad Azure Storage-tjänst anger du typen av länkad tjänst till AzureStorage. Sedan kan du ange följande egenskaper i avsnittet typeProperties :

Egenskap Beskrivning Krävs
typ Typegenskapen måste anges till: AzureStorage Yes
Connectionstring Ange information som behövs för att ansluta till Azure Storage för egenskapen connectionString. Yes

Exempel:

{
    "name": "StorageLinkedService",
    "properties": {
        "type": "AzureStorage",
        "typeProperties": {
            "connectionString": "DefaultEndpointsProtocol=https;AccountName=<accountname>;AccountKey=<accountkey>"
        }
    }
}

Länkad Azure Storage SAS-tjänst

Med den länkade Azure Storage SAS-tjänsten kan du länka ett Azure Storage-konto till en Azure-datafabrik med hjälp av en signatur för delad åtkomst (SAS). Den ger datafabriken begränsad/tidsbunden åtkomst till alla/specifika resurser (blob/container) i lagringen. Om du vill länka ditt Azure Storage-konto till en datafabrik med signatur för delad åtkomst skapar du en länkad Azure Storage SAS-tjänst. Om du vill definiera en länkad Azure Storage SAS-tjänst anger du typen av länkad tjänst till AzureStorageSas. Sedan kan du ange följande egenskaper i avsnittet typeProperties :

Egenskap Beskrivning Krävs
typ Typegenskapen måste anges till: AzureStorageSas Yes
sasUri Ange signatur-URI för delad åtkomst till Azure Storage-resurser som blob, container eller tabell. Yes

Exempel:

{
    "name": "StorageSasLinkedService",
    "properties": {
        "type": "AzureStorageSas",
        "typeProperties": {
            "sasUri": "<storageUri>?<sasToken>"
        }
    }
}

Mer information om dessa länkade tjänster finns i artikeln Azure Table Storage Connector .

Datamängd

Om du vill definiera en Azure Table-datauppsättning anger du datauppsättningens typ till AzureTable och anger följande egenskaper i avsnittet typeProperties :

Egenskap Beskrivning Krävs
tableName Namnet på tabellen i Azure Table Database-instansen som den länkade tjänsten refererar till. Ja. När ett tableName anges utan azureTableSourceQuery kopieras alla poster från tabellen till målet. Om en azureTableSourceQuery också anges kopieras poster från tabellen som uppfyller frågan till målet.

Exempel

{
    "name": "AzureTableInput",
    "properties": {
        "type": "AzureTable",
        "linkedServiceName": "StorageLinkedService",
        "typeProperties": {
            "tableName": "MyTable"
        },
        "external": true,
        "availability": {
            "frequency": "Hour",
            "interval": 1
        },
        "policy": {
            "externalData": {
                "retryInterval": "00:01:00",
                "retryTimeout": "00:10:00",
                "maximumRetry": 3
            }
        }
    }
}

Mer information om dessa länkade tjänster finns i artikeln Azure Table Storage Connector .

Azure-tabellkälla i kopieringsaktivitet

Om du kopierar data från Azure Table Storage anger du källtypen för kopieringsaktiviteten till AzureTableSource och anger följande egenskaper i källavsnittet :

Egenskap Beskrivning Tillåtna värden Obligatorisk
azureTableSourceQuery Använd den anpassade frågan för att läsa data. Frågesträng för Azure-tabell. Se exempel i nästa avsnitt. Nej. När ett tableName anges utan azureTableSourceQuery kopieras alla poster från tabellen till målet. Om en azureTableSourceQuery också anges kopieras poster från tabellen som uppfyller frågan till målet.
azureTableSourceIgnoreTableNotFound Ange om det inte finns något undantag för tabellen. TRUE
FALSE
No

Exempel

{
    "name": "SamplePipeline",
    "properties": {
        "start": "2016-06-01T18:00:00",
        "end": "2016-06-01T19:00:00",
        "description": "pipeline for copy activity",
        "activities": [{
            "name": "AzureTabletoBlob",
            "description": "copy activity",
            "type": "Copy",
            "inputs": [{
                "name": "AzureTableInput"
            }],
            "outputs": [{
                "name": "AzureBlobOutput"
            }],
            "typeProperties": {
                "source": {
                    "type": "AzureTableSource",
                    "AzureTableSourceQuery": "PartitionKey eq 'DefaultPartitionKey'"
                },
                "sink": {
                    "type": "BlobSink"
                }
            },
            "scheduler": {
                "frequency": "Hour",
                "interval": 1
            },
            "policy": {
                "concurrency": 1,
                "executionPriorityOrder": "OldestFirst",
                "retry": 0,
                "timeout": "01:00:00"
            }
        }]
    }
}

Mer information om dessa länkade tjänster finns i artikeln Azure Table Storage Connector .

Azure Table Sink i kopieringsaktivitet

Om du kopierar data till Azure Table Storage anger du kopieringsaktivitetens mottagartyp till AzureTableSink och anger följande egenskaper i mottagaravsnittet :

Egenskap Beskrivning Tillåtna värden Obligatorisk
azureTableDefaultPartitionKeyValue Standardvärde för partitionsnyckel som kan användas av mottagaren. Ett strängvärde. No
azureTablePartitionKeyName Ange namnet på kolumnen vars värden används som partitionsnycklar. Om inget anges används AzureTableDefaultPartitionKeyValue som partitionsnyckel. Ett kolumnnamn. No
azureTableRowKeyName Ange namnet på den kolumn vars kolumnvärden används som radnyckel. Om inget anges använder du ett GUID för varje rad. Ett kolumnnamn. No
azureTableInsertType Läget för att infoga data i Azure-tabellen.

Den här egenskapen styr om befintliga rader i utdatatabellen med matchande partitions- och radnycklar får sina värden ersatta eller sammanfogade.

Mer information om hur de här inställningarna (sammanfoga och ersätt) fungerar finns i avsnitten Infoga eller sammanfoga entitet och Infoga eller Ersätt entitet .

Den här inställningen gäller på radnivå, inte tabellnivå, och inget av alternativen tar bort rader i utdatatabellen som inte finns i indata.
merge (standard)
Ersätta
No
writeBatchSize Infogar data i Azure-tabellen när writeBatchSize eller writeBatchTimeout nås. Heltal (antal rader) Nej (standard: 10000)
writeBatchTimeout Infogar data i Azure-tabellen när writeBatchSize eller writeBatchTimeout nås tidsintervall

Exempel: "00:20:00" (20 minuter)
Nej (standardvärdet för standardtidsgräns för lagringsklienten 90 sek)

Exempel

{
    "name": "SamplePipeline",
    "properties": {
        "start": "2016-06-01T18:00:00",
        "end": "2016-06-01T19:00:00",
        "description": "pipeline with copy activity",
        "activities": [{
            "name": "AzureBlobtoTable",
            "description": "Copy Activity",
            "type": "Copy",
            "inputs": [{
                "name": "AzureBlobInput"
            }],
            "outputs": [{
                "name": "AzureTableOutput"
            }],
            "typeProperties": {
                "source": {
                    "type": "BlobSource"
                },
                "sink": {
                    "type": "AzureTableSink",
                    "writeBatchSize": 100,
                    "writeBatchTimeout": "01:00:00"
                }
            },
            "scheduler": {
                "frequency": "Hour",
                "interval": 1
            },
            "policy": {
                "concurrency": 1,
                "executionPriorityOrder": "OldestFirst",
                "retry": 0,
                "timeout": "01:00:00"
            }
        }]
    }
}

Mer information om dessa länkade tjänster finns i artikeln Azure Table Storage Connector .

Amazon RedShift

Länkad tjänst

Om du vill definiera en länkad Amazon Redshift-tjänst anger du typen av den länkade tjänsten till AmazonRedshift och anger följande egenskaper i avsnittet typeProperties :

Egenskap Beskrivning Krävs
server IP-adress eller värdnamn för Amazon Redshift-servern. Yes
port Antalet TCP-portar som Amazon Redshift-servern använder för att lyssna efter klientanslutningar. Nej, standardvärde: 5439
databas Namnet på Amazon Redshift-databasen. Yes
användarnamn Namn på användare som har åtkomst till databasen. Yes
password Lösenord för användarkontot. Yes

Exempel

{
    "name": "AmazonRedshiftLinkedService",
    "properties": {
        "type": "AmazonRedshift",
        "typeProperties": {
            "server": "<Amazon Redshift host name or IP address>",
            "port": 5439,
            "database": "<database name>",
            "username": "user",
            "password": "password"
        }
    }
}

Mer information finns i artikeln om Amazon Redshift-anslutningsprogram.

Datamängd

Om du vill definiera en Amazon Redshift-datauppsättning anger du typen av datauppsättning till RelationalTable och anger följande egenskaper i avsnittet typeProperties :

Egenskap Beskrivning Krävs
tableName Namnet på tabellen i Amazon Redshift-databasen som den länkade tjänsten refererar till. Nej (om frågan för RelationalSource har angetts)

Exempel

{
    "name": "AmazonRedshiftInputDataset",
    "properties": {
        "type": "RelationalTable",
        "linkedServiceName": "AmazonRedshiftLinkedService",
        "typeProperties": {
            "tableName": "<Table name>"
        },
        "availability": {
            "frequency": "Hour",
            "interval": 1
        },
        "external": true
    }
}

Mer information finns i artikeln om Amazon Redshift-anslutningsprogram.

Relationskälla i kopieringsaktivitet

Om du kopierar data från Amazon Redshift anger du källtypen för kopieringsaktiviteten till RelationalSource och anger följande egenskaper i källavsnittet :

Egenskap Beskrivning Tillåtna värden Obligatorisk
DocumentDB Använd den anpassade frågan för att läsa data. SQL-frågesträng. Exempel: select * from MyTable. Nej (om tableName för datauppsättningen har angetts )

Exempel

{
    "name": "CopyAmazonRedshiftToBlob",
    "properties": {
        "description": "pipeline for copy activity",
        "activities": [{
            "type": "Copy",
            "typeProperties": {
                "source": {
                    "type": "RelationalSource",
                    "query": "$$Text.Format('select * from MyTable where timestamp >= \\'{0:yyyy-MM-ddTHH:mm:ss}\\' AND timestamp < \\'{1:yyyy-MM-ddTHH:mm:ss}\\'', WindowStart, WindowEnd)"
                },
                "sink": {
                    "type": "BlobSink",
                    "writeBatchSize": 0,
                    "writeBatchTimeout": "00:00:00"
                }
            },
            "inputs": [{
                "name": "AmazonRedshiftInputDataset"
            }],
            "outputs": [{
                "name": "AzureBlobOutputDataSet"
            }],
            "policy": {
                "timeout": "01:00:00",
                "concurrency": 1
            },
            "scheduler": {
                "frequency": "Hour",
                "interval": 1
            },
            "name": "AmazonRedshiftToBlob"
        }],
        "start": "2016-06-01T18:00:00",
        "end": "2016-06-01T19:00:00"
    }
}

Mer information finns i artikeln om Amazon Redshift-anslutningsprogram.

IBM DB2

Länkad tjänst

Om du vill definiera en länkad IBM DB2-tjänst anger du typen av den länkade tjänsten till OnPremisesDB2 och anger följande egenskaper i avsnittet typeProperties :

Egenskap Beskrivning Krävs
server Namnet på DB2-servern. Yes
databas Namnet på DB2-databasen. Yes
schema Namnet på schemat i databasen. Schemanamnet är skiftlägeskänsligt. No
authenticationType Typ av autentisering som används för att ansluta till DB2-databasen. Möjliga värden är: Anonym, Grundläggande och Windows. Yes
användarnamn Ange användarnamn om du använder Grundläggande eller Windows-autentisering. No
password Ange lösenord för det användarkonto som du angav för användarnamnet. No
gatewayName Namnet på den gateway som Data Factory-tjänsten ska använda för att ansluta till den lokala DB2-databasen. Yes

Exempel

{
    "name": "OnPremDb2LinkedService",
    "properties": {
        "type": "OnPremisesDb2",
        "typeProperties": {
            "server": "<server>",
            "database": "<database>",
            "schema": "<schema>",
            "authenticationType": "<authentication type>",
            "username": "<username>",
            "password": "<password>",
            "gatewayName": "<gatewayName>"
        }
    }
}

Mer information finns i artikeln OM IBM DB2-anslutningsapp.

Datamängd

Om du vill definiera en DB2-datauppsättning anger du datauppsättningens typ till RelationalTable och anger följande egenskaper i avsnittet typeProperties :

Egenskap Beskrivning Krävs
tableName Namnet på tabellen i DB2 Database-instansen som den länkade tjänsten refererar till. TableName är skiftlägeskänsligt. Nej (om fråganför RelationalSource har angetts)

Exempel

{
    "name": "Db2DataSet",
    "properties": {
        "type": "RelationalTable",
        "linkedServiceName": "OnPremDb2LinkedService",
        "typeProperties": {},
        "availability": {
            "frequency": "Hour",
            "interval": 1
        },
        "external": true,
        "policy": {
            "externalData": {
                "retryInterval": "00:01:00",
                "retryTimeout": "00:10:00",
                "maximumRetry": 3
            }
        }
    }
}

Mer information finns i artikeln OM IBM DB2-anslutningsapp.

Relationskälla i kopieringsaktivitet

Om du kopierar data från IBM DB2 anger du källtypen för kopieringsaktiviteten till RelationalSource och anger följande egenskaper i källavsnittet :

Egenskap Beskrivning Tillåtna värden Obligatorisk
DocumentDB Använd den anpassade frågan för att läsa data. SQL-frågesträng. Exempel: "query": "select * from "MySchema"."MyTable"". Nej (om tableName för datauppsättningen har angetts )

Exempel

{
    "name": "CopyDb2ToBlob",
    "properties": {
        "description": "pipeline for copy activity",
        "activities": [{
            "type": "Copy",
            "typeProperties": {
                "source": {
                    "type": "RelationalSource",
                    "query": "select * from \"Orders\""
                },
                "sink": {
                    "type": "BlobSink"
                }
            },
            "inputs": [{
                "name": "Db2DataSet"
            }],
            "outputs": [{
                "name": "AzureBlobDb2DataSet"
            }],
            "policy": {
                "timeout": "01:00:00",
                "concurrency": 1
            },
            "scheduler": {
                "frequency": "Hour",
                "interval": 1
            },
            "name": "Db2ToBlob"
        }],
        "start": "2016-06-01T18:00:00",
        "end": "2016-06-01T19:00:00"
    }
}

Mer information finns i artikeln OM IBM DB2-anslutningsapp.

MySQL

Länkad tjänst

Om du vill definiera en länkad MySQL-tjänst anger du typen för den länkade tjänsten till OnPremisesMySql och anger följande egenskaper i avsnittet typeProperties :

Egenskap Beskrivning Krävs
server Namnet på MySQL-servern. Yes
databas Namnet på MySQL-databasen. Yes
schema Namnet på schemat i databasen. No
authenticationType Typ av autentisering som används för att ansluta till MySQL-databasen. Möjliga värden är: Basic. Yes
userName Ange användarnamn för att ansluta till MySQL-databasen. Yes
password Ange lösenord för det användarkonto som du angav. Yes
gatewayName Namnet på den gateway som Data Factory-tjänsten ska använda för att ansluta till den lokala MySQL-databasen. Yes

Exempel

{
    "name": "OnPremMySqlLinkedService",
    "properties": {
        "type": "OnPremisesMySql",
        "typeProperties": {
            "server": "<server name>",
            "database": "<database name>",
            "schema": "<schema name>",
            "authenticationType": "<authentication type>",
            "userName": "<user name>",
            "password": "<password>",
            "gatewayName": "<gateway>"
        }
    }
}

Mer information finns i artikeln Om MySQL-anslutningsprogram .

Datamängd

Om du vill definiera en MySQL-datauppsättning anger du datauppsättningens typ till RelationalTable och anger följande egenskaper i avsnittet typeProperties :

Egenskap Beskrivning Krävs
tableName Namnet på tabellen i MySQL Database-instansen som den länkade tjänsten refererar till. Nej (om fråganför RelationalSource har angetts)

Exempel

{
    "name": "MySqlDataSet",
    "properties": {
        "type": "RelationalTable",
        "linkedServiceName": "OnPremMySqlLinkedService",
        "typeProperties": {},
        "availability": {
            "frequency": "Hour",
            "interval": 1
        },
        "external": true,
        "policy": {
            "externalData": {
                "retryInterval": "00:01:00",
                "retryTimeout": "00:10:00",
                "maximumRetry": 3
            }
        }
    }
}

Mer information finns i artikeln Om MySQL-anslutningsprogram .

Relationskälla i kopieringsaktivitet

Om du kopierar data från en MySQL-databas anger du källtypen för kopieringsaktiviteten till RelationalSource och anger följande egenskaper i källavsnittet :

Egenskap Beskrivning Tillåtna värden Obligatorisk
DocumentDB Använd den anpassade frågan för att läsa data. SQL-frågesträng. Exempel: select * from MyTable. Nej (om tableName för datauppsättningen har angetts )

Exempel

{
    "name": "CopyMySqlToBlob",
    "properties": {
        "description": "pipeline for copy activity",
        "activities": [{
            "type": "Copy",
            "typeProperties": {
                "source": {
                    "type": "RelationalSource",
                    "query": "$$Text.Format('select * from MyTable where timestamp >= \\'{0:yyyy-MM-ddTHH:mm:ss}\\' AND timestamp < \\'{1:yyyy-MM-ddTHH:mm:ss}\\'', WindowStart, WindowEnd)"
                },
                "sink": {
                    "type": "BlobSink",
                    "writeBatchSize": 0,
                    "writeBatchTimeout": "00:00:00"
                }
            },
            "inputs": [{
                "name": "MySqlDataSet"
            }],
            "outputs": [{
                "name": "AzureBlobMySqlDataSet"
            }],
            "policy": {
                "timeout": "01:00:00",
                "concurrency": 1
            },
            "scheduler": {
                "frequency": "Hour",
                "interval": 1
            },
            "name": "MySqlToBlob"
        }],
        "start": "2016-06-01T18:00:00",
        "end": "2016-06-01T19:00:00"
    }
}

Mer information finns i artikeln Om MySQL-anslutningsprogram .

Oracle

Länkad tjänst

Om du vill definiera en länkad Oracle-tjänst anger du den länkade tjänstens typ till OnPremisesOracle och anger följande egenskaper i avsnittet typeProperties :

Egenskap Beskrivning Krävs
driverType Ange vilken drivrutin som ska användas för att kopiera data från/till Oracle Database. Tillåtna värden är Microsoft eller ODP (standard). Se avsnittet Version och installation som stöds om drivrutinsinformation. No
Connectionstring Ange information som behövs för att ansluta till Oracle Database-instansen för egenskapen connectionString. Yes
gatewayName Namnet på den gateway som används för att ansluta till den lokala Oracle-servern Yes

Exempel

{
    "name": "OnPremisesOracleLinkedService",
    "properties": {
        "type": "OnPremisesOracle",
        "typeProperties": {
            "driverType": "Microsoft",
            "connectionString": "Host=<host>;Port=<port>;Sid=<sid>;User Id=<username>;Password=<password>;",
            "gatewayName": "<gateway name>"
        }
    }
}

Mer information finns i artikeln Oracle-anslutningsprogram .

Datamängd

Om du vill definiera en Oracle-datauppsättning anger du datauppsättningens typ till OracleTable och anger följande egenskaper i avsnittet typeProperties :

Egenskap Beskrivning Krävs
tableName Namnet på tabellen i Oracle Database som den länkade tjänsten refererar till. Nej (om oracleReaderQuery för OracleSource har angetts)

Exempel

{
    "name": "OracleInput",
    "properties": {
        "type": "OracleTable",
        "linkedServiceName": "OnPremisesOracleLinkedService",
        "typeProperties": {
            "tableName": "MyTable"
        },
        "external": true,
        "availability": {
            "offset": "01:00:00",
            "interval": "1",
            "anchorDateTime": "2016-02-27T12:00:00",
            "frequency": "Hour"
        },
        "policy": {
            "externalData": {
                "retryInterval": "00:01:00",
                "retryTimeout": "00:10:00",
                "maximumRetry": 3
            }
        }
    }
}

Mer information finns i artikeln Om Oracle-anslutningsprogram .

Oracle-källa i kopieringsaktivitet

Om du kopierar data från en Oracle-databas anger du källtypen för kopieringsaktiviteten till OracleSource och anger följande egenskaper i källavsnittet :

Egenskap Beskrivning Tillåtna värden Obligatorisk
oracleReaderQuery Använd den anpassade frågan för att läsa data. SQL-frågesträng. Exempelvis: select * from MyTable

Om inget anges körs SQL-instruktionen: select * from MyTable
Nej (om tableName för datauppsättningen har angetts )

Exempel

{
    "name": "SamplePipeline",
    "properties": {
        "start": "2016-06-01T18:00:00",
        "end": "2016-06-01T19:00:00",
        "description": "pipeline for copy activity",
        "activities": [{
            "name": "OracletoBlob",
            "description": "copy activity",
            "type": "Copy",
            "inputs": [{
                "name": " OracleInput"
            }],
            "outputs": [{
                "name": "AzureBlobOutput"
            }],
            "typeProperties": {
                "source": {
                    "type": "OracleSource",
                    "oracleReaderQuery": "$$Text.Format('select * from MyTable where timestampcolumn >= \\'{0:yyyy-MM-dd HH:mm}\\' AND timestampcolumn < \\'{1:yyyy-MM-dd HH:mm}\\'', WindowStart, WindowEnd)"
                },
                "sink": {
                    "type": "BlobSink"
                }
            },
            "scheduler": {
            "frequency": "Hour",
                "interval": 1
            },
            "policy": {
                "concurrency": 1,
                "executionPriorityOrder": "OldestFirst",
                "retry": 0,
                "timeout": "01:00:00"
            }
        }]
    }
}

Mer information finns i artikeln Om Oracle-anslutningsprogram .

Oracle-mottagare i kopieringsaktivitet

Om du kopierar data till en Oracle-databas anger du mottagartypen för kopieringsaktiviteten till OracleSink och anger följande egenskaper i mottagaravsnittet :

Egenskap Beskrivning Tillåtna värden Obligatorisk
writeBatchTimeout Vänta tills batchinfogningsåtgärden har slutförts innan tidsgränsen uppnås. tidsintervall

Exempel: 00:30:00 (30 minuter).
No
writeBatchSize Infogar data i SQL-tabellen när buffertstorleken når writeBatchSize. Heltal (antal rader) Nej (standard: 100)
sqlWriterCleanupScript Ange en fråga för kopieringsaktiviteten så att data i en viss sektor rensas. En frågeuttryck. No
sliceIdentifierColumnName Ange kolumnnamnet för kopieringsaktiviteten som ska fyllas med automatiskt genererad utsnittsidentifierare, som används för att rensa data från en viss sektor vid omkörning. Kolumnnamn för en kolumn med datatypen binary(32). No

Exempel

{
    "name": "SamplePipeline",
    "properties": {
        "start": "2016-06-01T18:00:00",
        "end": "2016-06-05T19:00:00",
        "description": "pipeline with copy activity",
        "activities": [{
            "name": "AzureBlobtoOracle",
            "description": "Copy Activity",
            "type": "Copy",
            "inputs": [{
                "name": "AzureBlobInput"
            }],
            "outputs": [{
                "name": "OracleOutput"
            }],
            "typeProperties": {
                "source": {
                    "type": "BlobSource"
                },
                "sink": {
                    "type": "OracleSink"
                }
            },
            "scheduler": {
                "frequency": "Day",
                "interval": 1
            },
            "policy": {
                "concurrency": 1,
                "executionPriorityOrder": "OldestFirst",
                "retry": 0,
                "timeout": "01:00:00"
            }
        }]
    }
}

Mer information finns i artikeln Om Oracle-anslutningsprogram .

PostgreSQL

Länkad tjänst

Om du vill definiera en länkad PostgreSQL-tjänst anger du typen av den länkade tjänsten till OnPremisesPostgreSql och anger följande egenskaper i avsnittet typeProperties :

Egenskap Beskrivning Krävs
server Namnet på PostgreSQL-servern. Yes
databas Namnet på PostgreSQL-databasen. Yes
schema Namnet på schemat i databasen. Schemanamnet är skiftlägeskänsligt. No
authenticationType Typ av autentisering som används för att ansluta till PostgreSQL-databasen. Möjliga värden är: Anonym, Grundläggande och Windows. Yes
användarnamn Ange användarnamn om du använder Grundläggande eller Windows-autentisering. No
password Ange lösenord för det användarkonto som du angav för användarnamnet. No
gatewayName Namnet på den gateway som Data Factory-tjänsten ska använda för att ansluta till den lokala PostgreSQL-databasen. Yes

Exempel

{
    "name": "OnPremPostgreSqlLinkedService",
    "properties": {
        "type": "OnPremisesPostgreSql",
        "typeProperties": {
            "server": "<server>",
            "database": "<database>",
            "schema": "<schema>",
            "authenticationType": "<authentication type>",
            "username": "<username>",
            "password": "<password>",
            "gatewayName": "<gatewayName>"
        }
    }
}

Mer information finns i artikeln om PostgreSQL-anslutningsprogram .

Datamängd

Om du vill definiera en PostgreSQL-datauppsättning anger du typen av datauppsättning till RelationalTable och anger följande egenskaper i avsnittet typeProperties :

Egenskap Beskrivning Krävs
tableName Namnet på tabellen i PostgreSQL Database-instansen som den länkade tjänsten refererar till. TableName är skiftlägeskänsligt. Nej (om frågan för RelationalSource har angetts)

Exempel

{
    "name": "PostgreSqlDataSet",
    "properties": {
        "type": "RelationalTable",
        "linkedServiceName": "OnPremPostgreSqlLinkedService",
        "typeProperties": {},
        "availability": {
            "frequency": "Hour",
            "interval": 1
        },
        "external": true,
        "policy": {
            "externalData": {
                "retryInterval": "00:01:00",
                "retryTimeout": "00:10:00",
                "maximumRetry": 3
            }
        }
    }
}

Mer information finns i artikeln om PostgreSQL-anslutningsprogram .

Relationskälla i kopieringsaktivitet

Om du kopierar data från en PostgreSQL-databas anger du källtypen för kopieringsaktiviteten till RelationalSource och anger följande egenskaper i källavsnittet :

Egenskap Beskrivning Tillåtna värden Obligatorisk
DocumentDB Använd den anpassade frågan för att läsa data. SQL-frågesträng. Till exempel: "query": "select * from "MySchema"." MyTable". Nej (om tableName för datauppsättningen har angetts )

Exempel

{
    "name": "CopyPostgreSqlToBlob",
    "properties": {
        "description": "pipeline for copy activity",
        "activities": [{
            "type": "Copy",
            "typeProperties": {
                "source": {
                    "type": "RelationalSource",
                    "query": "select * from \"public\".\"usstates\""
                },
                "sink": {
                    "type": "BlobSink"
                }
            },
            "inputs": [{
                "name": "PostgreSqlDataSet"
            }],
            "outputs": [{
                "name": "AzureBlobPostgreSqlDataSet"
            }],
            "policy": {
                "timeout": "01:00:00",
                "concurrency": 1
            },
            "scheduler": {
                "frequency": "Hour",
                "interval": 1
            },
            "name": "PostgreSqlToBlob"
        }],
        "start": "2016-06-01T18:00:00",
        "end": "2016-06-01T19:00:00"
    }
}

Mer information finns i artikeln om PostgreSQL-anslutningsprogram .

SAP Business Warehouse

Länkad tjänst

Om du vill definiera en länkad TJÄNST för SAP Business Warehouse (BW) anger du typen av länkad tjänst till SapBw och anger följande egenskaper i avsnittet typeProperties :

Egenskap Beskrivning Tillåtna värden Obligatorisk
server Namnet på den server där SAP BW-instansen finns. sträng Yes
systemNumber Systemnummer för SAP BW-systemet. Tvåsiffrigt decimaltal representerat som en sträng. Yes
ClientID Klient-ID för klienten i SAP W-systemet. Tresiffrigt decimaltal representerat som en sträng. Yes
användarnamn Namnet på den användare som har åtkomst till SAP-servern sträng Yes
password Lösenordet för användaren. sträng Yes
gatewayName Namnet på den gateway som Data Factory-tjänsten ska använda för att ansluta till den lokala SAP BW-instansen. sträng Yes
encryptedCredential Strängen för krypterade autentiseringsuppgifter. sträng No

Exempel

{
    "name": "SapBwLinkedService",
    "properties": {
        "type": "SapBw",
        "typeProperties": {
            "server": "<server name>",
            "systemNumber": "<system number>",
            "clientId": "<client id>",
            "username": "<SAP user>",
            "password": "<Password for SAP user>",
            "gatewayName": "<gateway name>"
        }
    }
}

Mer information finns i artikeln om anslutningsappen för SAP Business Warehouse .

Datamängd

Om du vill definiera en SAP BW-datauppsättning anger du datauppsättningens typ till RelationalTable. Det finns inga typspecifika egenskaper som stöds för SAP BW-datauppsättningen av typen RelationalTable.

Exempel

{
    "name": "SapBwDataset",
    "properties": {
        "type": "RelationalTable",
        "linkedServiceName": "SapBwLinkedService",
        "typeProperties": {},
        "availability": {
            "frequency": "Hour",
            "interval": 1
        },
        "external": true
    }
}

Mer information finns i artikeln om anslutningsappen för SAP Business Warehouse .

Relationskälla i kopieringsaktivitet

Om du kopierar data från SAP Business Warehouse anger du källtypen för kopieringsaktiviteten till RelationalSource och anger följande egenskaper i källavsnittet :

Egenskap Beskrivning Tillåtna värden Obligatorisk
DocumentDB Anger MDX-frågan för att läsa data från SAP BW-instansen. MDX-fråga. Yes

Exempel

{
    "name": "CopySapBwToBlob",
    "properties": {
        "description": "pipeline for copy activity",
        "activities": [{
            "type": "Copy",
            "typeProperties": {
                "source": {
                    "type": "RelationalSource",
                    "query": "<MDX query for SAP BW>"
                },
                "sink": {
                    "type": "BlobSink",
                    "writeBatchSize": 0,
                    "writeBatchTimeout": "00:00:00"
                }
            },
            "inputs": [{
                "name": "SapBwDataset"
            }],
            "outputs": [{
                "name": "AzureBlobDataSet"
            }],
            "policy": {
                "timeout": "01:00:00",
                "concurrency": 1
            },
            "scheduler": {
                "frequency": "Hour",
                "interval": 1
            },
            "name": "SapBwToBlob"
        }],
        "start": "2017-03-01T18:00:00",
        "end": "2017-03-01T19:00:00"
    }
}

Mer information finns i artikeln om anslutningsappen för SAP Business Warehouse .

SAP HANA

Länkad tjänst

Om du vill definiera en länkad SAP HANA-tjänst anger du typen av länkad tjänst till SapHana och anger följande egenskaper i avsnittet typeProperties :

Egenskap Beskrivning Tillåtna värden Obligatorisk
server Namnet på servern där SAP HANA-instansen finns. Om servern använder en anpassad port anger du server:port. sträng Yes
authenticationType Typ av autentisering. Sträng. "Basic" eller "Windows" Yes
användarnamn Namnet på den användare som har åtkomst till SAP-servern sträng Yes
password Lösenordet för användaren. sträng Yes
gatewayName Namnet på den gateway som Data Factory-tjänsten ska använda för att ansluta till den lokala SAP HANA-instansen. sträng Yes
encryptedCredential Strängen för krypterade autentiseringsuppgifter. sträng No

Exempel

{
    "name": "SapHanaLinkedService",
    "properties": {
        "type": "SapHana",
        "typeProperties": {
            "server": "<server name>",
            "authenticationType": "<Basic, or Windows>",
            "username": "<SAP user>",
            "password": "<Password for SAP user>",
            "gatewayName": "<gateway name>"
        }
    }
}

Mer information finns i artikeln om SAP HANA-anslutningsprogram .

Datamängd

Om du vill definiera en SAP HANA-datauppsättning anger du datauppsättningens typ till RelationalTable. Det finns inga typspecifika egenskaper som stöds för SAP HANA-datauppsättningen av typen RelationalTable.

Exempel

{
    "name": "SapHanaDataset",
    "properties": {
        "type": "RelationalTable",
        "linkedServiceName": "SapHanaLinkedService",
        "typeProperties": {},
        "availability": {
            "frequency": "Hour",
            "interval": 1
        },
        "external": true
    }
}

Mer information finns i artikeln om SAP HANA-anslutningsprogram .

Relationskälla i kopieringsaktivitet

Om du kopierar data från ett SAP HANA-datalager anger du källtypen för kopieringsaktiviteten till RelationalSource och anger följande egenskaper i källavsnittet :

Egenskap Beskrivning Tillåtna värden Obligatorisk
DocumentDB Anger SQL-frågan för att läsa data från SAP HANA-instansen. SQL-fråga. Yes

Exempel

{
    "name": "CopySapHanaToBlob",
    "properties": {
        "description": "pipeline for copy activity",
        "activities": [{
            "type": "Copy",
            "typeProperties": {
                "source": {
                    "type": "RelationalSource",
                    "query": "<SQL Query for HANA>"
                },
                "sink": {
                    "type": "BlobSink",
                    "writeBatchSize": 0,
                    "writeBatchTimeout": "00:00:00"
                }
            },
            "inputs": [{
                "name": "SapHanaDataset"
            }],
            "outputs": [{
                "name": "AzureBlobDataSet"
            }],
            "policy": {
                "timeout": "01:00:00",
                "concurrency": 1
            },
            "scheduler": {
                "frequency": "Hour",
                "interval": 1
            },
            "name": "SapHanaToBlob"
        }],
        "start": "2017-03-01T18:00:00",
        "end": "2017-03-01T19:00:00"
    }
}

Mer information finns i artikeln om SAP HANA-anslutningsprogram .

SQL Server

Länkad tjänst

Du skapar en länkad tjänst av typen OnPremisesSqlServer för att länka en SQL Server-databas till en datafabrik. Följande tabell innehåller en beskrivning av JSON-element som är specifika för den länkade SQL Server-tjänsten.

Följande tabell innehåller en beskrivning av JSON-element som är specifika för den länkade SQL Server-tjänsten.

Egenskap Beskrivning Krävs
typ Typegenskapen ska anges till: OnPremisesSqlServer. Yes
Connectionstring Ange anslutningSträngsinformation som behövs för att ansluta till SQL Server-databasen med antingen SQL-autentisering eller Windows-autentisering. Yes
gatewayName Namnet på den gateway som Data Factory-tjänsten ska använda för att ansluta till SQL Server-databasen. Yes
användarnamn Ange användarnamn om du använder Windows-autentisering. Exempel: domännamn\användarnamn. No
password Ange lösenord för det användarkonto som du angav för användarnamnet. No

Du kan kryptera autentiseringsuppgifter med cmdleten New-AzDataFactoryEncryptValue och använda dem i anslutningssträngen enligt följande exempel (egenskapen EncryptedCredential ):

"connectionString": "Data Source=<servername>;Initial Catalog=<databasename>;Integrated Security=True;EncryptedCredential=<encrypted credential>",

Exempel: JSON för att använda SQL-autentisering

{
    "name": "MyOnPremisesSQLDB",
    "properties": {
        "type": "OnPremisesSqlServer",
        "typeProperties": {
            "connectionString": "Data Source=<servername>;Initial Catalog=MarketingCampaigns;Integrated Security=False;User ID=<username>;Password=<password>;",
            "gatewayName": "<gateway name>"
        }
    }
}

Exempel: JSON för att använda Windows-autentisering

Om användarnamn och lösenord anges använder gatewayen dem för att personifiera det angivna användarkontot för att ansluta till SQL Server-databasen. Annars ansluter gatewayen till SQL Server direkt med säkerhetskontexten för Gateway (dess startkonto).

{
    "Name": " MyOnPremisesSQLDB",
    "Properties": {
        "type": "OnPremisesSqlServer",
        "typeProperties": {
            "ConnectionString": "Data Source=<servername>;Initial Catalog=MarketingCampaigns;Integrated Security=True;",
            "username": "<domain\\username>",
            "password": "<password>",
            "gatewayName": "<gateway name>"
        }
    }
}

Mer information finns i artikeln om SQL Server-anslutningsprogram .

Datamängd

Om du vill definiera en SQL Server-datauppsättning anger du datauppsättningens typ till SqlServerTable och anger följande egenskaper i avsnittet typeProperties :

Egenskap Beskrivning Krävs
tableName Namnet på tabellen eller vyn i SQL Server Database-instansen som den länkade tjänsten refererar till. Yes

Exempel

{
    "name": "SqlServerInput",
    "properties": {
        "type": "SqlServerTable",
        "linkedServiceName": "SqlServerLinkedService",
        "typeProperties": {
            "tableName": "MyTable"
        },
        "external": true,
        "availability": {
            "frequency": "Hour",
            "interval": 1
        },
        "policy": {
            "externalData": {
                "retryInterval": "00:01:00",
                "retryTimeout": "00:10:00",
                "maximumRetry": 3
            }
        }
    }
}

Mer information finns i artikeln om SQL Server-anslutningsprogram .

Sql-källa i kopieringsaktivitet

Om du kopierar data från en SQL Server-databas anger du källtypen för kopieringsaktiviteten till SqlSource och anger följande egenskaper i källavsnittet :

Egenskap Beskrivning Tillåtna värden Obligatorisk
sqlReaderQuery Använd den anpassade frågan för att läsa data. SQL-frågesträng. Exempel: select * from MyTable. Kan referera till flera tabeller från databasen som refereras av indatauppsättningen. Om det inte anges väljer du den SQL-instruktion som körs från MyTable. No
sqlReaderStoredProcedureName Namnet på den lagrade proceduren som läser data från källtabellen. Namnet på den lagrade proceduren. No
storedProcedureParameters Parametrar för den lagrade proceduren. Namn/värdepar. Namn och hölje för parametrar måste matcha namnen och höljet för parametrarna för den lagrade proceduren. No

Om sqlReaderQuery har angetts för SqlSource kör kopieringsaktiviteten den här frågan mot SQL Server Database-källan för att hämta data.

Du kan också ange en lagrad procedur genom att ange sqlReaderStoredProcedureName och storedProcedureParameters (om den lagrade proceduren tar parametrar).

Om du inte anger sqlReaderQuery eller sqlReaderStoredProcedureName används kolumnerna som definieras i strukturavsnittet för att skapa en select-fråga som ska köras mot SQL Server Database. Om datauppsättningsdefinitionen inte har strukturen väljs alla kolumner från tabellen.

Anteckning

När du använder sqlReaderStoredProcedureName måste du fortfarande ange ett värde för egenskapen tableName i datauppsättningens JSON. Det finns dock inga verifieringar som utförs mot den här tabellen.

Exempel

{
    "name": "SamplePipeline",
    "properties": {
        "start": "2016-06-01T18:00:00",
        "end": "2016-06-01T19:00:00",
        "description": "pipeline for copy activity",
        "activities": [{
            "name": "SqlServertoBlob",
            "description": "copy activity",
            "type": "Copy",
            "inputs": [{
                "name": " SqlServerInput"
            }],
            "outputs": [{
                "name": "AzureBlobOutput"
            }],
            "typeProperties": {
                "source": {
                    "type": "SqlSource",
                    "SqlReaderQuery": "$$Text.Format('select * from MyTable where timestampcolumn >= \\'{0:yyyy-MM-dd HH:mm}\\' AND timestampcolumn < \\'{1:yyyy-MM-dd HH:mm}\\'', WindowStart, WindowEnd)"
                },
                "sink": {
                    "type": "BlobSink"
                }
			},
            "scheduler": {
                "frequency": "Hour",
                "interval": 1
            },
            "policy": {
                "concurrency": 1,
                "executionPriorityOrder": "OldestFirst",
                "retry": 0,
                "timeout": "01:00:00"
            }
        }]
    }
}

I det här exemplet anges sqlReaderQuery för SqlSource. Kopieringsaktiviteten kör den här frågan mot SQL Server Database-källan för att hämta data. Du kan också ange en lagrad procedur genom att ange sqlReaderStoredProcedureName och storedProcedureParameters (om den lagrade proceduren tar parametrar). sqlReaderQuery kan referera till flera tabeller i databasen som refereras av indatauppsättningen. Det är inte begränsat till endast den tabell som angetts som datauppsättningens tableName typeProperty.

Om du inte anger sqlReaderQuery eller sqlReaderStoredProcedureName används kolumnerna som definieras i strukturavsnittet för att skapa en select-fråga som ska köras mot SQL Server Database. Om datauppsättningsdefinitionen inte har strukturen väljs alla kolumner från tabellen.

Mer information finns i artikeln om SQL Server-anslutningsprogram .

Sql-mottagare i kopieringsaktivitet

Om du kopierar data till en SQL Server-databas anger du mottagartypen för kopieringsaktiviteten till SqlSink och anger följande egenskaper i mottagaravsnittet :

Egenskap Beskrivning Tillåtna värden Obligatorisk
writeBatchTimeout Vänta tills batchinfogningsåtgärden har slutförts innan tidsgränsen uppnås. tidsintervall

Exempel: "00:30:00" (30 minuter).
No
writeBatchSize Infogar data i SQL-tabellen när buffertstorleken når writeBatchSize. Heltal (antal rader) Nej (standard: 10000)
sqlWriterCleanupScript Ange en fråga för Kopieringsaktivitet så att data i ett visst segment rensas. Mer information finns i avsnittet om repeterbarhet. En frågeuttryck. No
sliceIdentifierColumnName Ange kolumnnamn för Kopieringsaktivitet som ska fyllas med automatiskt genererad utsnittsidentifierare, som används för att rensa data för ett visst segment vid omkörning. Mer information finns i avsnittet om repeterbarhet. Kolumnnamn för en kolumn med datatypen binär(32). No
sqlWriterStoredProcedureName Namnet på den lagrade procedur som uppdaterar (uppdaterar/infogar) data i måltabellen. Namnet på den lagrade proceduren. No
storedProcedureParameters Parametrar för den lagrade proceduren. Namn/värdepar. Namn och hölje för parametrar måste matcha namnen och höljet för parametrarna för den lagrade proceduren. No
sqlWriterTableType Ange tabelltypnamn som ska användas i den lagrade proceduren. Kopieringsaktiviteten gör data som flyttas tillgängliga i en temporär tabell med den här tabelltypen. Kod för lagrad procedur kan sedan sammanfoga data som kopieras med befintliga data. Ett tabelltypsnamn. No

Exempel

Pipelinen innehåller en kopieringsaktivitet som är konfigurerad att använda dessa indata- och utdatauppsättningar och som är schemalagd att köras varje timme. I pipelinens JSON-definition är källtypen inställd på BlobSource och mottagartypen är inställd på SqlSink.

{
    "name": "SamplePipeline",
    "properties": {
        "start": "2016-06-01T18:00:00",
        "end": "2016-06-01T19:00:00",
        "description": "pipeline with copy activity",
        "activities": [{
            "name": "AzureBlobtoSQL",
            "description": "Copy Activity",
            "type": "Copy",
            "inputs": [{
                "name": "AzureBlobInput"
            }],
            "outputs": [{
                "name": " SqlServerOutput "
            }],
            "typeProperties": {
                "source": {
                    "type": "BlobSource",
                    "blobColumnSeparators": ","
                },
                "sink": {
                    "type": "SqlSink"
                }
            },
            "scheduler": {
                "frequency": "Hour",
                "interval": 1
            },
            "policy": {
                "concurrency": 1,
                "executionPriorityOrder": "OldestFirst",
                "retry": 0,
                "timeout": "01:00:00"
            }
        }]
    }
}

Mer information finns i artikeln om SQL Server-anslutningsprogram .

Sybase

Länkad tjänst

Om du vill definiera en länkad Sybase-tjänst anger du typen för den länkade tjänsten till OnPremisesSybase och anger följande egenskaper i avsnittet typeProperties :

Egenskap Beskrivning Krävs
server Namnet på Sybase-servern. Yes
databas Namnet på Sybase-databasen. Yes
schema Namnet på schemat i databasen. No
authenticationType Typ av autentisering som används för att ansluta till Sybase-databasen. Möjliga värden är: Anonym, Grundläggande och Windows. Yes
användarnamn Ange användarnamn om du använder Basic- eller Windows-autentisering. No
password Ange lösenord för det användarkonto som du angav för användarnamnet. No
gatewayName Namnet på den gateway som Data Factory-tjänsten ska använda för att ansluta till den lokala Sybase-databasen. Yes

Exempel

{
    "name": "OnPremSybaseLinkedService",
    "properties": {
        "type": "OnPremisesSybase",
        "typeProperties": {
            "server": "<server>",
            "database": "<database>",
            "schema": "<schema>",
            "authenticationType": "<authentication type>",
            "username": "<username>",
            "password": "<password>",
            "gatewayName": "<gatewayName>"
        }
    }
}

Mer information finns i artikeln om Sybase-anslutningsprogram .

Datamängd

Om du vill definiera en Sybase-datauppsättning anger du datauppsättningens typ till RelationalTable och anger följande egenskaper i avsnittet typeProperties :

Egenskap Beskrivning Krävs
tableName Namnet på tabellen i Sybase Database-instansen som den länkade tjänsten refererar till. Nej (om fråganför RelationalSource har angetts)

Exempel

{
    "name": "SybaseDataSet",
    "properties": {
        "type": "RelationalTable",
        "linkedServiceName": "OnPremSybaseLinkedService",
        "typeProperties": {},
        "availability": {
            "frequency": "Hour",
            "interval": 1
        },
        "external": true,
        "policy": {
            "externalData": {
                "retryInterval": "00:01:00",
                "retryTimeout": "00:10:00",
                "maximumRetry": 3
            }
        }
    }
}

Mer information finns i artikeln om Sybase-anslutningsprogram .

Relationskälla i kopieringsaktivitet

Om du kopierar data från en Sybase-databas anger du källtypen för kopieringsaktiviteten till RelationalSource och anger följande egenskaper i källavsnittet :

Egenskap Beskrivning Tillåtna värden Obligatorisk
DocumentDB Använd den anpassade frågan för att läsa data. SQL-frågesträng. Exempel: select * from MyTable. Nej (om tableName för datauppsättningen har angetts )

Exempel

{
    "name": "CopySybaseToBlob",
    "properties": {
        "description": "pipeline for copy activity",
        "activities": [{
            "type": "Copy",
            "typeProperties": {
                "source": {
                    "type": "RelationalSource",
                    "query": "select * from DBA.Orders"
                },
                "sink": {
                    "type": "BlobSink"
                }
            },
            "inputs": [{
                "name": "SybaseDataSet"
            }],
            "outputs": [{
                "name": "AzureBlobSybaseDataSet"
            }],
            "policy": {
                "timeout": "01:00:00",
                "concurrency": 1
            },
            "scheduler": {
                "frequency": "Hour",
                "interval": 1
            },
            "name": "SybaseToBlob"
        }],
        "start": "2016-06-01T18:00:00",
        "end": "2016-06-01T19:00:00"
    }
}

Mer information finns i artikeln om Sybase-anslutningsprogram .

Teradata

Länkad tjänst

Om du vill definiera en länkad Teradata-tjänst anger du typen för den länkade tjänsten till OnPremisesTeradata och anger följande egenskaper i avsnittet typeProperties :

Egenskap Beskrivning Krävs
server Namnet på Teradata-servern. Yes
authenticationType Typ av autentisering som används för att ansluta till Teradata-databasen. Möjliga värden är: Anonym, Grundläggande och Windows. Yes
användarnamn Ange användarnamn om du använder Basic- eller Windows-autentisering. No
password Ange lösenord för det användarkonto som du angav för användarnamnet. No
gatewayName Namnet på den gateway som Data Factory-tjänsten ska använda för att ansluta till den lokala Teradata-databasen. Yes

Exempel

{
    "name": "OnPremTeradataLinkedService",
    "properties": {
        "type": "OnPremisesTeradata",
        "typeProperties": {
            "server": "<server>",
            "authenticationType": "<authentication type>",
            "username": "<username>",
            "password": "<password>",
            "gatewayName": "<gatewayName>"
        }
    }
}

Mer information finns i artikeln om Teradata-anslutningsprogram .

Datamängd

Om du vill definiera en Teradata Blob-datauppsättning anger du typen av datauppsättning till RelationalTable. För närvarande finns det inga typegenskaper som stöds för Teradata-datauppsättningen.

Exempel

{
    "name": "TeradataDataSet",
    "properties": {
        "type": "RelationalTable",
        "linkedServiceName": "OnPremTeradataLinkedService",
        "typeProperties": {},
        "availability": {
            "frequency": "Hour",
            "interval": 1
        },
        "external": true,
        "policy": {
            "externalData": {
                "retryInterval": "00:01:00",
                "retryTimeout": "00:10:00",
                "maximumRetry": 3
            }
        }
    }
}

Mer information finns i artikeln om Teradata-anslutningsprogram .

Relationskälla i kopieringsaktivitet

Om du kopierar data från en Teradata-databas anger du källtypen för kopieringsaktiviteten till RelationalSource och anger följande egenskaper i källavsnittet :

Egenskap Beskrivning Tillåtna värden Obligatorisk
DocumentDB Använd den anpassade frågan för att läsa data. SQL-frågesträng. Exempel: select * from MyTable. Yes

Exempel

{
    "name": "CopyTeradataToBlob",
    "properties": {
        "description": "pipeline for copy activity",
        "activities": [{
            "type": "Copy",
            "typeProperties": {
                "source": {
                    "type": "RelationalSource",
                    "query": "$$Text.Format('select * from MyTable where timestamp >= \\'{0:yyyy-MM-ddTHH:mm:ss}\\' AND timestamp < \\'{1:yyyy-MM-ddTHH:mm:ss}\\'', SliceStart, SliceEnd)"
                },
                "sink": {
                    "type": "BlobSink",
                    "writeBatchSize": 0,
                    "writeBatchTimeout": "00:00:00"
                }
            },
            "inputs": [{
                "name": "TeradataDataSet"
            }],
            "outputs": [{
                "name": "AzureBlobTeradataDataSet"
            }],
            "policy": {
                "timeout": "01:00:00",
                "concurrency": 1
            },
            "scheduler": {
                "frequency": "Hour",
                "interval": 1
            },
            "name": "TeradataToBlob"
        }],
        "start": "2016-06-01T18:00:00",
        "end": "2016-06-01T19:00:00",
        "isPaused": false
    }
}

Mer information finns i artikeln om Teradata-anslutningsprogram .

Cassandra

Länkad tjänst

Om du vill definiera en länkad Cassandra-tjänst anger du den länkade tjänstens typ till OnPremisesCassandra och anger följande egenskaper i avsnittet typeProperties :

Egenskap Beskrivning Krävs
värd En eller flera IP-adresser eller värdnamn för Cassandra-servrar.

Ange en kommaavgränsad lista över IP-adresser eller värdnamn för att ansluta till alla servrar samtidigt.
Yes
port TCP-porten som Cassandra-servern använder för att lyssna efter klientanslutningar. Nej, standardvärde: 9042
authenticationType Grundläggande eller anonym Yes
användarnamn Ange användarnamnet för användarkontot. Ja, om authenticationType är inställt på Basic.
password Ange lösenordet för användarkontot. Ja, om authenticationType är inställt på Basic.
gatewayName Namnet på den gateway som används för att ansluta till den lokala Cassandra-databasen. Yes
encryptedCredential Autentiseringsuppgifter som krypterats av gatewayen. No

Exempel

{
    "name": "CassandraLinkedService",
    "properties": {
        "type": "OnPremisesCassandra",
        "typeProperties": {
            "authenticationType": "Basic",
            "host": "<cassandra server name or IP address>",
            "port": 9042,
            "username": "user",
            "password": "password",
            "gatewayName": "<onpremgateway>"
        }
    }
}

Mer information finns i artikeln om Cassandra-anslutningsprogram .

Datamängd

Om du vill definiera en Cassandra-datauppsättning anger du datauppsättningens typ till CassandraTable och anger följande egenskaper i avsnittet typeProperties :

Egenskap Beskrivning Krävs
keyspace Namnet på nyckelområdet eller schemat i Cassandra-databasen. Ja (om frågan för CassandraSource inte har definierats).
tableName Namnet på tabellen i Cassandra-databasen. Ja (om frågan för CassandraSource inte har definierats).

Exempel

{
    "name": "CassandraInput",
    "properties": {
        "linkedServiceName": "CassandraLinkedService",
        "type": "CassandraTable",
        "typeProperties": {
            "tableName": "mytable",
            "keySpace": "<key space>"
        },
        "availability": {
            "frequency": "Hour",
            "interval": 1
        },
        "external": true,
        "policy": {
            "externalData": {
                "retryInterval": "00:01:00",
                "retryTimeout": "00:10:00",
                "maximumRetry": 3
            }
        }
    }
}

Mer information finns i artikeln om Cassandra-anslutningsprogram .

Cassandra-källa i kopieringsaktivitet

Om du kopierar data från Cassandra anger du källtypen för kopieringsaktiviteten till CassandraSource och anger följande egenskaper i källavsnittet :

Egenskap Beskrivning Tillåtna värden Obligatorisk
DocumentDB Använd den anpassade frågan för att läsa data. SQL-92-fråga eller CQL-fråga. Se CQL-referens.

När du använder SQL-fråga anger du namnet på keyspace.table så att det representerar den tabell som du vill köra frågor mot.
Nej (om tableName och keyspace för datauppsättningen har definierats).
consistencyLevel Konsekvensnivån anger hur många repliker som måste svara på en läsbegäran innan data returneras till klientprogrammet. Cassandra kontrollerar det angivna antalet repliker efter data för att uppfylla läsbegäran. ETT, TVÅ, TRE, KVORUM, ALLA, LOCAL_QUORUM, EACH_QUORUM, LOCAL_ONE. Mer information finns i Konfigurera datakonsekvens . Nej. Standardvärdet är ONE.

Exempel

{
    "name": "SamplePipeline",
    "properties": {
        "start": "2016-06-01T18:00:00",
        "end": "2016-06-01T19:00:00",
        "description": "pipeline with copy activity",
        "activities": [{
            "name": "CassandraToAzureBlob",
            "description": "Copy from Cassandra to an Azure blob",
            "type": "Copy",
            "inputs": [{
                "name": "CassandraInput"
            }],
            "outputs": [{
                "name": "AzureBlobOutput"
            }],
            "typeProperties": {
                "source": {
                    "type": "CassandraSource",
                    "query": "select id, firstname, lastname from mykeyspace.mytable"
                },
                "sink": {
                    "type": "BlobSink"
                }
            },
            "scheduler": {
                "frequency": "Hour",
                "interval": 1
            },
            "policy": {
                "concurrency": 1,
                "executionPriorityOrder": "OldestFirst",
                "retry": 0,
                "timeout": "01:00:00"
            }
        }]
    }
}

Mer information finns i artikeln om Cassandra-anslutningsprogram .

MongoDB

Länkad tjänst

Om du vill definiera en länkad MongoDB-tjänst anger du den länkade tjänstens typ till OnPremisesMongoDB och anger följande egenskaper i avsnittet typeProperties :

Egenskap Beskrivning Krävs
server IP-adress eller värdnamn för MongoDB-servern. Yes
port TCP-port som MongoDB-servern använder för att lyssna efter klientanslutningar. Valfritt, standardvärde: 27017
authenticationType Grundläggande eller anonym. Yes
användarnamn Användarkonto för att få åtkomst till MongoDB. Ja (om grundläggande autentisering används).
password Lösenordet för användaren. Ja (om grundläggande autentisering används).
authSource Namnet på den MongoDB-databas som du vill använda för att kontrollera dina autentiseringsuppgifter för autentisering. Valfritt (om grundläggande autentisering används). default: använder administratörskontot och databasen som anges med egenskapen databaseName.
Databasename Namnet på den MongoDB-databas som du vill komma åt. Yes
gatewayName Namnet på den gateway som har åtkomst till datalagret. Yes
encryptedCredential Autentiseringsuppgifter som krypterats av gatewayen. Valfritt

Exempel

{
    "name": "OnPremisesMongoDbLinkedService",
    "properties": {
        "type": "OnPremisesMongoDb",
        "typeProperties": {
            "authenticationType": "<Basic or Anonymous>",
            "server": "< The IP address or host name of the MongoDB server >",
            "port": "<The number of the TCP port that the MongoDB server uses to listen for client connections.>",
            "username": "<username>",
            "password": "<password>",
            "authSource": "< The database that you want to use to check your credentials for authentication. >",
            "databaseName": "<database name>",
            "gatewayName": "<onpremgateway>"
        }
    }
}

Mer information finns i artikeln om MongoDB-anslutningsprogram

Datamängd

Om du vill definiera en MongoDB-datauppsättning anger du datauppsättningens typ till MongoDbCollection och anger följande egenskaper i avsnittet typeProperties :

Egenskap Beskrivning Krävs
collectionName Namnet på samlingen i MongoDB-databasen. Yes

Exempel

{
    "name": "MongoDbInputDataset",
    "properties": {
        "type": "MongoDbCollection",
        "linkedServiceName": "OnPremisesMongoDbLinkedService",
        "typeProperties": {
            "collectionName": "<Collection name>"
        },
        "availability": {
            "frequency": "Hour",
            "interval": 1
        },
        "external": true
    }
}

Mer information finns i artikeln om MongoDB-anslutningsprogram

MongoDB-källa i kopieringsaktivitet

Om du kopierar data från MongoDB anger du källtypen för kopieringsaktiviteten till MongoDbSource och anger följande egenskaper i källavsnittet :

Egenskap Beskrivning Tillåtna värden Obligatorisk
DocumentDB Använd den anpassade frågan för att läsa data. SQL-92-frågesträng. Exempel: select * from MyTable. Nej (om collectionName för datauppsättning har angetts )

Exempel

{
    "name": "CopyMongoDBToBlob",
    "properties": {
        "description": "pipeline for copy activity",
        "activities": [{
            "type": "Copy",
            "typeProperties": {
                "source": {
                    "type": "MongoDbSource",
                    "query": "select * from MyTable"
                },
                "sink": {
                    "type": "BlobSink",
                    "writeBatchSize": 0,
                    "writeBatchTimeout": "00:00:00"
                }
            },
            "inputs": [{
                "name": "MongoDbInputDataset"
            }],
            "outputs": [{
                "name": "AzureBlobOutputDataSet"
            }],
            "policy": {
                "timeout": "01:00:00",
                "concurrency": 1
            },
            "scheduler": {
                "frequency": "Hour",
                "interval": 1
            },
            "name": "MongoDBToAzureBlob"
        }],
        "start": "2016-06-01T18:00:00",
        "end": "2016-06-01T19:00:00"
    }
}

Mer information finns i artikeln om MongoDB-anslutningsprogram

Amazon S3

Länkad tjänst

Om du vill definiera en länkad Amazon S3-tjänst anger du typen för den länkade tjänsten till AwsAccessKey och anger följande egenskaper i avsnittet typeProperties :

Egenskap Beskrivning Tillåtna värden Obligatorisk
accessKeyID ID för den hemliga åtkomstnyckeln. sträng Yes
secretAccessKey Själva den hemliga åtkomstnyckeln. Krypterad hemlighetssträng Yes

Exempel

{
    "name": "AmazonS3LinkedService",
    "properties": {
        "type": "AwsAccessKey",
        "typeProperties": {
            "accessKeyId": "<access key id>",
            "secretAccessKey": "<secret access key>"
        }
    }
}

Mer information finns i artikeln Om Amazon S3-anslutningsprogram.

Datamängd

Om du vill definiera en Amazon S3-datauppsättning anger du datauppsättningens typ till AmazonS3 och anger följande egenskaper i avsnittet typeProperties :

Egenskap Beskrivning Tillåtna värden Obligatorisk
bucketName S3-bucketnamnet. Sträng Yes
key S3-objektnyckeln. Sträng No
Prefix Prefix för S3-objektnyckeln. Objekt vars nycklar börjar med det här prefixet är markerade. Gäller endast när nyckeln är tom. Sträng No
version Versionen av S3-objektet om S3-versionshantering är aktiverad. Sträng No
format Följande formattyper stöds: TextFormat, JsonFormat, AvroFormat, OrcFormat, ParquetFormat. Ange typegenskapen under format till något av dessa värden. Mer information finns i avsnitten Textformat, Json-format, Avro-format, Orc-format och Parquet-format .

Om du vill kopiera filer som de är mellan filbaserade arkiv (binär kopia) hoppar du över formatavsnittet i både indata- och utdatauppsättningsdefinitioner.
No
komprimering Ange typ och komprimeringsnivå för data. Typer som stöds är: GZip, Deflate, BZip2 och ZipDeflate. De nivåer som stöds är: Optimal och Snabbast. Mer information finns i Fil- och komprimeringsformat i Azure Data Factory. No

Anteckning

bucketName + key anger platsen för S3-objektet där bucketen är rotcontainern för S3-objekt och nyckeln är den fullständiga sökvägen till S3-objektet.

Exempel: Exempel på datauppsättning med prefix

{
    "name": "dataset-s3",
    "properties": {
        "type": "AmazonS3",
        "linkedServiceName": "link- testS3",
        "typeProperties": {
            "prefix": "testFolder/test",
            "bucketName": "<S3 bucket name>",
            "format": {
                "type": "OrcFormat"
            }
        },
        "availability": {
            "frequency": "Hour",
            "interval": 1
        },
        "external": true
    }
}

Exempel: Exempel på datauppsättning (med version)

{
    "name": "dataset-s3",
    "properties": {
        "type": "AmazonS3",
        "linkedServiceName": "link- testS3",
        "typeProperties": {
            "key": "testFolder/test.orc",
            "bucketName": "<S3 bucket name>",
            "version": "XXXXXXXXXczm0CJajYkHf0_k6LhBmkcL",
            "format": {
                "type": "OrcFormat"
            }
        },
        "availability": {
            "frequency": "Hour",
            "interval": 1
        },
        "external": true
    }
}

Exempel: Dynamiska sökvägar för S3

I exemplet använder vi fasta värden för nyckel- och bucketName-egenskaper i Amazon S3-datauppsättningen.

"key": "testFolder/test.orc",
"bucketName": "<S3 bucket name>",

Du kan låta Data Factory beräkna nyckeln och bucketName dynamiskt vid körning med hjälp av systemvariabler som SliceStart.

"key": "$$Text.Format('{0:MM}/{0:dd}/test.orc', SliceStart)"
"bucketName": "$$Text.Format('{0:yyyy}', SliceStart)"

Du kan göra samma sak för prefixegenskapen för en Amazon S3-datauppsättning. En lista över funktioner och variabler som stöds finns i Data Factory-funktioner och systemvariabler .

Mer information finns i artikeln om Amazon S3-anslutningsprogram.

Filsystemkälla i kopieringsaktivitet

Om du kopierar data från Amazon S3 anger du källtypen för kopieringsaktiviteten till FileSystemSource och anger följande egenskaper i källavsnittet :

Egenskap Beskrivning Tillåtna värden Obligatorisk
Rekursiv Anger om S3-objekt ska visas rekursivt under katalogen. sant/falskt No

Exempel

{
    "name": "CopyAmazonS3ToBlob",
    "properties": {
        "description": "pipeline for copy activity",
        "activities": [{
            "type": "Copy",
            "typeProperties": {
                "source": {
                    "type": "FileSystemSource",
                    "recursive": true
                },
                "sink": {
                    "type": "BlobSink",
                    "writeBatchSize": 0,
                    "writeBatchTimeout": "00:00:00"
                }
            },
            "inputs": [{
                "name": "AmazonS3InputDataset"
            }],
            "outputs": [{
                "name": "AzureBlobOutputDataSet"
            }],
            "policy": {
                "timeout": "01:00:00",
                "concurrency": 1
            },
            "scheduler": {
                "frequency": "Hour",
                "interval": 1
            },
            "name": "AmazonS3ToBlob"
        }],
        "start": "2016-08-08T18:00:00",
        "end": "2016-08-08T19:00:00"
    }
}

Mer information finns i artikeln om Amazon S3-anslutningsprogram.

Filsystem

Länkad tjänst

Du kan länka ett lokalt filsystem till en Azure-datafabrik med den lokala filserverlänkade tjänsten. Följande tabell innehåller beskrivningar för JSON-element som är specifika för den lokala filserverlänkade tjänsten.

Egenskap Beskrivning Krävs
typ Kontrollera att typegenskapen är inställd på OnPremisesFileServer. Yes
värd Anger rotsökvägen för den mapp som du vill kopiera. Använd escape-tecknet \ för specialtecken i strängen. Exempel finns i Exempel på länkade tjänst- och datauppsättningsdefinitioner. Yes
userid Ange ID för den användare som har åtkomst till servern. Nej (om du väljer encryptedCredential)
password Ange lösenordet för användaren (userid). Nej (om du väljer encryptedCredential
encryptedCredential Ange de krypterade autentiseringsuppgifter som du kan få genom att köra cmdleten New-AzDataFactoryEncryptValue. Nej (om du väljer att ange userid och lösenord i oformaterad text)
gatewayName Anger namnet på den gateway som Data Factory ska använda för att ansluta till den lokala filservern. Yes

Exempel på sökvägsdefinitioner för mappar

Scenario Värd i länkad tjänstdefinition folderPath i datauppsättningsdefinition
Lokal mapp på datahanteringsgatewaydatorn:

Exempel: D:\* eller D:\folder\subfolder\*
D:\\ (för Data Management Gateway 2.0 och senare versioner)

localhost (för tidigare versioner än Data Management Gateway 2.0)
.\\ eller mapp\\undermapp (för Data Management Gateway 2.0 och senare versioner)

D:\\ eller D:\\folder\\subfolder (för gatewayversion nedan 2.0)
Delad fjärrmapp:

Exempel: \\myserver\share\* eller \\myserver\share\folder\subfolder\*
\\\\myserver\\share .\\ eller mapp\\\undermapp

Exempel: Använda användarnamn och lösenord i oformaterad text

{
    "Name": "OnPremisesFileServerLinkedService",
    "properties": {
        "type": "OnPremisesFileServer",
        "typeProperties": {
            "host": "\\\\Contosogame-Asia",
            "userid": "Admin",
            "password": "123456",
            "gatewayName": "<onpremgateway>"
        }
    }
}

Exempel: Använda encryptedcredential

{
    "Name": " OnPremisesFileServerLinkedService ",
    "properties": {
        "type": "OnPremisesFileServer",
        "typeProperties": {
            "host": "D:\\",
            "encryptedCredential": "WFuIGlzIGRpc3Rpbmd1aXNoZWQsIG5vdCBvbmx5IGJ5xxxxxxxxxxxxxxxxx",
            "gatewayName": "<onpremgateway>"
        }
    }
}

Mer information finns i artikeln Om anslutningsprogram för filsystem.

Datamängd

Om du vill definiera en filsystemdatauppsättning anger du datauppsättningens typ till FileShare och anger följande egenskaper i avsnittet typeProperties :

Egenskap Beskrivning Krävs
folderPath Anger undersökvägen till mappen. Använd escape-tecknet '\' för specialtecken i strängen. Exempel finns i Exempel på länkade tjänst- och datauppsättningsdefinitioner.

Du kan kombinera den här egenskapen med partitionBy för att ha mappsökvägar baserat på sektorns start-/slutdatumtider.
Yes
fileName Ange namnet på filen i folderPath om du vill att tabellen ska referera till en specifik fil i mappen. Om du inte anger något värde för den här egenskapen pekar tabellen på alla filer i mappen.

När fileName inte har angetts för en utdatauppsättning är namnet på den genererade filen i följande format:

Data.<Guid>.txt (Exempel: Data.0a405f8a-93ff-4c6f-b3be-f69616f1df7a.txt)
No
fileFilter Ange ett filter som ska användas för att välja en delmängd av filer i folderPath i stället för alla filer.

Tillåtna värden är: * (flera tecken) och ? (enskilt tecken).

Exempel 1: "fileFilter": "*.log"
Exempel 2: "fileFilter": 2016-1-?.txt"

Observera att fileFilter gäller för en indatafilResursdatauppsättning.
No
partitionedBy Du kan använda partitionedBy för att ange en dynamisk folderPath/fileName för tidsseriedata. Ett exempel är folderPath som parametriseras för varje timmes data. No
format Följande formattyper stöds: TextFormat, JsonFormat, AvroFormat, OrcFormat, ParquetFormat. Ange typegenskapen under format till något av dessa värden. Mer information finns i avsnitten Textformat, Json-format, Avro-format, Orc-format och Parquet-format .

Om du vill kopiera filer som de är mellan filbaserade butiker (binär kopia) hoppar du över formatavsnittet i både indata- och utdatauppsättningsdefinitioner.
No
komprimering Ange typ och komprimeringsnivå för data. Typer som stöds är: GZip, Deflate, BZip2 och ZipDeflate; och de nivåer som stöds är: Optimal och Snabbast. se Fil- och komprimeringsformat i Azure Data Factory. No

Anteckning

Du kan inte använda fileName och fileFilter samtidigt.

Exempel

{
    "name": "OnpremisesFileSystemInput",
    "properties": {
        "type": " FileShare",
        "linkedServiceName": " OnPremisesFileServerLinkedService ",
        "typeProperties": {
            "folderPath": "mysharedfolder/yearno={Year}/monthno={Month}/dayno={Day}",
            "fileName": "{Hour}.csv",
            "partitionedBy": [{
                "name": "Year",
                "value": {
                    "type": "DateTime",
                    "date": "SliceStart",
                        "format": "yyyy"
                }
            }, {
                "name": "Month",
                "value": {
                    "type": "DateTime",
                    "date": "SliceStart",
                    "format": "MM"
                }
            }, {
                "name": "Day",
                "value": {
                    "type": "DateTime",
                    "date": "SliceStart",
                    "format": "dd"
                }
            }, {
                "name": "Hour",
                "value": {
                    "type": "DateTime",
                    "date": "SliceStart",
                    "format": "HH"
                }
            }]
        },
        "external": true,
        "availability": {
            "frequency": "Hour",
            "interval": 1
        },
        "policy": {
            "externalData": {
                "retryInterval": "00:01:00",
                "retryTimeout": "00:10:00",
                "maximumRetry": 3
            }
        }
    }
}

Mer information finns i artikeln Anslutningsapp för filsystem.

Filsystemkälla i kopieringsaktivitet

Om du kopierar data från filsystemet anger du källtypen för kopieringsaktiviteten till FileSystemSource och anger följande egenskaper i källavsnittet :

Egenskap Beskrivning Tillåtna värden Obligatorisk
Rekursiv Anger om data läse rekursivt från undermapparna eller endast från den angivna mappen. True, False (standard) No

Exempel

{
    "name": "SamplePipeline",
    "properties": {
        "start": "2015-06-01T18:00:00",
        "end": "2015-06-01T19:00:00",
        "description": "Pipeline for copy activity",
        "activities": [{
            "name": "OnpremisesFileSystemtoBlob",
            "description": "copy activity",
            "type": "Copy",
            "inputs": [{
                "name": "OnpremisesFileSystemInput"
            }],
            "outputs": [{
                "name": "AzureBlobOutput"
            }],
            "typeProperties": {
                "source": {
                    "type": "FileSystemSource"
                },
                "sink": {
                    "type": "BlobSink"
                }
            },
            "scheduler": {
            "frequency": "Hour",
                "interval": 1
            },
            "policy": {
                "concurrency": 1,
                "executionPriorityOrder": "OldestFirst",
                "retry": 0,
                "timeout": "01:00:00"
            }
        }]
    }
}

Mer information finns i artikeln Anslutningsapp för filsystem.

Filsystemmottagare i kopieringsaktivitet

Om du kopierar data till Filsystem anger du mottagartypen för kopieringsaktiviteten till FileSystemSink och anger följande egenskaper i mottagaravsnittet :

Egenskap Beskrivning Tillåtna värden Obligatorisk
copyBehavior Definierar kopieringsbeteendet när källan är BlobSource eller FileSystem. PreserveHierarchy: Bevarar filhierarkin i målmappen. Den relativa sökvägen för källfilen till källmappen är alltså samma som den relativa sökvägen för målfilen till målmappen.

FlattenHierarchy: Alla filer från källmappen skapas på den första nivån i målmappen. Målfilerna skapas med ett automatiskt genererat namn.

MergeFiles: Sammanfogar alla filer från källmappen till en fil. Om filnamnet/blobnamnet anges är det kopplade filnamnet det angivna namnet. Annars är det ett automatiskt genererat filnamn.
No

auto-

Exempel

{
    "name": "SamplePipeline",
    "properties": {
        "start": "2015-06-01T18:00:00",
        "end": "2015-06-01T20:00:00",
        "description": "pipeline for copy activity",
        "activities": [{
            "name": "AzureSQLtoOnPremisesFile",
            "description": "copy activity",
            "type": "Copy",
            "inputs": [{
                "name": "AzureSQLInput"
            }],
            "outputs": [{
                "name": "OnpremisesFileSystemOutput"
            }],
            "typeProperties": {
                "source": {
                    "type": "SqlSource",
                    "SqlReaderQuery": "$$Text.Format('select * from MyTable where timestampcolumn >= \\'{0:yyyy-MM-dd}\\' AND timestampcolumn < \\'{1:yyyy-MM-dd}\\'', WindowStart, WindowEnd)"
                },
                "sink": {
                    "type": "FileSystemSink"
                }
            },
            "scheduler": {
                "frequency": "Hour",
                "interval": 1
            },
            "policy": {
                "concurrency": 1,
                "executionPriorityOrder": "OldestFirst",
                "retry": 3,
                "timeout": "01:00:00"
            }
        }]
    }
}

Mer information finns i artikeln Anslutningsapp för filsystem.

FTP

Länkad tjänst

Om du vill definiera en länkad FTP-tjänst anger du typen av den länkade tjänsten till FtpServer och anger följande egenskaper i avsnittet typeProperties :

Egenskap Beskrivning Krävs Standardvärde
värd Namn eller IP-adress för FTP-servern Yes  
authenticationType Ange autentiseringstyp Yes Grundläggande, anonym
användarnamn Användare som har åtkomst till FTP-servern No  
password Lösenord för användaren (användarnamn) No  
encryptedCredential Krypterade autentiseringsuppgifter för åtkomst till FTP-servern No  
gatewayName Namnet på datahanteringsgatewayen som ska ansluta till en lokal FTP-server No  
port Port som FTP-servern lyssnar på No 21
enableSsl Ange om FTP ska användas via SSL/TLS-kanal No true
enableServerCertificateValidation Ange om du vill aktivera TLS/SSL-certifikatverifiering för servern när FTP används via SSL/TLS-kanal No true

Exempel: Använda anonym autentisering

{
    "name": "FTPLinkedService",
    "properties": {
        "type": "FtpServer",
            "typeProperties": {
            "authenticationType": "Anonymous",
            "host": "myftpserver.com"
        }
    }
}

Exempel: Använda användarnamn och lösenord i oformaterad text för grundläggande autentisering

{
    "name": "FTPLinkedService",
    "properties": {
        "type": "FtpServer",
        "typeProperties": {
            "host": "myftpserver.com",
            "authenticationType": "Basic",
            "username": "Admin",
            "password": "123456"
        }
    }
}

Exempel: Använda port, enableSsl, enableServerCertificateValidation

{
    "name": "FTPLinkedService",
    "properties": {
        "type": "FtpServer",
        "typeProperties": {
            "host": "myftpserver.com",
            "authenticationType": "Basic",
            "username": "Admin",
            "password": "123456",
            "port": "21",
            "enableSsl": true,
            "enableServerCertificateValidation": true
        }
    }
}

Exempel: Använda encryptedCredential för autentisering och gateway

{
    "name": "FTPLinkedService",
    "properties": {
        "type": "FtpServer",
        "typeProperties": {
            "host": "myftpserver.com",
            "authenticationType": "Basic",
            "encryptedCredential": "xxxxxxxxxxxxxxxxx",
            "gatewayName": "<onpremgateway>"
        }
      }
}

Mer information finns i artikeln FTP-anslutningsapp .

Datamängd

Om du vill definiera en FTP-datauppsättning anger du datauppsättningens typ till FileShare och anger följande egenskaper i avsnittet typeProperties :

Egenskap Beskrivning Krävs
folderPath Undersökväg till mappen. Använd escape-tecknet \ för specialtecken i strängen. Exempel finns i Exempel på länkade tjänst- och datauppsättningsdefinitioner.

Du kan kombinera den här egenskapen med partitionBy om du vill ha mappsökvägar baserat på sektorns start-/slutdatumtider.
Yes
fileName Ange namnet på filen i folderPath om du vill att tabellen ska referera till en specifik fil i mappen. Om du inte anger något värde för den här egenskapen pekar tabellen på alla filer i mappen.

Om fileName inte har angetts för en utdatauppsättning skulle namnet på den genererade filen ha följande format:

Data.<Guid>.txt (Exempel: Data.0a405f8a-93ff-4c6f-b3be-f69616f1df7a.txt)
No
fileFilter Ange ett filter som ska användas för att välja en delmängd av filer i folderPath i stället för alla filer.

Tillåtna värden är: * (flera tecken) och ? (enskilt tecken).

Exempel 1: "fileFilter": "*.log"
Exempel 2: "fileFilter": 2016-1-?.txt"

fileFilter gäller för en indatafilResursdatauppsättning. Den här egenskapen stöds inte med HDFS.
No
partitionedBy partitionedBy kan användas för att ange en dynamisk folderPath, filnamn för tidsseriedata. MappPath parametriseras till exempel för varje timmes data. No
format Följande formattyper stöds: TextFormat, JsonFormat, AvroFormat, OrcFormat, ParquetFormat. Ange typegenskapen under format till något av dessa värden. Mer information finns i avsnitten Textformat, Json-format, Avro-format, Orc-format och Parquet-format .

Om du vill kopiera filer som de är mellan filbaserade butiker (binär kopia) hoppar du över formatavsnittet i både indata- och utdatauppsättningsdefinitioner.
No
komprimering Ange typ och komprimeringsnivå för data. Typer som stöds är: GZip, Deflate, BZip2 och ZipDeflate; och de nivåer som stöds är: Optimala och snabbaste. Mer information finns i Fil- och komprimeringsformat i Azure Data Factory. No
useBinaryTransfer Ange om binärt överföringsläge ska användas. Sant för binärt läge och falskt ASCII. Standardvärde: Sant. Den här egenskapen kan bara användas när den associerade länkade tjänsttypen är av typen: FtpServer. No

Anteckning

filnamn och fileFilter kan inte användas samtidigt.

Exempel

{
    "name": "FTPFileInput",
    "properties": {
        "type": "FileShare",
        "linkedServiceName": "FTPLinkedService",
        "typeProperties": {
            "folderPath": "<path to shared folder>",
            "fileName": "test.csv",
            "useBinaryTransfer": true
        },
        "external": true,
        "availability": {
            "frequency": "Hour",
            "interval": 1
        }
    }
}

Mer information finns i artikeln FTP-anslutningsprogram .

Filsystemkälla i kopieringsaktivitet

Om du kopierar data från en FTP-server anger du källtypen för kopieringsaktiviteten till FileSystemSource och anger följande egenskaper i källavsnittet :

Egenskap Beskrivning Tillåtna värden Obligatorisk
Rekursiv Anger om data läse rekursivt från undermapparna eller bara från den angivna mappen. Sant, Falskt (standard) No

Exempel

{
    "name": "pipeline",
    "properties": {
        "activities": [{
            "name": "FTPToBlobCopy",
            "inputs": [{
                "name": "FtpFileInput"
            }],
            "outputs": [{
                "name": "AzureBlobOutput"
            }],
            "type": "Copy",
            "typeProperties": {
                "source": {
                    "type": "FileSystemSource"
                },
                "sink": {
                    "type": "BlobSink"
                }
            },
            "scheduler": {
                "frequency": "Hour",
                "interval": 1
            },
            "policy": {
                "concurrency": 1,
                "executionPriorityOrder": "NewestFirst",
                "retry": 1,
                "timeout": "00:05:00"
            }
        }],
        "start": "2016-08-24T18:00:00",
        "end": "2016-08-24T19:00:00"
    }
}

Mer information finns i artikeln FTP-anslutningsprogram .

HDFS

Länkad tjänst

Om du vill definiera en länkad HDFS-tjänst anger du typen av länkad tjänst till Hdfs och anger följande egenskaper i avsnittet typeProperties :

Egenskap Beskrivning Krävs
typ Typegenskapen måste anges till: Hdfs Yes
URL URL till HDFS Yes
authenticationType Anonym eller Windows.

Om du vill använda Kerberos-autentisering för HDFS-anslutningsprogram läser du det här avsnittet för att konfigurera din lokala miljö i enlighet med detta.
Yes
userName Användarnamn för Windows-autentisering. Ja (för Windows-autentisering)
password Lösenord för Windows-autentisering. Ja (för Windows-autentisering)
gatewayName Namnet på den gateway som Data Factory-tjänsten ska använda för att ansluta till HDFS. Yes
encryptedCredential New-AzDataFactoryEncryptValue-utdata från åtkomstautentiseringsuppgifterna. No

Exempel: Använda anonym autentisering

{
    "name": "HDFSLinkedService",
    "properties": {
        "type": "Hdfs",
        "typeProperties": {
            "authenticationType": "Anonymous",
            "userName": "hadoop",
            "url": "http://<machine>:50070/webhdfs/v1/",
            "gatewayName": "<onpremgateway>"
        }
    }
}

Exempel: Använda Windows-autentisering

{
    "name": "HDFSLinkedService",
    "properties": {
        "type": "Hdfs",
        "typeProperties": {
            "authenticationType": "Windows",
            "userName": "Administrator",
            "password": "password",
            "url": "http://<machine>:50070/webhdfs/v1/",
            "gatewayName": "<onpremgateway>"
        }
    }
}

Mer information finns i artikeln om HDFS-anslutningsprogram.

Datamängd

Om du vill definiera en HDFS-datauppsättning anger du datauppsättningens typ till FileShare och anger följande egenskaper i avsnittet typeProperties :

Egenskap Beskrivning Krävs
folderPath Sökväg till mappen. Exempel: myfolder

Använd escape-tecknet \ för specialtecken i strängen. Exempel: För mapp\undermapp anger du mapp\\undermapp och för d:\samplefolder anger du d:\\samplefolder.

Du kan kombinera den här egenskapen med partitionBy för att ha mappsökvägar baserat på sektorns start-/slutdatumtider.
Yes
fileName Ange namnet på filen i folderPath om du vill att tabellen ska referera till en specifik fil i mappen. Om du inte anger något värde för den här egenskapen pekar tabellen på alla filer i mappen.

Om fileName inte har angetts för en utdatauppsättning skulle namnet på den genererade filen ha följande format:

Data.<Guid>.txt (till exempel: : Data.0a405f8a-93ff-4c6f-b3be-f69616f1df7a.txt
No
partitionedBy partitionedBy kan användas för att ange en dynamisk folderPath, filnamn för tidsseriedata. Exempel: folderPath parametriserad för varje timmes data. No
format Följande formattyper stöds: TextFormat, JsonFormat, AvroFormat, OrcFormat, ParquetFormat. Ange typegenskapen under format till något av dessa värden. Mer information finns i avsnitten Textformat, Json-format, Avro-format, Orc-format och Parquet-format .

Om du vill kopiera filer som de är mellan filbaserade butiker (binär kopia) hoppar du över formatavsnittet i både indata- och utdatauppsättningsdefinitioner.
No
komprimering Ange typ och komprimeringsnivå för data. Typer som stöds är: GZip, Deflate, BZip2 och ZipDeflate. Nivåerna som stöds är: Optimala och snabbaste. Mer information finns i Fil- och komprimeringsformat i Azure Data Factory. No

Anteckning

filnamn och fileFilter kan inte användas samtidigt.

Exempel

{
    "name": "InputDataset",
    "properties": {
        "type": "FileShare",
        "linkedServiceName": "HDFSLinkedService",
        "typeProperties": {
            "folderPath": "DataTransfer/UnitTest/"
        },
        "external": true,
        "availability": {
            "frequency": "Hour",
            "interval": 1
        }
    }
}

Mer information finns i artikeln om HDFS-anslutningsprogram.

Filsystemkälla i kopieringsaktivitet

Om du kopierar data från HDFS anger du källtypen för kopieringsaktiviteten till FileSystemSource och anger följande egenskaper i källavsnittet :

FileSystemSource stöder följande egenskaper:

Egenskap Beskrivning Tillåtna värden Obligatorisk
Rekursiv Anger om data läse rekursivt från undermapparna eller bara från den angivna mappen. Sant, Falskt (standard) No

Exempel

{
    "name": "pipeline",
    "properties": {
        "activities": [{
            "name": "HdfsToBlobCopy",
            "inputs": [{
                "name": "InputDataset"
            }],
            "outputs": [{
                "name": "OutputDataset"
            }],
            "type": "Copy",
            "typeProperties": {
                "source": {
                    "type": "FileSystemSource"
                },
                "sink": {
                    "type": "BlobSink"
                }
            },
            "policy": {
                "concurrency": 1,
                "executionPriorityOrder": "NewestFirst",
                "retry": 1,
                "timeout": "00:05:00"
            }
        }],
        "start": "2016-06-01T18:00:00",
        "end": "2016-06-01T19:00:00"
    }
}

Mer information finns i artikeln om HDFS-anslutningsprogram.

SFTP

Länkad tjänst

Om du vill definiera en länkad SFTP-tjänst anger du typen av länkad tjänst till Sftp och anger följande egenskaper i avsnittet typeProperties :

Egenskap Beskrivning Krävs
värd SFTP-serverns namn eller IP-adress. Yes
port Port där SFTP-servern lyssnar. Standardvärdet är: 21 No
authenticationType Ange autentiseringstyp. Tillåtna värden: Basic, SshPublicKey.

Mer information om fler egenskaper och JSON-exempel finns i Avsnittet Använda grundläggande autentisering och Använda offentlig SSH-nyckelautentisering .
Yes
skipHostKeyValidation Ange om värdnyckelvalidering ska hoppa över. Nej. Standardvärdet: false
hostKeyFingerprint Ange fingeravtryck för värdnyckeln. Ja om är inställt på skipHostKeyValidation false.
gatewayName Namnet på datahanteringsgatewayen för att ansluta till en lokal SFTP-server. Ja om du kopierar data från en lokal SFTP-server.
encryptedCredential Krypterade autentiseringsuppgifter för åtkomst till SFTP-servern. Genereras automatiskt när du anger grundläggande autentisering (användarnamn + lösenord) eller SshPublicKey-autentisering (sökväg eller innehåll för användarnamn + privat nyckel) i kopieringsguiden eller popup-dialogrutan ClickOnce. Nej. Gäller endast vid kopiering av data från en lokal SFTP-server.

Exempel: Använda grundläggande autentisering

Om du vill använda grundläggande autentisering anger du authenticationType som Basicoch anger följande egenskaper förutom de allmänna SFTP-anslutningsapparna som introducerades i det sista avsnittet:

Egenskap Beskrivning Krävs
användarnamn Användare som har åtkomst till SFTP-servern. Yes
password Lösenord för användaren (användarnamn). Yes
{
    "name": "SftpLinkedService",
    "properties": {
        "type": "Sftp",
        "typeProperties": {
            "host": "<SFTP server name or IP address>",
            "port": 22,
            "authenticationType": "Basic",
            "username": "xxx",
            "password": "xxx",
            "skipHostKeyValidation": false,
            "hostKeyFingerPrint": "ssh-rsa 2048 xx:00:00:00:xx:00:x0:0x:0x:0x:0x:00:00:x0:x0:00",
            "gatewayName": "<onpremgateway>"
        }
    }
}

Exempel: Grundläggande autentisering med krypterade autentiseringsuppgifter

{
    "name": "SftpLinkedService",
    "properties": {
        "type": "Sftp",
        "typeProperties": {
            "host": "<FTP server name or IP address>",
            "port": 22,
            "authenticationType": "Basic",
            "username": "xxx",
            "encryptedCredential": "xxxxxxxxxxxxxxxxx",
            "skipHostKeyValidation": false,
            "hostKeyFingerPrint": "ssh-rsa 2048 xx:00:00:00:xx:00:x0:0x:0x:0x:0x:00:00:x0:x0:00",
            "gatewayName": "<onpremgateway>"
        }
    }
}

Använda offentlig SSH-nyckelautentisering:

Om du vill använda grundläggande autentisering anger du authenticationType som SshPublicKeyoch anger följande egenskaper förutom de allmänna SFTP-anslutningsapparna som introducerades i det sista avsnittet:

Egenskap Beskrivning Krävs
användarnamn Användare som har åtkomst till SFTP-servern Yes
privateKeyPath Ange absolut sökväg till den privata nyckelfil som gatewayen kan komma åt. Ange antingen privateKeyPath eller privateKeyContent.

Gäller endast vid kopiering av data från en lokal SFTP-server.
privateKeyContent En serialiserad sträng med innehållet i den privata nyckeln. Kopieringsguiden kan läsa den privata nyckelfilen och extrahera innehållet i den privata nyckeln automatiskt. Om du använder något annat verktyg/SDK använder du egenskapen privateKeyPath i stället. Ange antingen privateKeyPath eller privateKeyContent.
Lösenfras Ange frasen/lösenordet för att dekryptera den privata nyckeln om nyckelfilen skyddas av en lösenfras. Ja om den privata nyckelfilen skyddas av en lösenfras.
{
    "name": "SftpLinkedServiceWithPrivateKeyPath",
    "properties": {
        "type": "Sftp",
        "typeProperties": {
            "host": "<FTP server name or IP address>",
            "port": 22,
            "authenticationType": "SshPublicKey",
            "username": "xxx",
            "privateKeyPath": "D:\\privatekey_openssh",
            "passPhrase": "xxx",
            "skipHostKeyValidation": true,
            "gatewayName": "<onpremgateway>"
        }
    }
}

Exempel: SshPublicKey-autentisering med privat nyckelinnehåll

{
    "name": "SftpLinkedServiceWithPrivateKeyContent",
    "properties": {
        "type": "Sftp",
        "typeProperties": {
            "host": "mysftpserver.westus.cloudapp.azure.com",
            "port": 22,
            "authenticationType": "SshPublicKey",
            "username": "xxx",
            "privateKeyContent": "<base64 string of the private key content>",
            "passPhrase": "xxx",
            "skipHostKeyValidation": true
        }
    }
}

Mer information finns i artikeln SFTP-anslutningsapp .

Datamängd

Om du vill definiera en SFTP-datauppsättning anger du datauppsättningens typ till FileShare och anger följande egenskaper i avsnittet typeProperties :

Egenskap Beskrivning Krävs
folderPath Undersökväg till mappen. Använd escape-tecknet \ för specialtecken i strängen. Exempel finns i Exempel på länkade tjänst- och datauppsättningsdefinitioner.

Du kan kombinera den här egenskapen med partitionBy om du vill ha mappsökvägar baserat på sektorns start-/slutdatumtider.
Yes
fileName Ange namnet på filen i folderPath om du vill att tabellen ska referera till en specifik fil i mappen. Om du inte anger något värde för den här egenskapen pekar tabellen på alla filer i mappen.

Om fileName inte har angetts för en utdatauppsättning skulle namnet på den genererade filen ha följande format:

Data.<Guid>.txt (Exempel: Data.0a405f8a-93ff-4c6f-b3be-f69616f1df7a.txt)
No
fileFilter Ange ett filter som ska användas för att välja en delmängd av filer i folderPath i stället för alla filer.

Tillåtna värden är: * (flera tecken) och ? (enstaka tecken).

Exempel 1: "fileFilter": "*.log"
Exempel 2: "fileFilter": 2016-1-?.txt"

fileFilter gäller för en indatafilResursdatauppsättning. Den här egenskapen stöds inte med HDFS.
No
partitionedBy partitionedBy kan användas för att ange en dynamisk folderPath, filnamn för tidsseriedata. Till exempel folderPath som parametriseras för varje timme med data. No
format Följande formattyper stöds: TextFormat, JsonFormat, AvroFormat, OrcFormat, ParquetFormat. Ange typegenskapen under format till något av dessa värden. Mer information finns i avsnitten Textformat, Json-format, Avro-format, Orc-format och Parquet-format .

Om du vill kopiera filer som de är mellan filbaserade arkiv (binär kopia) hoppar du över formatavsnittet i både indata- och utdatauppsättningsdefinitioner.
No
komprimering Ange typ och komprimeringsnivå för data. Typer som stöds är: GZip, Deflate, BZip2 och ZipDeflate. Nivåer som stöds är: Optimal och Snabbast. Mer information finns i Fil- och komprimeringsformat i Azure Data Factory. No
useBinaryTransfer Ange om binärt överföringsläge ska användas. Sant för binärt läge och falskt ASCII. Standardvärde: Sant. Den här egenskapen kan bara användas när den associerade länkade tjänsttypen är av typen: FtpServer. No

Anteckning

filnamn och fileFilter kan inte användas samtidigt.

Exempel

{
    "name": "SFTPFileInput",
    "properties": {
        "type": "FileShare",
        "linkedServiceName": "SftpLinkedService",
        "typeProperties": {
            "folderPath": "<path to shared folder>",
            "fileName": "test.csv"
        },
        "external": true,
        "availability": {
            "frequency": "Hour",
            "interval": 1
        }
    }
}

Mer information finns i artikeln om SFTP-anslutningsprogram .

Filsystemkälla i kopieringsaktivitet

Om du kopierar data från en SFTP-källa anger du källtypen för kopieringsaktiviteten till FileSystemSource och anger följande egenskaper i källavsnittet :

Egenskap Beskrivning Tillåtna värden Obligatorisk
Rekursiv Anger om data läse rekursivt från undermapparna eller endast från den angivna mappen. True, False (standard) No

Exempel

{
    "name": "pipeline",
    "properties": {
        "activities": [{
            "name": "SFTPToBlobCopy",
            "inputs": [{
                "name": "SFTPFileInput"
            }],
            "outputs": [{
                "name": "AzureBlobOutput"
            }],
            "type": "Copy",
            "typeProperties": {
                "source": {
                    "type": "FileSystemSource"
                },
                "sink": {
                    "type": "BlobSink"
                }
            },
            "scheduler": {
                "frequency": "Hour",
                "interval": 1
            },
            "policy": {
                "concurrency": 1,
                "executionPriorityOrder": "NewestFirst",
                "retry": 1,
                "timeout": "00:05:00"
            }
        }],
        "start": "2017-02-20T18:00:00",
        "end": "2017-02-20T19:00:00"
    }
}

Mer information finns i artikeln om SFTP-anslutningsprogram .

HTTP

Länkad tjänst

Om du vill definiera en länkad HTTP-tjänst anger du typen av den länkade tjänsten till Http och anger följande egenskaper i avsnittet typeProperties :

Egenskap Beskrivning Krävs
url Bas-URL till webbservern Yes
authenticationType Anger autentiseringstypen. Tillåtna värden är: Anonymous, Basic, Digest, Windows, ClientCertificate.

Se avsnitten nedan i den här tabellen om fler egenskaper och JSON-exempel för dessa autentiseringstyper.
Yes
enableServerCertificateValidation Ange om TLS/SSL-certifikatverifiering ska aktiveras om källan är HTTPS-webbserver Nej, standardvärdet är sant
gatewayName Namnet på datahanteringsgatewayen som ska anslutas till en lokal HTTP-källa. Ja om du kopierar data från en lokal HTTP-källa.
encryptedCredential Krypterade autentiseringsuppgifter för åtkomst till HTTP-slutpunkten. Genereras automatiskt när du konfigurerar autentiseringsinformationen i kopieringsguiden eller popup-dialogrutan ClickOnce. Nej. Gäller endast när du kopierar data från en lokal HTTP-server.

Exempel: Använda Basic-, Digest- eller Windows-autentisering

Ange authenticationType som Basic, Digesteller Windowsoch ange följande egenskaper förutom de generiska HTTP-anslutningsapparna som introducerades ovan:

Egenskap Beskrivning Krävs
användarnamn Användarnamn för att få åtkomst till HTTP-slutpunkten. Yes
password Lösenord för användaren (användarnamn). Yes
{
    "name": "HttpLinkedService",
    "properties": {
        "type": "Http",
        "typeProperties": {
            "authenticationType": "basic",
            "url": "https://en.wikipedia.org/wiki/",
            "userName": "user name",
            "password": "password"
        }
    }
}

Exempel: Använda ClientCertificate-autentisering

Om du vill använda grundläggande autentisering anger du authenticationType som ClientCertificateoch anger följande egenskaper förutom de allmänna HTTP-anslutningsapparna som introducerades ovan:

Egenskap Beskrivning Krävs
embeddedCertData Det Base64-kodade innehållet i binära data i PFX-filen (Personal Information Exchange). Ange antingen embeddedCertData eller certThumbprint.
certThumbprint Tumavtrycket för certifikatet som installerades på gatewaydatorns certifikatarkiv. Gäller endast när du kopierar data från en lokal HTTP-källa. Ange antingen embeddedCertData eller certThumbprint.
password Lösenord som är associerat med certifikatet. No

Om du använder certThumbprint för autentisering och certifikatet är installerat i den lokala datorns personliga arkiv måste du ge gatewaytjänsten läsbehörighet:

  1. Starta Microsoft Management Console (MMC). Lägg till snapin-modulen Certifikat som riktar sig mot den lokala datorn.
  2. Expandera Certifikat, Personligt och klicka på Certifikat.
  3. Högerklicka på certifikatet från det personliga arkivet och välj Alla uppgifter–>Hantera privata nycklar...
  4. På fliken Säkerhet lägger du till användarkontot under vilket Data Management Gateway-värdtjänsten körs med läsbehörighet till certifikatet.

Exempel: använda klientcertifikat: Den här länkade tjänsten länkar datafabriken till en lokal HTTP-webbserver. Den använder ett klientcertifikat som är installerat på datorn med Data Management Gateway installerat.

{
    "name": "HttpLinkedService",
    "properties": {
        "type": "Http",
        "typeProperties": {
            "authenticationType": "ClientCertificate",
            "url": "https://en.wikipedia.org/wiki/",
            "certThumbprint": "thumbprint of certificate",
            "gatewayName": "gateway name"
        }
    }
}

Exempel: använda klientcertifikat i en fil

Den här länkade tjänsten länkar datafabriken till en lokal HTTP-webbserver. Den använder en klientcertifikatfil på datorn med Data Management Gateway installerad.

{
    "name": "HttpLinkedService",
    "properties": {
        "type": "Http",
        "typeProperties": {
            "authenticationType": "ClientCertificate",
            "url": "https://en.wikipedia.org/wiki/",
            "embeddedCertData": "base64 encoded cert data",
            "password": "password of cert"
        }
    }
}

Mer information finns i artikeln HTTP-anslutningsapp .

Datamängd

Om du vill definiera en HTTP-datauppsättning anger du datauppsättningens typ till Http och anger följande egenskaper i avsnittet typeProperties :

Egenskap Beskrivning Krävs
relativeUrl En relativ URL till resursen som innehåller data. När sökvägen inte anges används endast den URL som anges i definitionen för den länkade tjänsten.

Om du vill skapa en dynamisk URL kan du använda Data Factory-funktioner och systemvariabler, Exempel: "relativeUrl": "$$Text.Format('/my/report?month={0:yyyy}-{0:MM}&fmt=csv', SliceStart)".
No
requestMethod Http-metod. Tillåtna värden är GET eller POST. Nej. Standardvärdet är GET.
additionalHeaders Ytterligare HTTP-begärandehuvuden. No
requestBody Brödtext för HTTP-begäran. No
format Om du bara vill hämta data från HTTP-slutpunkten som den är utan att parsa den hoppar du över de här formatinställningarna.

Om du vill parsa HTTP-svarsinnehållet under kopiering stöds följande formattyper: TextFormat, JsonFormat, AvroFormat, OrcFormat, ParquetFormat. Mer information finns i avsnitten Textformat, Json-format, Avro-format, Orc-format och Parquet-format .
No
komprimering Ange typ och komprimeringsnivå för data. Typer som stöds är: GZip, Deflate, BZip2 och ZipDeflate. Nivåerna som stöds är: Optimala och snabbaste. Mer information finns i Fil- och komprimeringsformat i Azure Data Factory. No

Exempel: använda metoden GET (standard)

{
    "name": "HttpSourceDataInput",
    "properties": {
        "type": "Http",
        "linkedServiceName": "HttpLinkedService",
        "typeProperties": {
            "relativeUrl": "XXX/test.xml",
            "additionalHeaders": "Connection: keep-alive\nUser-Agent: Mozilla/5.0\n"
        },
        "external": true,
        "availability": {
            "frequency": "Hour",
            "interval": 1
        }
    }
}

Exempel: använda POST-metoden

{
    "name": "HttpSourceDataInput",
    "properties": {
        "type": "Http",
        "linkedServiceName": "HttpLinkedService",
        "typeProperties": {
            "relativeUrl": "/XXX/test.xml",
            "requestMethod": "Post",
            "requestBody": "body for POST HTTP request"
        },
        "external": true,
        "availability": {
            "frequency": "Hour",
            "interval": 1
        }
    }
}

Mer information finns i artikeln HTTP-anslutningsapp .

HTTP-källa i kopieringsaktivitet

Om du kopierar data från en HTTP-källa anger du källtypen för kopieringsaktiviteten till HttpSource och anger följande egenskaper i källavsnittet :

Egenskap Beskrivning Krävs
httpRequestTimeout Tidsgränsen (TimeSpan) för HTTP-begäran för att få ett svar. Det är tidsgränsen för att få ett svar, inte tidsgränsen för att läsa svarsdata. Nej. Standardvärde: 00:01:40

Exempel

{
    "name": "SamplePipeline",
    "properties": {
        "start": "2016-06-01T18:00:00",
        "end": "2016-06-01T19:00:00",
        "description": "pipeline with copy activity",
        "activities": [{
            "name": "HttpSourceToAzureBlob",
            "description": "Copy from an HTTP source to an Azure blob",
            "type": "Copy",
            "inputs": [{
                "name": "HttpSourceDataInput"
            }],
            "outputs": [{
                "name": "AzureBlobOutput"
            }],
            "typeProperties": {
                "source": {
                    "type": "HttpSource"
                },
                "sink": {
                    "type": "BlobSink"
                }
            },
            "scheduler": {
                "frequency": "Hour",
                "interval": 1
            },
            "policy": {
                "concurrency": 1,
                "executionPriorityOrder": "OldestFirst",
                "retry": 0,
                "timeout": "01:00:00"
            }
        }]
    }
}

Mer information finns i artikeln HTTP-anslutningsapp .

OData

Länkad tjänst

Om du vill definiera en länkad OData-tjänst anger du typen av länkad tjänst till OData och anger följande egenskaper i avsnittet typeProperties :

Egenskap Beskrivning Krävs
url Url för OData-tjänsten. Yes
authenticationType Typ av autentisering som används för att ansluta till OData-källan.

För OData i molnet är möjliga värden Anonyma, Grundläggande och OAuth (observera att Azure Data Factory för närvarande endast stöder Azure Active Directory-baserad OAuth).

För lokal OData är möjliga värden Anonyma, Grundläggande och Windows.
Yes
användarnamn Ange användarnamn om du använder grundläggande autentisering. Ja (endast om du använder grundläggande autentisering)
password Ange lösenord för det användarkonto som du angav för användarnamnet. Ja (endast om du använder grundläggande autentisering)
authorizedCredential Om du använder OAuth klickar du på knappen Auktorisera i guiden eller redigeraren för datafabrikskopiering och anger dina autentiseringsuppgifter. Värdet för den här egenskapen genereras automatiskt. Ja (endast om du använder OAuth-autentisering)
gatewayName Namnet på den gateway som Data Factory-tjänsten ska använda för att ansluta till den lokala OData-tjänsten. Ange endast om du kopierar data från en lokal OData-källa. No

Exempel – Använda grundläggande autentisering

{
    "name": "inputLinkedService",
    "properties": {
        "type": "OData",
        "typeProperties": {
            "url": "https://services.odata.org/OData/OData.svc",
            "authenticationType": "Basic",
            "username": "username",
            "password": "password"
        }
    }
}

Exempel – Använda anonym autentisering

{
    "name": "ODataLinkedService",
    "properties": {
        "type": "OData",
        "typeProperties": {
            "url": "https://services.odata.org/OData/OData.svc",
            "authenticationType": "Anonymous"
        }
    }
}

Exempel – Använda Windows-autentisering med åtkomst till lokal OData-källa

{
    "name": "inputLinkedService",
    "properties": {
        "type": "OData",
        "typeProperties": {
            "url": "<endpoint of on-premises OData source, for example, Dynamics CRM>",
            "authenticationType": "Windows",
            "username": "domain\\user",
            "password": "password",
            "gatewayName": "<onpremgateway>"
        }
    }
}

Exempel – Använda OAuth-autentisering med åtkomst till moln-OData-källa

{
    "name": "inputLinkedService",
    "properties":
    {
        "type": "OData",
            "typeProperties":
        {
            "url": "<endpoint of cloud OData source, for example, https://<tenant>.crm.dynamics.com/XRMServices/2011/OrganizationData.svc>",
            "authenticationType": "OAuth",
            "authorizedCredential": "<auto generated by clicking the Authorize button on UI>"
        }
    }
}

Mer information finns i artikeln om OData-anslutningsprogram .

Datamängd

Om du vill definiera en OData-datauppsättning anger du datauppsättningens typ till ODataResource och anger följande egenskaper i avsnittet typeProperties :

Egenskap Beskrivning Krävs
path Sökväg till OData-resursen No

Exempel

{
    "name": "ODataDataset",
    "properties": {
        "type": "ODataResource",
        "typeProperties": {
            "path": "Products"
        },
        "linkedServiceName": "ODataLinkedService",
        "structure": [],
        "availability": {
            "frequency": "Hour",
            "interval": 1
        },
        "external": true,
        "policy": {
            "retryInterval": "00:01:00",
            "retryTimeout": "00:10:00",
            "maximumRetry": 3
        }
    }
}

Mer information finns i artikeln om OData-anslutningsprogram .

Relationskälla i kopieringsaktivitet

Om du kopierar data från en OData-källa anger du källtypen för kopieringsaktiviteten till RelationalSource och anger följande egenskaper i källavsnittet :

Egenskap Beskrivning Exempel Obligatorisk
DocumentDB Använd den anpassade frågan för att läsa data. "?$select=Name, Description&$top=5" No

Exempel

{
    "name": "CopyODataToBlob",
    "properties": {
        "description": "pipeline for copy activity",
        "activities": [{
            "type": "Copy",
            "typeProperties": {
                "source": {
                    "type": "RelationalSource",
                    "query": "?$select=Name, Description&$top=5"
                },
                "sink": {
                    "type": "BlobSink",
                    "writeBatchSize": 0,
                    "writeBatchTimeout": "00:00:00"
                }
            },
            "inputs": [{
                "name": "ODataDataSet"
            }],
            "outputs": [{
                "name": "AzureBlobODataDataSet"
            }],
            "policy": {
                "timeout": "01:00:00",
                "concurrency": 1
            },
            "scheduler": {
                "frequency": "Hour",
                "interval": 1
            },
            "name": "ODataToBlob"
        }],
        "start": "2017-02-01T18:00:00",
        "end": "2017-02-03T19:00:00"
    }
}

Mer information finns i artikeln om OData-anslutningsprogram .

ODBC

Länkad tjänst

Om du vill definiera en länkad ODBC-tjänst anger du typen för den länkade tjänsten till OnPremisesOdbc och anger följande egenskaper i avsnittet typeProperties :

Egenskap Beskrivning Krävs
Connectionstring Den del av anslutningssträngen som inte har åtkomst till autentiseringsuppgifter och en valfri krypterad autentiseringsuppgift. Se exempel i följande avsnitt. Yes
credential Åtkomstautentiseringsdelen i anslutningssträngen som anges i drivrutinsspecifikt egenskapsvärdeformat. Exempel: “Uid=<user ID>;Pwd=<password>;RefreshToken=<secret refresh token>;”. No
authenticationType Typ av autentisering som används för att ansluta till ODBC-datalagret. Möjliga värden är: Anonym och Grundläggande. Yes
användarnamn Ange användarnamn om du använder grundläggande autentisering. No
password Ange lösenord för det användarkonto som du angav för användarnamnet. No
gatewayName Namnet på den gateway som Data Factory-tjänsten ska använda för att ansluta till ODBC-datalagret. Yes

Exempel – Använda grundläggande autentisering

{
    "name": "ODBCLinkedService",
    "properties": {
        "type": "OnPremisesOdbc",
        "typeProperties": {
            "authenticationType": "Basic",
            "connectionString": "Driver={SQL Server};Server=Server.database.windows.net; Database=TestDatabase;",
            "userName": "username",
            "password": "password",
            "gatewayName": "<onpremgateway>"
        }
    }
}

Exempel – Använda grundläggande autentisering med krypterade autentiseringsuppgifter

Du kan kryptera autentiseringsuppgifterna med cmdleten New-AzDataFactoryEncryptValue .

{
    "name": "ODBCLinkedService",
    "properties": {
        "type": "OnPremisesOdbc",
        "typeProperties": {
            "authenticationType": "Basic",
            "connectionString": "Driver={SQL Server};Server=myserver.database.windows.net; Database=TestDatabase;;EncryptedCredential=eyJDb25uZWN0...........................",
            "gatewayName": "<onpremgateway>"
        }
    }
}

Exempel: Använda anonym autentisering

{
    "name": "ODBCLinkedService",
    "properties": {
        "type": "OnPremisesOdbc",
        "typeProperties": {
            "authenticationType": "Anonymous",
            "connectionString": "Driver={SQL Server};Server={servername}.database.windows.net; Database=TestDatabase;",
            "credential": "UID={uid};PWD={pwd}",
            "gatewayName": "<onpremgateway>"
        }
    }
}

Mer information finns i artikeln om ODBC-anslutningsprogram .

Datamängd

Om du vill definiera en ODBC-datauppsättning anger du datauppsättningens typ till RelationalTable och anger följande egenskaper i avsnittet typeProperties :

Egenskap Beskrivning Krävs
tableName Namnet på tabellen i ODBC-datalagret. Yes

Exempel

{
    "name": "ODBCDataSet",
    "properties": {
        "type": "RelationalTable",
        "linkedServiceName": "ODBCLinkedService",
        "typeProperties": {},
        "availability": {
            "frequency": "Hour",
            "interval": 1
        },
        "external": true,
        "policy": {
            "externalData": {
                "retryInterval": "00:01:00",
                "retryTimeout": "00:10:00",
                "maximumRetry": 3
            }
        }
    }
}

Mer information finns i artikeln om ODBC-anslutningsprogram .

Relationskälla i kopieringsaktivitet

Om du kopierar data från ett ODBC-datalager anger du källtypen för kopieringsaktiviteten till RelationalSource och anger följande egenskaper i källavsnittet :

Egenskap Beskrivning Tillåtna värden Obligatorisk
DocumentDB Använd den anpassade frågan för att läsa data. SQL-frågesträng. Exempel: select * from MyTable. Yes

Exempel

{
    "name": "CopyODBCToBlob",
    "properties": {
        "description": "pipeline for copy activity",
        "activities": [{
            "type": "Copy",
            "typeProperties": {
                "source": {
                    "type": "RelationalSource",
                    "query": "$$Text.Format('select * from MyTable where timestamp >= \\'{0:yyyy-MM-ddTHH:mm:ss}\\' AND timestamp < \\'{1:yyyy-MM-ddTHH:mm:ss}\\'', WindowStart, WindowEnd)"
                },
                "sink": {
                    "type": "BlobSink",
                    "writeBatchSize": 0,
                    "writeBatchTimeout": "00:00:00"
                }
            },
            "inputs": [{
                "name": "OdbcDataSet"
            }],
            "outputs": [{
                "name": "AzureBlobOdbcDataSet"
            }],
            "policy": {
                "timeout": "01:00:00",
                "concurrency": 1
            },
            "scheduler": {
                "frequency": "Hour",
                "interval": 1
            },
            "name": "OdbcToBlob"
        }],
        "start": "2016-06-01T18:00:00",
        "end": "2016-06-01T19:00:00"
    }
}

Mer information finns i artikeln om ODBC-anslutningsprogram .

Salesforce

Länkad tjänst

Om du vill definiera en länkad Salesforce-tjänst anger du typen för den länkade tjänsten till Salesforce och anger följande egenskaper i avsnittet typeProperties :

Egenskap Beskrivning Krävs
environmentUrl Ange URL:en för Salesforce-instansen.

- Standardvärdet är "https://login.salesforce.com".
– Om du vill kopiera data från sandbox-miljön anger du "https://test.salesforce.com".
– Om du vill kopiera data från en anpassad domän anger du till exempel "https://[domain].my.salesforce.com".
No
användarnamn Ange ett användarnamn för användarkontot. Yes
password Ange ett lösenord för användarkontot. Yes
securityToken Ange en säkerhetstoken för användarkontot. Se Hämta säkerhetstoken för instruktioner om hur du återställer/hämtar en säkerhetstoken. Mer information om säkerhetstoken i allmänhet finns i Säkerhet och API:et. Yes

Exempel

{
    "name": "SalesforceLinkedService",
    "properties": {
        "type": "Salesforce",
        "typeProperties": {
            "username": "<user name>",
            "password": "<password>",
            "securityToken": "<security token>"
        }
    }
}

Mer information finns i artikeln Salesforce Connector .

Datamängd

Om du vill definiera en Salesforce-datauppsättning anger du datauppsättningens typ till RelationalTable och anger följande egenskaper i avsnittet typeProperties :

Egenskap Beskrivning Krävs
tableName Namnet på tabellen i Salesforce. Nej (om en fråga med RelationalSource har angetts)

Exempel

{
    "name": "SalesforceInput",
    "properties": {
        "linkedServiceName": "SalesforceLinkedService",
        "type": "RelationalTable",
        "typeProperties": {
            "tableName": "AllDataType__c"
        },
        "availability": {
            "frequency": "Hour",
            "interval": 1
        },
        "external": true,
        "policy": {
            "externalData": {
                "retryInterval": "00:01:00",
                "retryTimeout": "00:10:00",
                "maximumRetry": 3
            }
        }
    }
}

Mer information finns i artikeln Salesforce Connector .

Relationskälla i kopieringsaktivitet

Om du kopierar data från Salesforce anger du källtypen för kopieringsaktiviteten till RelationalSource och anger följande egenskaper i källavsnittet :

Egenskap Beskrivning Tillåtna värden Obligatorisk
DocumentDB Använd den anpassade frågan för att läsa data. En SQL-92-fråga eller EN SOQL-fråga (Salesforce Object Query Language). Exempel: select * from MyTable__c. Nej (om tableName för datauppsättningen har angetts )

Exempel

{
    "name": "SamplePipeline",
    "properties": {
        "start": "2016-06-01T18:00:00",
        "end": "2016-06-01T19:00:00",
        "description": "pipeline with copy activity",
        "activities": [{
            "name": "SalesforceToAzureBlob",
            "description": "Copy from Salesforce to an Azure blob",
            "type": "Copy",
            "inputs": [{
                "name": "SalesforceInput"
            }],
            "outputs": [{
                "name": "AzureBlobOutput"
            }],
            "typeProperties": {
                "source": {
                    "type": "RelationalSource",
                    "query": "SELECT Id, Col_AutoNumber__c, Col_Checkbox__c, Col_Currency__c, Col_Date__c, Col_DateTime__c, Col_Email__c, Col_Number__c, Col_Percent__c, Col_Phone__c, Col_Picklist__c, Col_Picklist_MultiSelect__c, Col_Text__c, Col_Text_Area__c, Col_Text_AreaLong__c, Col_Text_AreaRich__c, Col_URL__c, Col_Text_Encrypt__c, Col_Lookup__c FROM AllDataType__c"
                },
                "sink": {
                    "type": "BlobSink"
                }
            },
            "scheduler": {
                "frequency": "Hour",
                "interval": 1
            },
            "policy": {
                "concurrency": 1,
                "executionPriorityOrder": "OldestFirst",
                "retry": 0,
                "timeout": "01:00:00"
            }
        }]
    }
}

Viktigt

Den "__c" delen av API-namnet behövs för alla anpassade objekt.

Mer information finns i artikeln Salesforce Connector .

Webbdata

Länkad tjänst

Om du vill definiera en länkad webbtjänst anger du typen av länkad tjänst till Webben och anger följande egenskaper i avsnittet typeProperties :

Egenskap Beskrivning Krävs
URL URL till webbkällan Yes
authenticationType Anonym. Yes

Exempel

{
    "name": "web",
    "properties": {
        "type": "Web",
        "typeProperties": {
            "authenticationType": "Anonymous",
            "url": "https://en.wikipedia.org/wiki/"
        }
    }
}

Mer information finns i artikeln webbtabellanslutningsprogram .

Datamängd

Om du vill definiera en webbdatauppsättning anger du datauppsättningens typ till WebTable och anger följande egenskaper i avsnittet typeProperties :

Egenskap Beskrivning Krävs
typ datauppsättningens typ. måste anges till WebTable Yes
path En relativ URL till resursen som innehåller tabellen. Nej. När sökvägen inte anges används endast den URL som anges i definitionen för den länkade tjänsten.
index Indexet för tabellen i resursen. Se Hämta index för en tabell i ett HTML-sidavsnitt för steg för att hämta index för en tabell på en HTML-sida. Yes

Exempel

{
    "name": "WebTableInput",
    "properties": {
        "type": "WebTable",
        "linkedServiceName": "WebLinkedService",
        "typeProperties": {
            "index": 1,
            "path": "AFI's_100_Years...100_Movies"
        },
        "external": true,
        "availability": {
            "frequency": "Hour",
            "interval": 1
        }
    }
}

Mer information finns i artikeln webbtabellanslutningsprogram .

Webbkälla i kopieringsaktivitet

Om du kopierar data från en webbtabell anger du källtypen för kopieringsaktiviteten till WebSource. När källan i kopieringsaktiviteten är av typen WebSource stöds för närvarande inga ytterligare egenskaper.

Exempel

{
    "name": "SamplePipeline",
    "properties": {
        "start": "2016-06-01T18:00:00",
        "end": "2016-06-01T19:00:00",
        "description": "pipeline with copy activity",
        "activities": [{
            "name": "WebTableToAzureBlob",
            "description": "Copy from a Web table to an Azure blob",
            "type": "Copy",
            "inputs": [{
                "name": "WebTableInput"
            }],
            "outputs": [{
                "name": "AzureBlobOutput"
            }],
            "typeProperties": {
                "source": {
                    "type": "WebSource"
                },
                "sink": {
                    "type": "BlobSink"
                }
            },
            "scheduler": {
                "frequency": "Hour",
                "interval": 1
            },
            "policy": {
                "concurrency": 1,
                "executionPriorityOrder": "OldestFirst",
                "retry": 0,
                "timeout": "01:00:00"
            }
        }]
    }
}

Mer information finns i artikeln webbtabellanslutningsprogram .

BERÄKNINGSMILJÖER

I följande tabell visas de beräkningsmiljöer som stöds av Data Factory och de transformeringsaktiviteter som kan köras på dem. Klicka på länken för den beräkning som du är intresserad av för att se JSON-scheman för länkad tjänst för att länka den till en datafabrik.

Compute-miljö Aktiviteter
HDInsight-kluster på begäran eller ditt eget HDInsight-kluster Anpassad .NET-aktivitet, Hive-aktivitet, Grisaktivitet, MapReduce-aktivitet, Hadoop-strömningsaktivitet, Spark-aktivitet
Azure Batch .NET-anpassad aktivitet
Machine Learning Studio (klassisk) ML Studio (klassisk) Batch-körningsaktivitet, ML Studio (klassisk) Uppdatera resursaktivitet
Azure Data Lake Analytics Data Lake Analytics U-SQL
Azure SQL Database, Azure Synapse Analytics, SQL Server Lagrad procedur

Azure HDInsight-kluster på begäran

Azure Data Factory-tjänsten kan automatiskt skapa ett Windows/Linux-baserat HDInsight-kluster på begäran för att bearbeta data. Klustret skapas i samma region som lagringskontot (egenskapen linkedServiceName i JSON) som är associerat med klustret. Du kan köra följande transformeringsaktiviteter på den här länkade tjänsten: anpassad .NET-aktivitet, Hive-aktivitet, Pig-aktivitet, MapReduce-aktivitet, Hadoop-strömningsaktivitet, Spark-aktivitet.

Länkad tjänst

Följande tabell innehåller beskrivningar av de egenskaper som används i Azure JSON-definitionen för en länkad HDInsight-tjänst på begäran.

Egenskap Beskrivning Krävs
typ Typegenskapen ska anges till HDInsightOnDemand. Yes
clusterSize Antal arbets-/datanoder i klustret. HDInsight-klustret skapas med 2 huvudnoder tillsammans med antalet arbetsnoder som du anger för den här egenskapen. Noderna är av storlek Standard_D3 som har 4 kärnor, så ett kluster med fyra arbetsnoder tar 24 kärnor (4*4 = 16 kärnor för arbetsnoder, plus 2*4 = 8 kärnor för huvudnoder). Mer information om den Standard_D3 nivån finns i Skapa Linux-baserade Hadoop-kluster i HDInsight . Yes
timetolive Tillåten inaktivitetstid för HDInsight-klustret på begäran. Anger hur länge HDInsight-klustret på begäran håller sig vid liv efter slutförandet av en aktivitetskörning om det inte finns några andra aktiva jobb i klustret.

Om en aktivitetskörning till exempel tar 6 minuter och timetolive har angetts till 5 minuter förblir klustret aktivt i 5 minuter efter de 6 minuterna av bearbetningen av aktivitetskörningen. Om en annan aktivitetskörning körs med fönstret på 6 minuter bearbetas den av samma kluster.

Att skapa ett HDInsight-kluster på begäran är en dyr åtgärd (kan ta en stund), så använd den här inställningen efter behov för att förbättra prestandan för en datafabrik genom att återanvända ett HDInsight-kluster på begäran.

Om du anger timetolive-värdet till 0 tas klustret bort så snart aktiviteten körs i bearbetad. Om du å andra sidan anger ett högt värde kan klustret vara inaktivt i onödan, vilket resulterar i höga kostnader. Därför är det viktigt att du anger rätt värde baserat på dina behov.

Flera pipelines kan dela samma instans av HDInsight-klustret på begäran om egenskapsvärdet timetolive har angetts korrekt
Yes
version Version av HDInsight-klustret. Mer information finns i HDInsight-versioner som stöds i Azure Data Factory. No
linkedServiceName Länkad Azure Storage-tjänst som ska användas av klustret på begäran för lagring och bearbetning av data.

För närvarande kan du inte skapa ett HDInsight-kluster på begäran som använder en Azure Data Lake Store som lagring. Om du vill lagra resultatdata från HDInsight-bearbetning i en Azure Data Lake Store använder du en kopieringsaktivitet för att kopiera data från Azure Blob Storage till Azure Data Lake Store.

Yes
additionalLinkedServiceNames Anger ytterligare lagringskonton för den länkade HDInsight-tjänsten så att Data Factory-tjänsten kan registrera dem åt dig. No
osType Typ av operativsystem. Tillåtna värden är: Windows (standard) och Linux No
hcatalogLinkedServiceName Namnet på den länkade Azure SQL-tjänsten som pekar på HCatalog-databasen. HDInsight-klustret på begäran skapas med hjälp av Azure SQL Database som metaarkiv. No

JSON-exempel

Följande JSON definierar en Linux-baserad HDInsight-länkad tjänst på begäran. Data Factory-tjänsten skapar automatiskt ett Linux-baserat HDInsight-kluster när du bearbetar en datasektor.

{
    "name": "HDInsightOnDemandLinkedService",
    "properties": {
        "type": "HDInsightOnDemand",
        "typeProperties": {
            "version": "3.5",
            "clusterSize": 1,
            "timeToLive": "00:05:00",
            "osType": "Linux",
            "linkedServiceName": "StorageLinkedService"
        }
    }
}

Mer information finns i artikeln Compute-länkade tjänster .

Befintligt Azure HDInsight-kluster

Du kan skapa en länkad Azure HDInsight-tjänst för att registrera ditt eget HDInsight-kluster med Data Factory. Du kan köra följande datatransformeringsaktiviteter på den här länkade tjänsten: Anpassad .NET-aktivitet, Hive-aktivitet, Pig-aktivitet, MapReduce-aktivitet, Hadoop-strömningsaktivitet, Spark-aktivitet.

Länkad tjänst

Följande tabell innehåller beskrivningar av de egenskaper som används i Azure JSON-definitionen för en länkad Azure HDInsight-tjänst.

Egenskap Beskrivning Krävs
typ Typegenskapen ska vara inställd på HDInsight. Yes
clusterUri URI för HDInsight-klustret. Yes
användarnamn Ange namnet på den användare som ska användas för att ansluta till ett befintligt HDInsight-kluster. Yes
password Ange lösenordet för användarkontot. Yes
linkedServiceName Namnet på den länkade Azure Storage-tjänsten som refererar till Azure Blob Storage som används av HDInsight-klustret.

För närvarande kan du inte ange en länkad Azure Data Lake Store-tjänst för den här egenskapen. Du kan komma åt data i Azure Data Lake Store från Hive/Pig-skript om HDInsight-klustret har åtkomst till Data Lake Store.

Yes

Versioner av HDInsight-kluster som stöds finns i HDInsight-versioner som stöds.

JSON-exempel

{
    "name": "HDInsightLinkedService",
    "properties": {
        "type": "HDInsight",
        "typeProperties": {
            "clusterUri": " https://<hdinsightclustername>.azurehdinsight.net/",
            "userName": "admin",
            "password": "<password>",
            "linkedServiceName": "MyHDInsightStoragelinkedService"
        }
    }
}

Azure Batch

Du kan skapa en länkad Azure Batch-tjänst för att registrera en Batch-pool med virtuella datorer (VM) med en datafabrik. Du kan köra anpassade .NET-aktiviteter med antingen Azure Batch eller Azure HDInsight. Du kan köra en anpassad .NET-aktivitet på den här länkade tjänsten.

Länkad tjänst

Följande tabell innehåller beskrivningar av de egenskaper som används i Azure JSON-definitionen för en länkad Azure Batch-tjänst.

Egenskap Beskrivning Krävs
typ Typegenskapen ska anges till AzureBatch. Yes
accountName Namnet på Azure Batch-kontot. Yes
Accesskey Åtkomstnyckel för Azure Batch-kontot. Yes
poolName Namnet på poolen med virtuella datorer. Yes
linkedServiceName Namnet på den länkade Azure Storage-tjänsten som är associerad med den här länkade Azure Batch-tjänsten. Den här länkade tjänsten används för mellanlagring av filer som krävs för att köra aktiviteten och lagra aktivitetskörningsloggarna. Yes

JSON-exempel

{
    "name": "AzureBatchLinkedService",
    "properties": {
        "type": "AzureBatch",
        "typeProperties": {
            "accountName": "<Azure Batch account name>",
            "accessKey": "<Azure Batch account key>",
            "poolName": "<Azure Batch pool name>",
            "linkedServiceName": "<Specify associated storage linked service reference here>"
        }
    }
}

ML Studio (klassisk)

Viktigt

Stödet för Machine Learning Studio (klassisk) upphör den 31 augusti 2024. Vi rekommenderar att du byter till Azure Machine Learning innan dess.

Från och med den 1 december 2021 kommer du inte att kunna skapa nya Machine Learning Studio-resurser (klassiska) (arbetsyta och webbtjänstplan). Till och med den 31 augusti 2024 kan du fortsätta att använda befintliga Machine Learning Studio-experiment (klassiska) och webbtjänster.

Dokumentationen om ML Studio (klassisk) håller på att dras tillbaka och kanske inte uppdateras i framtiden.

Du skapar en länkad ML Studio-tjänst (klassisk) för att registrera en Slutpunkt för batchbedömning i Studio (klassisk) med en datafabrik. Två datatransformeringsaktiviteter som kan köras på den här länkade tjänsten: ML Studio (klassisk) Batch-körningsaktivitet, ML Studio -uppdateringsresursaktivitet (klassisk).

Länkad tjänst

Följande tabell innehåller beskrivningar av de egenskaper som används i Azure JSON-definitionen för en länkad Studio-tjänst (klassisk).

Egenskap Beskrivning Krävs
Typ Typegenskapen ska anges till: AzureML. Yes
mlEndpoint Batchbedömnings-URL:en. Yes
apiKey Den publicerade arbetsytemodellens API. Yes

JSON-exempel

{
    "name": "AzureMLLinkedService",
    "properties": {
        "type": "AzureML",
        "typeProperties": {
            "mlEndpoint": "https://[batch scoring endpoint]/jobs",
            "apiKey": "<apikey>"
        }
    }
}

Azure Data Lake Analytics

Du skapar en länkad Azure Data Lake Analytics-tjänst för att länka en Azure Data Lake Analytics-beräkningstjänst till en Azure-datafabrik innan du använder Data Lake Analytics U-SQL-aktiviteten i en pipeline.

Länkad tjänst

Följande tabell innehåller beskrivningar av de egenskaper som används i JSON-definitionen för en länkad Azure Data Lake Analytics-tjänst.

Egenskap Beskrivning Krävs
Typ Typegenskapen ska anges till: AzureDataLakeAnalytics. Yes
accountName Azure Data Lake Analytics-kontonamn. Yes
dataLakeAnalyticsUri Azure Data Lake Analytics-URI. No
auktorisering Auktoriseringskoden hämtas automatiskt när du har klickat på knappen Auktorisera i Data Factory-redigeraren och slutför OAuth-inloggningen. Yes
subscriptionId Azure-prenumerations-ID Nej (Om det inte anges används en prenumeration på datafabriken).
resourceGroupName Azure-resursgruppsnamn Nej (om det inte anges används resursgruppen för datafabriken).
Sessionid sessions-ID från OAuth-auktoriseringssessionen. Varje sessions-ID är unikt och kan bara användas en gång. När du använder Data Factory-redigeraren genereras det här ID:t automatiskt. Yes

JSON-exempel

I följande exempel finns JSON-definition för en länkad Azure Data Lake Analytics-tjänst.

{
    "name": "AzureDataLakeAnalyticsLinkedService",
    "properties": {
        "type": "AzureDataLakeAnalytics",
        "typeProperties": {
            "accountName": "<account name>",
            "dataLakeAnalyticsUri": "datalakeanalyticscompute.net",
            "authorization": "<authcode>",
            "sessionId": "<session ID>",
            "subscriptionId": "<subscription id>",
            "resourceGroupName": "<resource group name>"
        }
    }
}

Lagrad SQL Server-procedur

Du skapar en länkad SQL Server-tjänst och använder den med aktiviteten Lagrad procedur för att anropa en lagrad procedur från en Data Factory-pipeline.

Länkad tjänst

Du skapar en länkad tjänst av typen OnPremisesSqlServer för att länka en SQL Server-databas till en datafabrik. Följande tabell innehåller en beskrivning av JSON-element som är specifika för den länkade SQL Server-tjänsten.

Följande tabell innehåller en beskrivning av JSON-element som är specifika för den länkade SQL Server-tjänsten.

Egenskap Beskrivning Krävs
typ Typegenskapen ska anges till: OnPremisesSqlServer. Yes
Connectionstring Ange anslutningSträngsinformation som behövs för att ansluta till SQL Server-databasen med antingen SQL-autentisering eller Windows-autentisering. Yes
gatewayName Namnet på den gateway som Data Factory-tjänsten ska använda för att ansluta till SQL Server-databasen. Yes
användarnamn Ange användarnamn om du använder Windows-autentisering. Exempel: domännamn\användarnamn. No
password Ange lösenord för det användarkonto som du angav för användarnamnet. No

Du kan kryptera autentiseringsuppgifter med cmdleten New-AzDataFactoryEncryptValue och använda dem i anslutningssträngen enligt följande exempel (egenskapen EncryptedCredential ):

"connectionString": "Data Source=<servername>;Initial Catalog=<databasename>;Integrated Security=True;EncryptedCredential=<encrypted credential>",

Exempel: JSON för att använda SQL-autentisering

{
    "name": "MyOnPremisesSQLDB",
    "properties": {
        "type": "OnPremisesSqlServer",
        "typeProperties": {
            "connectionString": "Data Source=<servername>;Initial Catalog=MarketingCampaigns;Integrated Security=False;User ID=<username>;Password=<password>;",
            "gatewayName": "<gateway name>"
        }
    }
}

Exempel: JSON för att använda Windows-autentisering

Om användarnamn och lösenord anges använder gatewayen dem för att personifiera det angivna användarkontot för att ansluta till SQL Server-databasen. Annars ansluter gatewayen till SQL Server direkt med säkerhetskontexten för Gateway (dess startkonto).

{
    "Name": " MyOnPremisesSQLDB",
    "Properties": {
        "type": "OnPremisesSqlServer",
        "typeProperties": {
            "ConnectionString": "Data Source=<servername>;Initial Catalog=MarketingCampaigns;Integrated Security=True;",
            "username": "<domain\\username>",
            "password": "<password>",
            "gatewayName": "<gateway name>"
        }
    }
}

Mer information finns i artikeln om SQL Server-anslutningsprogram .

DATATRANSFORMERINGSAKTIVITETER

Aktivitet Description
HDInsight Hive-aktivitet HDInsight Hive-aktiviteten i en Data Factory-pipeline kör Hive-frågor på egen hand eller på begäran Windows/Linux-baserat HDInsight-kluster.
HDInsight Pig-aktivitet HDInsight Pig-aktiviteten i en Data Factory-pipeline kör Pig-frågor på egen hand eller på begäran Windows-/Linux-baserat HDInsight-kluster.
HDInsight MapReduce-aktivitet AKTIVITETEN HDInsight MapReduce i en Data Factory-pipeline kör MapReduce-program på egen hand eller på begäran Windows/Linux-baserat HDInsight-kluster.
HDInsight-strömningsaktivitet HDInsight-direktuppspelningsaktiviteten i en Data Factory-pipeline kör Hadoop Streaming-program på ditt eget eller på begäran Windows-/Linux-baserade HDInsight-kluster.
HDInsight Apache Spark-aktivitet HDInsight Spark-aktiviteten i en Data Factory-pipeline kör Spark-program i ditt eget HDInsight-kluster.
ML Studio (klassisk) Batch-körningsaktivitet Med Azure Data Factory kan du enkelt skapa pipelines som använder en publicerad Studio-webbtjänst (klassisk) för förutsägelseanalys. Med batchkörningsaktiviteten i en Azure Data Factory-pipeline kan du anropa en Studio-webbtjänst (klassisk) för att göra förutsägelser om data i batch.
ML Studio (klassisk) Uppdatera resursaktivitet Med tiden måste förutsägelsemodellerna i ML Studio-bedömningsexperimenten (klassisk) tränas om med hjälp av nya indatauppsättningar. När du är klar med omträningen vill du uppdatera bedömningswebbtjänsten med den omtränad maskininlärningsmodellen. Du kan använda uppdatera resursaktiviteten för att uppdatera webbtjänsten med den nyligen tränade modellen.
Lagrad proceduraktivitet Du kan använda aktiviteten Lagrad procedur i en Data Factory-pipeline för att anropa en lagrad procedur i något av följande datalager: Azure SQL Database, Azure Synapse Analytics, SQL Server Database i företaget eller en virtuell Azure-dator.
U-SQL-aktivitet för Data Lake Analytics Data Lake Analytics U-SQL Activity kör ett U-SQL-skript i ett Azure Data Lake Analytics-kluster.
.NET-anpassad aktivitet Om du behöver transformera data på ett sätt som inte stöds av Data Factory kan du skapa en anpassad aktivitet med din egen databearbetningslogik och använda aktiviteten i pipelinen. Du kan konfigurera den anpassade .NET-aktiviteten så att den körs med antingen en Azure Batch-tjänst eller ett Azure HDInsight-kluster.

HDInsight Hive-aktivitet

Du kan ange följande egenskaper i en Hive Activity JSON-definition. Typegenskapen för aktiviteten måste vara: HDInsightHive. Du måste först skapa en länkad HDInsight-tjänst och ange namnet på den som ett värde för egenskapen linkedServiceName . Följande egenskaper stöds i avsnittet typeProperties när du anger typen av aktivitet till HDInsightHive:

Egenskap Beskrivning Krävs
skript Ange Hive-skriptet infogat No
skriptsökväg Lagra Hive-skriptet i en Azure-bloblagring och ange sökvägen till filen. Använd egenskapen "script" eller "scriptPath". Båda kan inte användas tillsammans. Filnamnet är skiftlägeskänsligt. No
Definierar Ange parametrar som nyckel/värde-par för referens i Hive-skriptet med hjälp av "hiveconf" No

Dessa typegenskaper är specifika för Hive-aktiviteten. Andra egenskaper (utanför avsnittet typeProperties) stöds för alla aktiviteter.

JSON-exempel

Följande JSON definierar en HDInsight Hive-aktivitet i en pipeline.

{
    "name": "Hive Activity",
    "description": "description",
    "type": "HDInsightHive",
    "inputs": [
      {
        "name": "input tables"
      }
    ],
    "outputs": [
      {
        "name": "output tables"
      }
    ],
    "linkedServiceName": "MyHDInsightLinkedService",
    "typeProperties": {
      "script": "Hive script",
      "scriptPath": "<pathtotheHivescriptfileinAzureblobstorage>",
      "defines": {
        "param1": "param1Value"
      }
    },
   "scheduler": {
      "frequency": "Day",
      "interval": 1
    }
}

Mer information finns i artikeln Hive-aktivitet .

HDInsight-piggningsåtgärd

Du kan ange följande egenskaper i en Pig Activity JSON-definition. Typegenskapen för aktiviteten måste vara: HDInsightPig. Du måste först skapa en länkad HDInsight-tjänst och ange namnet på den som ett värde för egenskapen linkedServiceName . Följande egenskaper stöds i avsnittet typeProperties när du anger typen av aktivitet till HDInsightPig:

Egenskap Beskrivning Krävs
skript Ange Pig-skriptet infogat No
skriptsökväg Lagra Pig-skriptet i en Azure Blob Storage och ange sökvägen till filen. Använd egenskapen "script" eller "scriptPath". Båda kan inte användas tillsammans. Filnamnet är skiftlägeskänsligt. No
Definierar Ange parametrar som nyckel/värde-par för referens i Pig-skriptet No

Dessa typegenskaper är specifika för Pig-aktiviteten. Andra egenskaper (utanför avsnittet typeProperties) stöds för alla aktiviteter.

JSON-exempel

{
    "name": "HiveActivitySamplePipeline",
      "properties": {
    "activities": [
        {
            "name": "Pig Activity",
            "description": "description",
            "type": "HDInsightPig",
            "inputs": [
                  {
                    "name": "input tables"
                  }
            ],
            "outputs": [
                  {
                    "name": "output tables"
                  }
            ],
            "linkedServiceName": "MyHDInsightLinkedService",
            "typeProperties": {
                  "script": "Pig script",
                  "scriptPath": "<pathtothePigscriptfileinAzureblobstorage>",
                  "defines": {
                    "param1": "param1Value"
                  }
            },
               "scheduler": {
                  "frequency": "Day",
                  "interval": 1
            }
          }
    ]
  }
}

Mer information finns i artikeln Pig Activity.

HDInsight MapReduce-aktivitet

Du kan ange följande egenskaper i en MapReduce Activity JSON-definition. Typegenskapen för aktiviteten måste vara: HDInsightMapReduce. Du måste först skapa en länkad HDInsight-tjänst och ange namnet på den som ett värde för egenskapen linkedServiceName . Följande egenskaper stöds i avsnittet typeProperties när du anger typen av aktivitet till HDInsightMapReduce:

Egenskap Beskrivning Krävs
jarLinkedService Namnet på den länkade tjänsten för Azure Storage som innehåller JAR-filen. Yes
jarFilePath Sökväg till JAR-filen i Azure Storage. Yes
Classname Namnet på huvudklassen i JAR-filen. Yes
Argument En lista med kommaavgränsade argument för MapReduce-programmet. Vid körning visas några extra argument (till exempel mapreduce.job.tags) från MapReduce-ramverket. Om du vill särskilja dina argument med MapReduce-argumenten bör du överväga att använda både alternativ och värde som argument som argument som visas i följande exempel (-s, --input, --output osv., är alternativ omedelbart följt av deras värden) No

JSON-exempel

{
    "name": "MahoutMapReduceSamplePipeline",
    "properties": {
        "description": "Sample Pipeline to Run a Mahout Custom Map Reduce Jar. This job calculates an Item Similarity Matrix to determine the similarity between two items",
        "activities": [
            {
                "type": "HDInsightMapReduce",
                "typeProperties": {
                    "className": "org.apache.mahout.cf.taste.hadoop.similarity.item.ItemSimilarityJob",
                    "jarFilePath": "adfsamples/Mahout/jars/mahout-examples-0.9.0.2.2.7.1-34.jar",
                    "jarLinkedService": "StorageLinkedService",
                    "arguments": ["-s", "SIMILARITY_LOGLIKELIHOOD", "--input", "wasb://adfsamples@spestore.blob.core.windows.net/Mahout/input", "--output", "wasb://adfsamples@spestore.blob.core.windows.net/Mahout/output/", "--maxSimilaritiesPerItem", "500", "--tempDir", "wasb://adfsamples@spestore.blob.core.windows.net/Mahout/temp/mahout"]
                },
                "inputs": [
                    {
                        "name": "MahoutInput"
                    }
                ],
                "outputs": [
                    {
                        "name": "MahoutOutput"
                    }
                ],
                "policy": {
                    "timeout": "01:00:00",
                    "concurrency": 1,
                    "retry": 3
                },
                "scheduler": {
                    "frequency": "Hour",
                    "interval": 1
                },
                "name": "MahoutActivity",
                "description": "Custom Map Reduce to generate Mahout result",
                "linkedServiceName": "HDInsightLinkedService"
            }
        ],
        "start": "2017-01-03T00:00:00",
        "end": "2017-01-04T00:00:00"
    }
}

Mer information finns i artikeln MapReduce-aktivitet .

HDInsight-strömningsaktivitet

Du kan ange följande egenskaper i en JSON-definition för Hadoop Streaming Activity. Typegenskapen för aktiviteten måste vara: HDInsightStreaming. Du måste först skapa en länkad HDInsight-tjänst och ange namnet på den som ett värde för egenskapen linkedServiceName . Följande egenskaper stöds i avsnittet typeProperties när du anger typen av aktivitet till HDInsightStreaming:

Egenskap Beskrivning
Mapper Namnet på den körbara mappningsappen. I exemplet är cat.exe den körbara mappningskomponenten.
Reducering Namnet på den körbara reducern. I exemplet är wc.exe den körbara reducern.
indata Indatafil (inklusive plats) för mapparen. I exemplet: "wasb://adfsample@<account name>.blob.core.windows.net/example/data/gutenberg/davinci.txt": adfsample är blobcontainern, example/data/Gutenberg är mappen och davinci.txt är bloben.
utdata Utdatafil (inklusive plats) för reduceraren. Utdata från Hadoop Streaming-jobbet skrivs till den plats som anges för den här egenskapen.
filePaths Sökvägar för mappnings- och reducer-körbara filer. I exemplet: "adfsample/example/apps/wc.exe" är adfsample blobcontainern, example/apps är mappen och wc.exe är den körbara filen.
fileLinkedService Länkad Azure Storage-tjänst som representerar Azure Storage som innehåller de filer som anges i avsnittet filePaths.
Argument En lista med kommaavgränsade argument för MapReduce-programmet. Vid körning visas några extra argument (till exempel mapreduce.job.tags) från MapReduce-ramverket. Om du vill särskilja dina argument med MapReduce-argumenten bör du överväga att använda både alternativ och värde som argument som argument som visas i följande exempel (-s, --input, --output osv., är alternativ omedelbart följt av deras värden)
getDebugInfo Ett valfritt element. När den är inställd på Fel laddas loggarna bara ned vid fel. När den är inställd på Alla laddas loggarna alltid ned oavsett körningsstatus.

Anteckning

Du måste ange en utdatauppsättning för hadoop-strömningsaktiviteten för utdataegenskapen . Den här datauppsättningen kan bara vara en dummy-datauppsättning som krävs för att driva pipelineschemat (varje timme, varje dag osv.). Om aktiviteten inte tar några indata kan du hoppa över att ange en indatauppsättning för aktiviteten för indataegenskapen .

JSON-exempel

{
    "name": "HadoopStreamingPipeline",
    "properties": {
        "description": "Hadoop Streaming Demo",
        "activities": [
            {
                "type": "HDInsightStreaming",
                "typeProperties": {
                    "mapper": "cat.exe",
                    "reducer": "wc.exe",
                    "input": "wasb://<nameofthecluster>@spestore.blob.core.windows.net/example/data/gutenberg/davinci.txt",
                    "output": "wasb://<nameofthecluster>@spestore.blob.core.windows.net/example/data/StreamingOutput/wc.txt",
                    "filePaths": ["<nameofthecluster>/example/apps/wc.exe","<nameofthecluster>/example/apps/cat.exe"],
                    "fileLinkedService": "StorageLinkedService",
                    "getDebugInfo": "Failure"
                },
                "outputs": [
                    {
                        "name": "StreamingOutputDataset"
                    }
                ],
                "policy": {
                    "timeout": "01:00:00",
                    "concurrency": 1,
                    "executionPriorityOrder": "NewestFirst",
                    "retry": 1
                },
                "scheduler": {
                    "frequency": "Day",
                    "interval": 1
                },
                "name": "RunHadoopStreamingJob",
                "description": "Run a Hadoop streaming job",
                "linkedServiceName": "HDInsightLinkedService"
            }
        ],
        "start": "2014-01-04T00:00:00",
        "end": "2014-01-05T00:00:00"
    }
}

Mer information finns i artikeln Hadoop Streaming Activity .

HDInsight Apache Spark-aktivitet

Du kan ange följande egenskaper i en Spark Activity JSON-definition. Typegenskapen för aktiviteten måste vara: HDInsightSpark. Du måste först skapa en länkad HDInsight-tjänst och ange namnet på den som ett värde för egenskapen linkedServiceName . Följande egenskaper stöds i avsnittet typeProperties när du anger typen av aktivitet till HDInsightSpark:

Egenskap Beskrivning Krävs
rootPath Azure Blob-containern och mappen som innehåller Spark-filen. Filnamnet är skiftlägeskänsligt. Yes
entryFilePath Relativ sökväg till rotmappen för Spark-koden/-paketet. Yes
Classname Programmets Java/Spark-huvudklass No
Argument En lista över kommandoradsargument till Spark-programmet. No
proxyAnvändare Användarkontot som ska personifieras för att köra Spark-programmet No
sparkConfig Spark-konfigurationsegenskaper. No
getDebugInfo Anger när Spark-loggfilerna kopieras till Azure Storage som används av HDInsight-klustret (eller) som anges av sparkJobLinkedService. Tillåtna värden: Ingen, Alltid eller Fel. Standardvärde: Ingen. No
sparkJobLinkedService Den länkade Azure Storage-tjänsten som innehåller Spark-jobbfilen, beroenden och loggar. Om du inte anger något värde för den här egenskapen används lagringen som är associerad med HDInsight-klustret. No

JSON-exempel

{
    "name": "SparkPipeline",
    "properties": {
        "activities": [
            {
                "type": "HDInsightSpark",
                "typeProperties": {
                    "rootPath": "adfspark\\pyFiles",
                    "entryFilePath": "test.py",
                    "getDebugInfo": "Always"
                },
                "outputs": [
                    {
                        "name": "OutputDataset"
                    }
                ],
                "name": "MySparkActivity",
                "linkedServiceName": "HDInsightLinkedService"
            }
        ],
        "start": "2017-02-05T00:00:00",
        "end": "2017-02-06T00:00:00"
    }
}

Observera följande punkter:

  • Typegenskapen är inställd på HDInsightSpark.

  • RootPath är inställd på adfspark\pyFiles där adfspark är Azure Blob-containern och pyFiles är en fin mapp i containern. I det här exemplet är Azure Blob Storage det som är associerat med Spark-klustret. Du kan ladda upp filen till en annan Azure Storage. Om du gör det skapar du en länkad Azure Storage-tjänst för att länka lagringskontot till datafabriken. Ange sedan namnet på den länkade tjänsten som ett värde för egenskapen sparkJobLinkedService . Mer information om den här egenskapen och andra egenskaper som stöds av Spark-aktiviteten finns i Egenskaper för Spark-aktivitet.

  • EntryFilePath är inställt på test.py, som är Python-filen.

  • Egenskapen getDebugInfo är inställd på Alltid, vilket innebär att loggfilerna alltid genereras (lyckade eller misslyckade).

    Viktigt

    Vi rekommenderar att du inte ställer in den här egenskapen på Alltid i en produktionsmiljö om du inte felsöker ett problem.

  • Utdataavsnittet har en utdatauppsättning. Du måste ange en utdatauppsättning även om Spark-programmet inte genererar några utdata. Utdatauppsättningen styr schemat för pipelinen (varje timme, varje dag osv.).

Mer information om aktiviteten finns i artikeln Spark-aktivitet .

ML Studio -körningsaktivitet (klassisk) för batch

Viktigt

Stödet för Machine Learning Studio (klassisk) upphör den 31 augusti 2024. Vi rekommenderar att du byter till Azure Machine Learning innan dess.

Från och med den 1 december 2021 kommer du inte att kunna skapa nya Machine Learning Studio-resurser (klassiska) (arbetsyta och webbtjänstplan). Till och med den 31 augusti 2024 kan du fortsätta att använda befintliga Machine Learning Studio-experiment (klassiska) och webbtjänster.

Dokumentationen om ML Studio (klassisk) håller på att dras tillbaka och kanske inte uppdateras i framtiden.

Du kan ange följande egenskaper i en ML Studio(klassisk) JSON-definition för batchkörningsaktivitet. Typegenskapen för aktiviteten måste vara: AzureMLBatchExecution. Du måste först skapa en länkad Studio-tjänst (klassisk) och ange namnet på den som ett värde för egenskapen linkedServiceName . Följande egenskaper stöds i avsnittet typeProperties när du anger typen av aktivitet till AzureMLBatchExecution:

Egenskap Beskrivning Krävs
webServiceInput Datauppsättningen som ska skickas som indata för Studio-webbtjänsten (klassisk). Den här datauppsättningen måste också inkluderas i indata för aktiviteten. Använd antingen webServiceInput eller webServiceInputs.
webServiceInputs Ange datauppsättningar som ska skickas som indata för Studio-webbtjänsten (klassisk). Om webbtjänsten tar flera indata använder du egenskapen webServiceInputs i stället för egenskapen webServiceInput. Datauppsättningar som refereras av webServiceInputs måste också inkluderas i aktivitetsindata. Använd antingen webServiceInput eller webServiceInputs.
webServiceOutputs De datauppsättningar som tilldelas som utdata för Studio-webbtjänsten (klassisk). Webbtjänsten returnerar utdata i den här datauppsättningen. Yes
globalParameters Ange värden för webbtjänstparametrarna i det här avsnittet. No

JSON-exempel

I det här exemplet har aktiviteten datauppsättningen MLSqlInput som indata och MLSqlOutput som utdata. MLSqlInput skickas som indata till webbtjänsten med hjälp av egenskapen webServiceInput JSON. MLSqlOutput skickas som utdata till webbtjänsten med hjälp av egenskapen webServiceOutputs JSON.

{
   "name": "MLWithSqlReaderSqlWriter",
   "properties": {
      "description": "Azure ML model with sql azure reader/writer",
      "activities": [{
         "name": "MLSqlReaderSqlWriterActivity",
         "type": "AzureMLBatchExecution",
         "description": "test",
         "inputs": [ { "name": "MLSqlInput" }],
         "outputs": [ { "name": "MLSqlOutput" } ],
         "linkedServiceName": "MLSqlReaderSqlWriterDecisionTreeModel",
         "typeProperties":
         {
            "webServiceInput": "MLSqlInput",
            "webServiceOutputs": {
               "output1": "MLSqlOutput"
            },
            "globalParameters": {
               "Database server name": "<myserver>.database.windows.net",
               "Database name": "<database>",
               "Server user account name": "<user name>",
               "Server user account password": "<password>"
            }
         },
         "policy": {
            "concurrency": 1,
            "executionPriorityOrder": "NewestFirst",
            "retry": 1,
            "timeout": "02:00:00"
         }
      }],
      "start": "2016-02-13T00:00:00",
       "end": "2016-02-14T00:00:00"
   }
}

I JSON-exemplet använder den distribuerade Studio-webbtjänsten (klassisk) en läsare och en skrivarmodul för att läsa/skriva data från/till en Azure SQL Database. Den här webbtjänsten visar följande fyra parametrar: Databasservernamn, Databasnamn, Serveranvändarkontonamn och Lösenord för serveranvändarkonto.

Anteckning

Endast indata och utdata för AzureMLBatchExecution-aktiviteten kan skickas som parametrar till webbtjänsten. I JSON-kodfragmentet ovan är MLSqlInput till exempel en indata till aktiviteten AzureMLBatchExecution, som skickas som indata till webbtjänsten via parametern webServiceInput.

Ml Studio -uppdateringsresursaktivitet (klassisk)

Du kan ange följande egenskaper i en ML Studio(klassisk) JSON-definition för uppdateringsresursaktivitet. Typegenskapen för aktiviteten måste vara: AzureMLUpdateResource. Du måste först skapa en länkad Studio-tjänst (klassisk) och ange namnet på den som ett värde för egenskapen linkedServiceName . Följande egenskaper stöds i avsnittet typeProperties när du anger typen av aktivitet till AzureMLUpdateResource:

Egenskap Beskrivning Krävs
trainedModelName Namnet på den omtränad modellen. Yes
trainedModelDatasetName Datauppsättning som pekar på iLearner-filen som returneras av omträningsåtgärden. Yes

JSON-exempel

Pipelinen har två aktiviteter: AzureMLBatchExecution och AzureMLUpdateResource. Aktiviteten Studio (klassisk) batchkörning tar träningsdata som indata och skapar en iLearner-fil som utdata. Aktiviteten anropar träningswebbtjänsten (träningsexperiment som exponeras som en webbtjänst) med indata för träning och tar emot ilearner-filen från webbtjänsten. PlatshållarenBlob är bara en dummy-utdatauppsättning som krävs av Azure Data Factory-tjänsten för att köra pipelinen.

{
    "name": "pipeline",
    "properties": {
        "activities": [
            {
                "name": "retraining",
                "type": "AzureMLBatchExecution",
                "inputs": [
                    {
                        "name": "trainingData"
                    }
                ],
                "outputs": [
                    {
                        "name": "trainedModelBlob"
                    }
                ],
                "typeProperties": {
                    "webServiceInput": "trainingData",
                    "webServiceOutputs": {
                        "output1": "trainedModelBlob"
                    }
                 },
                "linkedServiceName": "trainingEndpoint",
                "policy": {
                    "concurrency": 1,
                    "executionPriorityOrder": "NewestFirst",
                    "retry": 1,
                    "timeout": "02:00:00"
                }
            },
            {
                "type": "AzureMLUpdateResource",
                "typeProperties": {
                    "trainedModelName": "trained model",
                    "trainedModelDatasetName" :  "trainedModelBlob"
                },
                "inputs": [{ "name": "trainedModelBlob" }],
                "outputs": [{ "name": "placeholderBlob" }],
                "policy": {
                    "timeout": "01:00:00",
                    "concurrency": 1,
                    "retry": 3
                },
                "name": "AzureML Update Resource",
                "linkedServiceName": "updatableScoringEndpoint2"
            }
        ],
        "start": "2016-02-13T00:00:00",
		"end": "2016-02-14T00:00:00"
    }
}

Data Lake Analytics U-SQL-aktivitet

Du kan ange följande egenskaper i en U-SQL Activity JSON-definition. Typegenskapen för aktiviteten måste vara: DataLakeAnalyticsU-SQL. Du måste skapa en länkad Azure Data Lake Analytics-tjänst och ange namnet på den som ett värde för egenskapen linkedServiceName . Följande egenskaper stöds i avsnittet typeProperties när du anger typen av aktivitet till DataLakeAnalyticsU-SQL:

Egenskap Beskrivning Krävs
scriptPath Sökväg till mappen som innehåller U-SQL-skriptet. Namnet på filen är skiftlägeskänsligt. Nej (om du använder skript)
scriptLinkedService Länkad tjänst som länkar lagringen som innehåller skriptet till datafabriken Nej (om du använder skript)
skript Ange infogat skript i stället för att ange scriptPath och scriptLinkedService. Till exempel: "script": "CREATE DATABASE test". Nej (om du använder scriptPath och scriptLinkedService)
degreeOfParallelism Det maximala antalet noder som används samtidigt för att köra jobbet. No
prioritet Avgör vilka jobb av alla som är i kö ska väljas för att köras först. Desto lägre nummer, desto högre prioritet. No
parametrar Parametrar för U-SQL-skriptet No

JSON-exempel

{
    "name": "ComputeEventsByRegionPipeline",
    "properties": {
        "description": "This pipeline computes events for en-gb locale and date less than Feb 19, 2012.",
        "activities":
        [
            {
                "type": "DataLakeAnalyticsU-SQL",
                "typeProperties": {
                    "scriptPath": "scripts\\kona\\SearchLogProcessing.txt",
                    "scriptLinkedService": "StorageLinkedService",
                    "degreeOfParallelism": 3,
                    "priority": 100,
                    "parameters": {
                        "in": "/datalake/input/SearchLog.tsv",
                        "out": "/datalake/output/Result.tsv"
                    }
                },
                "inputs": [
                    {
                        "name": "DataLakeTable"
                    }
                ],
                "outputs":
                [
                    {
                        "name": "EventsByRegionTable"
                    }
                ],
                "policy": {
                    "timeout": "06:00:00",
                    "concurrency": 1,
                    "executionPriorityOrder": "NewestFirst",
                    "retry": 1
                },
                "scheduler": {
                    "frequency": "Day",
                    "interval": 1
                },
                "name": "EventsByRegion",
                "linkedServiceName": "AzureDataLakeAnalyticsLinkedService"
            }
        ],
        "start": "2015-08-08T00:00:00",
        "end": "2015-08-08T01:00:00",
        "isPaused": false
    }
}

Mer information finns i Data Lake Analytics U-SQL-aktivitet.

Lagrad proceduraktivitet

Du kan ange följande egenskaper i en JSON-definition för lagrad proceduraktivitet. Typegenskapen för aktiviteten måste vara: SqlServerStoredProcedure. Du måste skapa en av följande länkade tjänster och ange namnet på den länkade tjänsten som ett värde för egenskapen linkedServiceName :

  • SQL Server
  • Azure SQL Database
  • Azure Synapse Analytics

Följande egenskaper stöds i avsnittet typeProperties när du anger typen av aktivitet till SqlServerStoredProcedure:

Egenskap Beskrivning Krävs
storedProcedureName Ange namnet på den lagrade proceduren i Azure SQL Database eller Azure Synapse Analytics som representeras av den länkade tjänst som används i utdatatabellen. Yes
storedProcedureParameters Ange värden för parametrar för lagrad procedur. Om du behöver skicka null för en parameter använder du syntaxen: "param1": null (alla gemener). Se följande exempel för att lära dig mer om hur du använder den här egenskapen. No

Om du anger en indatauppsättning måste den vara tillgänglig (i statusen Klar) för att aktiviteten för lagrad procedur ska kunna köras. Det går inte att använda indatauppsättningen i den lagrade proceduren som en parameter. Den används bara för att kontrollera beroendet innan du startar aktiviteten för den lagrade proceduren. Du måste ange en utdatauppsättning för en lagrad proceduraktivitet.

Utdatauppsättningen anger schemat för aktiviteten för den lagrade proceduren (varje timme, varje vecka, varje månad osv.). Utdatauppsättningen måste använda en länkad tjänst som refererar till en Azure SQL Database eller en Azure Synapse Analytics eller en SQL Server-databas där du vill att den lagrade proceduren ska köras. Utdatauppsättningen kan fungera som ett sätt att överföra resultatet av den lagrade proceduren för efterföljande bearbetning av en annan aktivitet (länkningsaktiviteter) i pipelinen. Data Factory skriver dock inte automatiskt utdata från en lagrad procedur till den här datauppsättningen. Det är den lagrade proceduren som skriver till en SQL-tabell som utdatauppsättningen pekar på. I vissa fall kan utdatauppsättningen vara en dummy-datauppsättning, som endast används för att ange schemat för att köra aktiviteten lagrad procedur.

JSON-exempel

{
    "name": "SprocActivitySamplePipeline",
    "properties": {
        "activities": [
            {
                "type": "SqlServerStoredProcedure",
                "typeProperties": {
                    "storedProcedureName": "usp_sample",
                    "storedProcedureParameters": {
                        "DateTime": "$$Text.Format('{0:yyyy-MM-dd HH:mm:ss}', SliceStart)"
                    }
                },
                "outputs": [{ "name": "sprocsampleout" }],
                "name": "SprocActivitySample"
            }
        ],
         "start": "2016-08-02T00:00:00",
         "end": "2016-08-02T05:00:00",
        "isPaused": false
    }
}

Mer information finns i artikeln Lagrad proceduraktivitet .

.NET-anpassad aktivitet

Du kan ange följande egenskaper i en JSON-definition för anpassad .NET-aktivitet. Typegenskapen för aktiviteten måste vara: DotNetActivity. Du måste skapa en länkad Azure HDInsight-tjänst eller en länkad Azure Batch-tjänst och ange namnet på den länkade tjänsten som ett värde för egenskapen linkedServiceName . Följande egenskaper stöds i avsnittet typeProperties när du anger typen av aktivitet till DotNetActivity:

Egenskap Beskrivning Krävs
AssemblyName Namnet på sammansättningen. I exemplet är det: MyDotnetActivity.dll. Yes
EntryPoint Namnet på den klass som implementerar gränssnittet IDotNetActivity. I exemplet är det: MyDotNetActivityNS.MyDotNetActivity där MyDotNetActivityNS är namnområdet och MyDotNetActivity är klassen . Yes
PackageLinkedService Namnet på den länkade Azure Storage-tjänsten som pekar på bloblagringen som innehåller zip-filen för anpassad aktivitet. I exemplet är det: AzureStorageLinkedService. Yes
PackageFile Namnet på zip-filen. I exemplet är det: customactivitycontainer/MyDotNetActivity.zip. Yes
extendedProperties Utökade egenskaper som du kan definiera och vidarebefordra till .NET-koden. I det här exemplet anges variabeln SliceStart till ett värde baserat på systemvariabeln SliceStart. No

JSON-exempel

{
  "name": "ADFTutorialPipelineCustom",
  "properties": {
    "description": "Use custom activity",
    "activities": [
      {
        "Name": "MyDotNetActivity",
        "Type": "DotNetActivity",
        "Inputs": [
          {
            "Name": "InputDataset"
          }
        ],
        "Outputs": [
          {
            "Name": "OutputDataset"
          }
        ],
        "LinkedServiceName": "AzureBatchLinkedService",
        "typeProperties": {
          "AssemblyName": "MyDotNetActivity.dll",
          "EntryPoint": "MyDotNetActivityNS.MyDotNetActivity",
          "PackageLinkedService": "AzureStorageLinkedService",
          "PackageFile": "customactivitycontainer/MyDotNetActivity.zip",
          "extendedProperties": {
            "SliceStart": "$$Text.Format('{0:yyyyMMddHH-mm}', Time.AddMinutes(SliceStart, 0))"
          }
        },
        "Policy": {
          "Concurrency": 2,
          "ExecutionPriorityOrder": "OldestFirst",
          "Retry": 3,
          "Timeout": "00:30:00",
          "Delay": "00:00:00"
        }
      }
    ],
    "start": "2016-11-16T00:00:00",
    "end": "2016-11-16T05:00:00",
    "isPaused": false
  }
}

Detaljerad information finns i artikeln Använda anpassade aktiviteter i Data Factory .

Nästa steg

Se följande självstudiekurser: