Pipelines och aktiviteter i Azure Data FactoryPipelines and activities in Azure Data Factory

gäller för: Azure Data Factory Azure Synapse Analytics

I den här artikeln beskriver vi pipelines och aktiviteter i Azure Data Factory och hur du kan använda dem för att konstruera datadrivna arbetsflöden från slutpunkt till slutpunkt för dina dataförflyttnings- och databearbetningsscenarier.This article helps you understand pipelines and activities in Azure Data Factory and use them to construct end-to-end data-driven workflows for your data movement and data processing scenarios.

ÖversiktOverview

En datafabrik kan ha en eller flera pipelines.A data factory can have one or more pipelines. En pipeline är en logisk gruppering av aktiviteter som tillsammans utför en uppgift.A pipeline is a logical grouping of activities that together perform a task. En pipeline kan till exempel innehålla en uppsättning aktiviteter som matar in och rensar loggdata, och sedan startar ett mappningsdataflöde för att analysera loggdata.For example, a pipeline could contain a set of activities that ingest and clean log data, and then kick off a mapping data flow to analyze the log data. Pipelinen gör att du kan hantera aktiviteterna som en uppsättning i stället för var och en.The pipeline allows you to manage the activities as a set instead of each one individually. Du distribuerar och schemalägger pipelinen i stället för aktiviteterna oberoende av varandra.You deploy and schedule the pipeline instead of the activities independently.

Aktiviteterna i en pipeline definierar åtgärder som ska utföras på dina data.The activities in a pipeline define actions to perform on your data. Du kan till exempel använda en kopierings aktivitet för att kopiera data från SQL Server till en Azure-Blob Storage.For example, you may use a copy activity to copy data from SQL Server to an Azure Blob Storage. Använd sedan en data flödes aktivitet eller en Databricks-anteckningsbok-aktivitet för att bearbeta och transformera data från Blob Storage till en Azure Synapse Analytics-pool som Business Intelligence rapporterings lösningar bygger på.Then, use a data flow activity or a Databricks Notebook activity to process and transform data from the blob storage to an Azure Synapse Analytics pool on top of which business intelligence reporting solutions are built.

Data Factory har tre grupperingar av aktiviteter: data förflyttnings aktiviteter, data omvandlings aktiviteteroch kontroll aktiviteter.Data Factory has three groupings of activities: data movement activities, data transformation activities, and control activities. En aktivitet kan ha noll eller flera indatauppsättningar och kan producera en eller flera utdatauppsättningar.An activity can take zero or more input datasets and produce one or more output datasets. I följande diagram visas förhållandet mellan pipeline, aktivitet och datauppsättning i Data Factory:The following diagram shows the relationship between pipeline, activity, and dataset in Data Factory:

Förhållande mellan datauppsättning, aktivitet och pipeline

En indata-datauppsättning representerar indata för en aktivitet i pipelinen och en data uppsättning för utdata representerar utdata för aktiviteten.An input dataset represents the input for an activity in the pipeline, and an output dataset represents the output for the activity. Datauppsättningar identifierar data inom olika datalager, till exempel tabeller, filer, mappar och dokument.Datasets identify data within different data stores, such as tables, files, folders, and documents. När du har skapat en datauppsättning kan du använda den med aktiviteter i en pipeline.After you create a dataset, you can use it with activities in a pipeline. Till exempel kan en datauppsättning vara en in-/utdatauppsättning för en kopieringsaktivitet eller en HDInsightHive-aktivitet.For example, a dataset can be an input/output dataset of a Copy Activity or an HDInsightHive Activity. Mer information om datauppsättning finns i artikeln Datauppsättningar i Azure Data Factory.For more information about datasets, see Datasets in Azure Data Factory article.

DataförflyttningsaktiviteterData movement activities

Kopieringsaktiviteten i Data Factory kopierar data från källans datalager till mottagarens datalager.Copy Activity in Data Factory copies data from a source data store to a sink data store. Data Factory stödjer de datalager som listas i tabellen i det här avsnittet.Data Factory supports the data stores listed in the table in this section. Data kan skrivas från valfri källa till valfri mottagare.Data from any source can be written to any sink. Klicka på ett datalager om du vill veta hur du kopierar data till och från det datalagret.Click a data store to learn how to copy data to and from that store.

KategoriCategory DatalagerData store Stöds som en källaSupported as a source Stöds som en mottagareSupported as a sink Stöds av Azure IRSupported by Azure IR Stöds av lokal IRSupported by self-hosted IR
AzureAzure Azure Blob StorageAzure Blob storage
  Azure Cognitive Search-indexAzure Cognitive Search index
  Azure Cosmos DB (SQL API)Azure Cosmos DB (SQL API)
  API för Azure Cosmos DB för MongoDBAzure Cosmos DB's API for MongoDB
  Azure-datautforskarenAzure Data Explorer
  Azure Data Lake Storage Gen1Azure Data Lake Storage Gen1
  Azure Data Lake Storage Gen2Azure Data Lake Storage Gen2
  Azure Database för MariaDBAzure Database for MariaDB
  Azure Database for MySQLAzure Database for MySQL
  Azure Database for PostgreSQLAzure Database for PostgreSQL
  Azure Databricks Delta LakeAzure Databricks Delta Lake
  Azure File StorageAzure File Storage
  Azure SQL DatabaseAzure SQL Database
  Hanterad Azure SQL-instansAzure SQL Managed Instance
  Azure Synapse AnalyticsAzure Synapse Analytics
  Azure Table StorageAzure Table storage
DatabasDatabase Amazon RedshiftAmazon Redshift
  DB2DB2
  DrillDrill
  Google BigQueryGoogle BigQuery
  GreenplumGreenplum
  HBaseHBase
  HiveHive
  Apache ImpalaApache Impala
  InformixInformix
  MariaDBMariaDB
  Microsoft AccessMicrosoft Access
  MySQLMySQL
  NetezzaNetezza
  OracleOracle
  PhoenixPhoenix
  PostgreSQLPostgreSQL
  PrestoPresto
  SAP Business Warehouse via Open HubSAP Business Warehouse via Open Hub
  SAP Business Warehouse via MDXSAP Business Warehouse via MDX
  SAP HANASAP HANA
  SAP-tabellSAP table
  SnowflakeSnowflake
  SparkSpark
  SQL ServerSQL Server
  SybaseSybase
  TeradataTeradata
  VerticaVertica
NoSQLNoSQL CassandraCassandra
  Couchbase (förhandsversion)Couchbase (Preview)
  MongoDBMongoDB
  MongoDB AtlasMongoDB Atlas
FilFile Amazon S3Amazon S3
  FilsystemFile system
  FTPFTP
  Google Cloud StorageGoogle Cloud Storage
  HDFSHDFS
  SFTPSFTP
Generiskt protokollGeneric protocol Generisk HTTPGeneric HTTP
  OData (allmän)Generic OData
  ODBC (allmän)Generic ODBC
  REST (allmän)Generic REST
Tjänster och apparServices and apps Amazon Marketplace Web ServiceAmazon Marketplace Web Service
  Common Data ServiceCommon Data Service
  Concur (förhandsversion)Concur (Preview)
  Dynamics 365Dynamics 365
  Dynamics AXDynamics AX
  Dynamics CRMDynamics CRM
  Google AdWordsGoogle AdWords
  HubSpotHubSpot
  JiraJira
  Magento (förhandsversion)Magento (Preview)
  Marketo (förhandsversion)Marketo (Preview)
  Microsoft 365Microsoft 365
  Oracle Eloqua (förhandsversion)Oracle Eloqua (Preview)
  Oracle Responsys (förhandsversion)Oracle Responsys (Preview)
  Oracle Service Cloud (förhandsversion)Oracle Service Cloud (Preview)
  PayPal (förhandsversion)PayPal (Preview)
  QuickBooks (förhandsversion)QuickBooks (Preview)
  SalesforceSalesforce
  Salesforce Service CloudSalesforce Service Cloud
  Salesforce Marketing CloudSalesforce Marketing Cloud
  SAP Cloud for Customer (C4C)SAP Cloud for Customer (C4C)
  SAP ECCSAP ECC
  ServiceNowServiceNow
SharePoint Online-listaSharePoint Online List
  Shopify (förhandsversion)Shopify (Preview)
  Square (förhandsversion)Square (Preview)
  Webbtabell (HTML-tabell)Web table (HTML table)
  XeroXero
  Zoho (förhandsversion)Zoho (Preview)

Anteckning

Om en anslutningsapp är märkt med förhandsversion kan du testa den och sedan ge feedback till oss.If a connector is marked Preview, you can try it out and give us feedback. Om du vill skapa ett beroende på anslutningsappar som är i förhandsversion i din lösning kontaktar du Azure-supporten.If you want to take a dependency on preview connectors in your solution, contact Azure support.

Mer information finns i artikeln Kopieringsaktiviteten – översikt.For more information, see Copy Activity - Overview article.

DatatransformeringsaktiviteterData transformation activities

Azure Data Factory stöder följande transformeringsaktiviteter som kan läggas till enskilt, eller kopplade till en annan aktivitet, i pipelines.Azure Data Factory supports the following transformation activities that can be added to pipelines either individually or chained with another activity.

DatatransformeringsaktivitetData transformation activity Compute-miljöCompute environment
DataflödeData Flow Azure Databricks hanteras av Azure Data FactoryAzure Databricks managed by Azure Data Factory
Azure-funktionAzure Function Azure FunctionsAzure Functions
HiveHive HDInsight [Hadoop]HDInsight [Hadoop]
PigPig HDInsight [Hadoop]HDInsight [Hadoop]
MapReduceMapReduce HDInsight [Hadoop]HDInsight [Hadoop]
Hadoop StreamingHadoop Streaming HDInsight [Hadoop]HDInsight [Hadoop]
SparkSpark HDInsight [Hadoop]HDInsight [Hadoop]
Azure Machine Learning Studio (klassisk) aktiviteter: batch-körning och uppdaterings resursAzure Machine Learning Studio (classic) activities: Batch Execution and Update Resource Azure VMAzure VM
Lagrad procedurStored Procedure Azure SQL, Azure Synapse Analytics eller SQL ServerAzure SQL, Azure Synapse Analytics, or SQL Server
U-SQLU-SQL Azure Data Lake AnalyticsAzure Data Lake Analytics
Anpassad aktivitetCustom Activity Azure BatchAzure Batch
Databricks-anteckningsbokDatabricks Notebook Azure DatabricksAzure Databricks
Databricks jar-aktivitetDatabricks Jar Activity Azure DatabricksAzure Databricks
Databricks python-aktivitetDatabricks Python Activity Azure DatabricksAzure Databricks

Mer information finns i artikeln om datatransformeringsaktiviteter.For more information, see the data transformation activities article.

Kontroll flödes aktiviteterControl flow activities

Följande kontrollflödesaktiviteter stöds:The following control flow activities are supported:

KontrollaktivitetControl activity BeskrivningDescription
Lägg till variabelAppend Variable Lägg till ett värde i en befintlig mat ris variabel.Add a value to an existing array variable.
Kör pipelineExecute Pipeline Med Execute Pipeline-aktiviteten kan en Data Factory-pipeline anropa en annan pipeline.Execute Pipeline activity allows a Data Factory pipeline to invoke another pipeline.
FilterFilter Använda ett filter uttryck för en indatakällaApply a filter expression to an input array
För varjeFor Each ForEach-aktiviteten definierar ett upprepat kontrollflöde i din pipeline.ForEach Activity defines a repeating control flow in your pipeline. Den här aktiviteten används till att iterera över en samling och kör angivna aktiviteter i en loop.This activity is used to iterate over a collection and executes specified activities in a loop. Implementeringen av loopen för den här aktiviteten liknar Foreach-loopstrukturen i programmeringsspråk.The loop implementation of this activity is similar to the Foreach looping structure in programming languages.
Hämta metadataGet Metadata GetMetadata-aktiviteten kan användas till att hämta metadata för data i Azure Data Factory.GetMetadata activity can be used to retrieve metadata of any data in Azure Data Factory.
If-villkorsaktivitetIf Condition Activity If-villkoret kan användas grenbaserat på villkor som utvärderas som sanna eller falska.The If Condition can be used to branch based on condition that evaluates to true or false. If-villkoret fungerar på samma sätt som en if-sats i ett programmeringsspråk.The If Condition activity provides the same functionality that an if statement provides in programming languages. Den utvärderar en uppsättning aktiviteter när villkoret utvärderas till true och en annan uppsättning aktiviteter när villkoret utvärderas till false.It evaluates a set of activities when the condition evaluates to true and another set of activities when the condition evaluates to false.
SökningsaktivitetLookup Activity Lookup-aktiviteten kan användas till att läsa eller söka efter en post/ett tabellnamn/ett värde från valfri extern källa.Lookup Activity can be used to read or look up a record/ table name/ value from any external source. Dessa utdata kan vidare refereras av efterföljande aktiviteter.This output can further be referenced by succeeding activities.
Set VariableSet Variable Ange värdet för en befintlig variabel.Set the value of an existing variable.
Tills-aktivitetUntil Activity Implementerar Do-Until-loop som liknar Do-Until-loopstrukturen i programmeringsspråk.Implements Do-Until loop that is similar to Do-Until looping structure in programming languages. En uppsättning aktiviteter körs i en loop tills det villkor som är associerat med aktiviteten utvärderas till sant.It executes a set of activities in a loop until the condition associated with the activity evaluates to true. Du kan ange en tidsgräns för Until-aktiviteten i Data Factory.You can specify a timeout value for the until activity in Data Factory.
VerifieringsaktivitetValidation Activity Se till att en pipeline bara fortsätter att köras om det finns en referens data uppsättning som uppfyller ett angivet villkor, eller om en tids gräns har nåtts.Ensure a pipeline only continues execution if a reference dataset exists, meets a specified criteria, or a timeout has been reached.
VänteaktivitetWait Activity När du använder en vänta-aktivitet i en pipeline väntar pipelinen under den angivna tiden innan du fortsätter att köra efterföljande aktiviteter.When you use a Wait activity in a pipeline, the pipeline waits for the specified time before continuing with execution of subsequent activities.
WebbaktivitetWeb Activity Webbaktiviteten kan används till att anropa en anpassad REST-slutpunkt från en Data Factory-pipeline.Web Activity can be used to call a custom REST endpoint from a Data Factory pipeline. Du kan överföra datauppsättningar och länkade tjänster så att de förbrukas och används av aktiviteten.You can pass datasets and linked services to be consumed and accessed by the activity.
Webhook-aktivitetWebhook Activity Anropa en slut punkt och skicka en återanrops-URL med hjälp av webhook-aktiviteten.Using the webhook activity, call an endpoint, and pass a callback URL. Pipeline-körningen väntar på att återanropet ska anropas innan nästa aktivitet fortsätter.The pipeline run waits for the callback to be invoked before proceeding to the next activity.

Pipeline JSONPipeline JSON

Så här definieras en pipeline i JSON-format:Here is how a pipeline is defined in JSON format:

{
    "name": "PipelineName",
    "properties":
    {
        "description": "pipeline description",
        "activities":
        [
        ],
        "parameters": {
        },
        "concurrency": <your max pipeline concurrency>,
        "annotations": [
        ]
    }
}
TaggTag BeskrivningDescription TypType ObligatoriskRequired
namename Namnet på pipeline.Name of the pipeline. Ange ett namn som representerar åtgärden som pipeline utför.Specify a name that represents the action that the pipeline performs.
  • Maximalt antal tecken: 140Maximum number of characters: 140
  • Måste börja med en bokstav, en siffra eller ett under streck ( _ )Must start with a letter, number, or an underscore (_)
  • Följande tecken är inte tillåtna: ".", "+", "?", "/", "<", ">", "*", "%", "&", ":", " "Following characters are not allowed: “.”, "+", "?", "/", "<",">","*"," %"," &",":"," "
SträngString JaYes
beskrivningdescription Ange texten som beskriver vad pipeline används till.Specify the text describing what the pipeline is used for. SträngString IngaNo
activitiesactivities Avsnittet activities kan ha en eller flera definierade aktiviteter.The activities section can have one or more activities defined within it. I avsnittet Aktivitets-JSON finns information om aktivitets-JSON-elementet.See the Activity JSON section for details about the activities JSON element. MatrisArray JaYes
parametrarparameters Avsnittet parameters kan ha en eller flera definierade parametrar i pipeline, vilket gör pipeline flexibel för återanvändning.The parameters section can have one or more parameters defined within the pipeline, making your pipeline flexible for reuse. ListaList IngaNo
samtidighetconcurrency Det maximala antalet samtidiga körningar som pipelinen kan ha.The maximum number of concurrent runs the pipeline can have. Som standard finns det inget maximum.By default, there is no maximum. Om samtidigheten uppnås placeras ytterligare pipeline-körningar i kö tills de tidigare är klaraIf the concurrency limit is reached, additional pipeline runs are queued until earlier ones complete AntalNumber IngaNo
anteckningarannotations En lista med taggar som är associerade med pipelinenA list of tags associated with the pipeline MatrisArray IngaNo

Aktivitets-JSONActivity JSON

Avsnittet activities kan ha en eller flera definierade aktiviteter.The activities section can have one or more activities defined within it. Det finns två huvudtyper av aktiviteter: körnings- och kontrollaktiviteter.There are two main types of activities: Execution and Control Activities.

KörningsaktiviteterExecution activities

I körningsaktiviteter ingår dataförflyttning och datatransformering.Execution activities include data movement and data transformation activities. De har följande toppnivåstruktur:They have the following top-level structure:

{
    "name": "Execution Activity Name",
    "description": "description",
    "type": "<ActivityType>",
    "typeProperties":
    {
    },
    "linkedServiceName": "MyLinkedService",
    "policy":
    {
    },
    "dependsOn":
    {
    }
}

I följande tabell beskrivs egenskaperna i definitionen för aktivitets-JSON:Following table describes properties in the activity JSON definition:

TaggTag BeskrivningDescription ObligatoriskRequired
namename Namnet på aktiviteten.Name of the activity. Ange ett namn som representerar åtgärden som aktiviteten utför.Specify a name that represents the action that the activity performs.
  • Maximalt antal tecken: 55Maximum number of characters: 55
  • Måste börja med en bokstavs siffra eller ett under streck ( _ )Must start with a letter-number, or an underscore (_)
  • Följande tecken är inte tillåtna: ".", "+", "?", "/", "<", ">", "*", "%", "&", ":", " "Following characters are not allowed: “.”, "+", "?", "/", "<",">","*"," %"," &",":"," "
JaYes
beskrivningdescription Text som beskriver vad aktiviteten används tillText describing what the activity or is used for JaYes
typtype Typ av aktivitet.Type of the activity. Se avsnittet data förflyttningsaktiviteter, data omvandlingoch kontroll av aktiviteter för olika typer av aktiviteter.See the Data Movement Activities, Data Transformation Activities, and Control Activities sections for different types of activities. JaYes
linkedServiceNamelinkedServiceName Namnet på den länkade tjänst som används av aktiviteten.Name of the linked service used by the activity.

En aktivitet kan kräva att du anger den länkade tjänst som länkar till den nödvändiga beräkningsmiljön.An activity may require that you specify the linked service that links to the required compute environment.
Ja för HDInsight-aktivitet, Azure Machine Learning Studio (klassisk) kommando bedömnings aktivitet, lagrad procedur aktivitet.Yes for HDInsight Activity, Azure Machine Learning Studio (classic) Batch Scoring Activity, Stored Procedure Activity.

Nej för alla andraNo for all others
typePropertiestypeProperties Egenskaperna i avsnittet typeProperties beror på varje typ av aktivitet.Properties in the typeProperties section depend on each type of activity. Om du vill visa typegenskaper för en aktivitet klickar du på länkarna till aktiviteten i föregående avsnitt.To see type properties for an activity, click links to the activity in the previous section. IngaNo
policypolicy Principer som påverkar körningsbeteende för aktiviteten.Policies that affect the run-time behavior of the activity. Den här egenskapen innehåller en tids gräns och ett omprövnings beteende.This property includes a timeout and retry behavior. Om inget värde anges används standardvärden.If it isn't specified, default values are used. Mer information finns i avsnittet Aktivitetsprincip.For more information, see Activity policy section. IngaNo
dependsOndependsOn Den här egenskapen används till att definiera aktivitetsberoenden och hur efterföljande aktiviteter beror på tidigare aktiviteter.This property is used to define activity dependencies, and how subsequent activities depend on previous activities. Mer information finns i AktivitetsberoendeFor more information, see Activity dependency IngaNo

AktivitetsprincipActivity policy

Principer påverkar körningsbeteendet hos en aktivitet och ger konfigurationsalternativ.Policies affect the run-time behavior of an activity, giving configurability options. Aktivitetsprinciper är bar tillgängliga för körningsaktiviteter.Activity Policies are only available for execution activities.

JSON-definition för aktivitetsprincipActivity policy JSON definition

{
    "name": "MyPipelineName",
    "properties": {
      "activities": [
        {
          "name": "MyCopyBlobtoSqlActivity",
          "type": "Copy",
          "typeProperties": {
            ...
          },
         "policy": {
            "timeout": "00:10:00",
            "retry": 1,
            "retryIntervalInSeconds": 60,
            "secureOutput": true
         }
        }
      ],
        "parameters": {
           ...
        }
    }
}
JSON-namnJSON name BeskrivningDescription Tillåtna värdenAllowed Values ObligatoriskRequired
timeouttimeout Anger tidsgränsen för aktivitetens körning.Specifies the timeout for the activity to run. TidsintervallTimespan Nej.No. Standardtidsgränsen är 7 dagar.Default timeout is 7 days.
retryretry Max. antal omförsökMaximum retry attempts IntegerInteger Nej.No. Standardvärdet är 0Default is 0
retryIntervalInSecondsretryIntervalInSeconds Fördröjningen mellan omförsök i sekunderThe delay between retry attempts in seconds IntegerInteger Nej.No. Standardvärdet är 30 sekunderDefault is 30 seconds
secureOutputsecureOutput När värdet är true anses utdata från aktivitet vara säker och loggas inte för övervakning.When set to true, the output from activity is considered as secure and aren't logged for monitoring. BooleskBoolean Nej.No. Standardvärdet är false.Default is false.

KontrollaktivitetControl activity

Kontrollaktiviteter har följande toppnivåstruktur:Control activities have the following top-level structure:

{
    "name": "Control Activity Name",
    "description": "description",
    "type": "<ActivityType>",
    "typeProperties":
    {
    },
    "dependsOn":
    {
    }
}
TaggTag BeskrivningDescription ObligatoriskRequired
namename Namnet på aktiviteten.Name of the activity. Ange ett namn som representerar åtgärden som aktiviteten utför.Specify a name that represents the action that the activity performs.
  • Maximalt antal tecken: 55Maximum number of characters: 55
  • Måste börja med en bokstavs siffra eller ett under streck ( _ )Must start with a letter number, or an underscore (_)
  • Följande tecken är inte tillåtna: ".", "+", "?", "/", "<", ">", "*", "%", "&", ":", " "Following characters are not allowed: “.”, "+", "?", "/", "<",">","*"," %"," &",":"," "
JaYes
    beskrivningdescription Text som beskriver vad aktiviteten används tillText describing what the activity or is used for JaYes
    typtype Typ av aktivitet.Type of the activity. Information om olika typer av aktiviteter finns i avsnitten Dataförflyttningsaktiviteter, Datatransformeringsaktiviteter och Kontrollaktiviteter.See the data movement activities, data transformation activities, and control activities sections for different types of activities. JaYes
    typePropertiestypeProperties Egenskaperna i avsnittet typeProperties beror på varje typ av aktivitet.Properties in the typeProperties section depend on each type of activity. Om du vill visa typegenskaper för en aktivitet klickar du på länkarna till aktiviteten i föregående avsnitt.To see type properties for an activity, click links to the activity in the previous section. IngaNo
    dependsOndependsOn Den här egenskapen används till att definiera aktivitetsberoende och hur efterföljande aktiviteter beror på tidigare aktiviteter.This property is used to define Activity Dependency, and how subsequent activities depend on previous activities. Mer information finns i aktivitets beroende.For more information, see activity dependency. IngaNo

    AktivitetsberoendeActivity dependency

    Aktivitets beroende definierar hur efterföljande aktiviteter beror på tidigare aktiviteter, vilket fastställer villkoret för om du vill fortsätta att köra nästa uppgift.Activity Dependency defines how subsequent activities depend on previous activities, determining the condition of whether to continue executing the next task. En aktivitet kan vara beroende av en eller flera tidigare aktiviteter med olika beroendevillkor.An activity can depend on one or multiple previous activities with different dependency conditions.

    De olika beroendevillkoren är Succeeded (Lyckades), Failed (Misslyckades), Skipped (Överhoppad), Completed (Slutförd).The different dependency conditions are: Succeeded, Failed, Skipped, Completed.

    Exempel: Om en pipeline har Aktivitet A -> Aktivitet B är de olika scenarier som kan ske följande:For example, if a pipeline has Activity A -> Activity B, the different scenarios that can happen are:

    • Aktivitet B har beroendevillkor på Aktivitet A med Succeeded (Lyckades): Aktivitet B körs bara om Aktivitet A har den slutgiltiga statusen Suceeded (Lyckades)Activity B has dependency condition on Activity A with succeeded: Activity B only runs if Activity A has a final status of succeeded
    • Aktivitet B har beroendevillkor på Aktivitet A med Failed (Misslyckades): Aktivitet B körs bara om Aktivitet A har den slutgiltiga statusen Failed (Misslyckades)Activity B has dependency condition on Activity A with failed: Activity B only runs if Activity A has a final status of failed
    • Aktivitet B har beroendevillkor på Aktivitet A med Completed (Slutförd): Aktivitet B körs om Aktivitet A har de slutgiltiga statusen Succeeded (Lyckades) eller Failed (Misslyckades)Activity B has dependency condition on Activity A with completed: Activity B runs if Activity A has a final status of succeeded or failed
    • Aktivitet B har ett beroende villkor för aktivitet A med överhoppad: aktivitet b körs om aktivitet a har slut status hoppat över.Activity B has a dependency condition on Activity A with skipped: Activity B runs if Activity A has a final status of skipped. Skipped (Överhoppad) inträffar i scenariot Aktivitet X -> Aktivitet Y -> Aktivitet Z, där varje aktivitet bara körs om den tidigare aktiviteten lyckas.Skipped occurs in the scenario of Activity X -> Activity Y -> Activity Z, where each activity runs only if the previous activity succeeds. Om aktivitet X Miss lyckas har aktivitet Y statusen "hoppas över" eftersom den aldrig körs.If Activity X fails, then Activity Y has a status of "Skipped" because it never executes. På samma sätt har aktivitets-Z statusen "hoppas över" även.Similarly, Activity Z has a status of "Skipped" as well.

    Exempel: Aktivitet 2 är beroende av att Aktivitet 1 lyckasExample: Activity 2 depends on the Activity 1 succeeding

    {
        "name": "PipelineName",
        "properties":
        {
            "description": "pipeline description",
            "activities": [
             {
                "name": "MyFirstActivity",
                "type": "Copy",
                "typeProperties": {
                },
                "linkedServiceName": {
                }
            },
            {
                "name": "MySecondActivity",
                "type": "Copy",
                "typeProperties": {
                },
                "linkedServiceName": {
                },
                "dependsOn": [
                {
                    "activity": "MyFirstActivity",
                    "dependencyConditions": [
                        "Succeeded"
                    ]
                }
              ]
            }
          ],
          "parameters": {
           }
        }
    }
    
    

    Exempel på kopieringspipelineSample copy pipeline

    I följande exempel på pipeline finns det en aktivitet av typen Copy (Kopiera) i avsnittet activities.In the following sample pipeline, there is one activity of type Copy in the activities section. I det här exemplet kopierar kopierings aktiviteten data från en Azure Blob Storage till en databas i Azure SQL Database.In this sample, the copy activity copies data from an Azure Blob storage to a database in 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": {
              "retry": 2,
              "timeout": "01:00:00"
            }
          }
        ]
      }
    }
    

    Observera följande punkter:Note the following points:

    • I avsnittet Aktiviteter finns det bara en aktivitet vars typ anges till Kopia.In the activities section, there is only one activity whose type is set to Copy.
    • Indata för aktiviteten är inställd på InputDataset och utdata för aktiviteten är inställd på OutputDataset.Input for the activity is set to InputDataset and output for the activity is set to OutputDataset. I artikeln Datauppsättningar finns information om hur du definierar datauppsättningar i JSON.See Datasets article for defining datasets in JSON.
    • I avsnittet för typeProperties har BlobSource angetts som källtyp och SqlSink har angetts som mottagartyp.In the typeProperties section, BlobSource is specified as the source type and SqlSink is specified as the sink type. I avsnittet för dataförflyttningsaktiviteter klickar du på det datalager som du vill använda som källa eller mottagare för att lära dig mer om hur du flyttar data till/från det datalagret.In the data movement activities section, click the data store that you want to use as a source or a sink to learn more about moving data to/from that data store.

    En fullständig genomgång om hur du skapar denna pipeline finns i Snabbstart: skapa en datafabrik.For a complete walkthrough of creating this pipeline, see Quickstart: create a data factory.

    Exempel på transfomeringspipelineSample transformation pipeline

    I följande exempel på pipeline finns det en aktivitet av typen HDInsightHive i avsnittet activities.In the following sample pipeline, there is one activity of type HDInsightHive in the activities section. 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.In this sample, the HDInsight Hive activity transforms data from an Azure Blob storage by running a Hive script file on an Azure HDInsight Hadoop cluster.

    {
        "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": {
                        "retry": 3
                    },
                    "name": "RunSampleHiveActivity",
                    "linkedServiceName": "HDInsightOnDemandLinkedService"
                }
            ]
        }
    }
    

    Observera följande punkter:Note the following points:

    • I activities-avsnittet finns det bara en aktivitet vars typ anges till HDInsightHive.In the activities section, there is only one activity whose type is set to HDInsightHive.
    • Hive-skriptfilen, skriptfilen partitionweblogs. HQL, lagras i Azure Storage konto (anges av scriptLinkedService, kallas AzureStorageLinkedService) och i mappen script i behållaren adfgetstarted .The Hive script file, partitionweblogs.hql, is stored in the Azure Storage account (specified by the scriptLinkedService, called AzureStorageLinkedService), and in script folder in the container adfgetstarted.
    • Avsnittet defines används för att ange körningsinställningar som skickas till Hive-skriptet som Hive-konfigurationsvärden (till exempel ${hiveconf:inputtable}, ${hiveconf:partitionedtable}.The defines section is used to specify the runtime settings that are passed to the hive script as Hive configuration values (for example, ${hiveconf:inputtable}, ${hiveconf:partitionedtable}).

    Avsnittet typeProperties är olika för varje transformeringsaktivitet.The typeProperties section is different for each transformation activity. Om du vill ha mer information om vilka typegenskaper som stöds för en transformeringsaktivitet klickar du på transformeringsaktiviteten i Datatransformeringsaktiviteter.To learn about type properties supported for a transformation activity, click the transformation activity in the Data transformation activities.

    En fullständig genomgång av hur du skapar denna pipeline finns i Självstudier: transformera data med Spark.For a complete walkthrough of creating this pipeline, see Tutorial: transform data using Spark.

    Flera aktiviteter i en pipelineMultiple activities in a pipeline

    De två föregående exemplen innehåller bara en aktivitet.The previous two sample pipelines have only one activity in them. Du kan fler än en aktivitet i en pipeline.You can have more than one activity in a pipeline. Om du har flera aktiviteter i en pipeline och efterföljande aktiviteter inte är beroende av tidigare aktiviteter kan aktiviteterna köras parallellt.If you have multiple activities in a pipeline and subsequent activities are not dependent on previous activities, the activities may run in parallel.

    Du kan länka två aktiviteter genom att använda aktivitetsberoende, som definierar hur efterföljande aktiviteter är beroende av tidigare aktiviteter, vilket fastställer villkoret för om nästa uppgift ska köras.You can chain two activities by using activity dependency, which defines how subsequent activities depend on previous activities, determining the condition whether to continue executing the next task. En aktivitet kan vara beroende av en eller flera tidigare aktiviteter med olika beroendevillkor.An activity can depend on one or more previous activities with different dependency conditions.

    SchemaläggningspipelinesScheduling pipelines

    Pipelines schemaläggs av utlösare.Pipelines are scheduled by triggers. Det finns olika typer av utlösare (Scheduler-utlösare som gör att pipelines kan utlösas på ett schema för en sidoyta och den manuella utlösaren som utlöser pipelines på begäran).There are different types of triggers (Scheduler trigger, which allows pipelines to be triggered on a wall-clock schedule, as well as the manual trigger, which triggers pipelines on-demand). Mer information om utlösare finns i artikeln om pipelinekörning och utlösare.For more information about triggers, see pipeline execution and triggers article.

    Om du vill att utlösaren startar en pipelinekörning måste du ta med en pipelinereferens i utlösardefinitionen.To have your trigger kick off a pipeline run, you must include a pipeline reference of the particular pipeline in the trigger definition. Pipelines och utlösare har ett n-m-förhållande.Pipelines & triggers have an n-m relationship. Flera utlösare kan starta en enda pipeline och samma utlösare kan starta flera pipeliner.Multiple triggers can kick off a single pipeline, and the same trigger can kick off multiple pipelines. När utlösaren har definierats måste du starta utlösaren så att den kan börja utlösa pipeline.Once the trigger is defined, you must start the trigger to have it start triggering the pipeline. Mer information om utlösare finns i artikeln om pipelinekörning och utlösare.For more information about triggers, see pipeline execution and triggers article.

    Anta till exempel att du har en Scheduler-utlösare, "utlösare" som jag vill använda för min pipeline, "MyCopyPipeline".For example, say you have a Scheduler trigger, "Trigger A," that I wish to kick off my pipeline, "MyCopyPipeline." Du definierar utlösaren, som du ser i följande exempel:You define the trigger, as shown in the following example:

    Definition av TriggerATrigger A definition

    {
      "name": "TriggerA",
      "properties": {
        "type": "ScheduleTrigger",
        "typeProperties": {
          ...
          }
        },
        "pipeline": {
          "pipelineReference": {
            "type": "PipelineReference",
            "referenceName": "MyCopyPipeline"
          },
          "parameters": {
            "copySourceName": "FileSource"
          }
        }
      }
    }
    

    Nästa stegNext steps

    I följande självstudier får du stegvisa instruktioner för att skapa pipelines med aktiviteter:See the following tutorials for step-by-step instructions for creating pipelines with activities: