Pipeline e attività in Azure Data FactoryPipelines and activities in Azure Data Factory

Questo articolo fornisce informazioni sulle pipeline e sulle attività in Azure Data Factory e su come usarle per creare flussi di lavoro completi basati sui dati per gli scenari di elaborazione e trasferimento dei dati.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.

PanoramicaOverview

Una data factory può comprendere una o più pipeline.A data factory can have one or more pipelines. Una pipeline è un raggruppamento logico di attività che insieme eseguono un compito.A pipeline is a logical grouping of activities that together perform a task. Ad esempio, una pipeline può contenere un set di attività che inseriscono ed eseguono la pulizia dei dati di log e quindi avviano un processo Spark in un cluster HDInsight per analizzare i dati di log.For example, a pipeline could contain a set of activities that ingest and clean log data, and then kick off a Spark job on an HDInsight cluster to analyze the log data. La pipeline offre il vantaggio di poter gestire le attività come un set anziché singolarmente.The beauty of this is that the pipeline allows you to manage the activities as a set instead of each one individually. È ad esempio possibile distribuire e pianificare la pipeline anziché distribuire e pianificare le attività separatamente.For example, you can deploy and schedule the pipeline, instead of the activities independently.

Le attività in una pipeline definiscono le azioni da eseguire sui dati.The activities in a pipeline define actions to perform on your data. Ad esempio, è possibile usare un'attività di copia per copiare i dati da un Server SQL locale a un'archiviazione BLOB di Azure.For example, you may use a copy activity to copy data from an on-premises SQL Server to an Azure Blob Storage. Quindi, usare un'attività Hive che esegue uno script Hive in un cluster HDInsight di Azure per elaborare o trasformare i dati dall'archivio BLOB per produrre dati di output.Then, use a Hive activity that runs a Hive script on an Azure HDInsight cluster to process/transform data from the blob storage to produce output data. Infine, usare una seconda attività di copia per copiare i dati di output in un Azure SQL Data Warehouse in cui vengono compilate le soluzioni di report di business intelligence, BI.Finally, use a second copy activity to copy the output data to an Azure SQL Data Warehouse on top of which business intelligence (BI) reporting solutions are built.

Il servizio Data Factory supporta tre tipi di attività: attività di spostamento dei dati, attività di trasformazione dei dati e attività di controllo.Data Factory supports three types of activities: data movement activities, data transformation activities, and control activities. Un'attività può non avere alcun set di dati di input o può averne più di uno e generare uno o più set di dati di output.An activity can take zero or more input datasets and produce one or more output datasets. Nel diagramma seguente viene illustrata la relazione tra attività, set di dati e pipeline in Data Factory:The following diagram shows the relationship between pipeline, activity, and dataset in Data Factory:

Relazione tra set di dati, attività e pipeline

Un set di dati di input rappresenta l'input per un'attività nella pipeline, un set di dati di output rappresenta l'output dell'attività.An input dataset represents the input for an activity in the pipeline and an output dataset represents the output for the activity. I set di dati identificano i dati all'interno dei diversi archivi dati, come tabelle, file, cartelle e documenti.Datasets identify data within different data stores, such as tables, files, folders, and documents. Dopo aver creato un set di dati, è possibile usarlo con le attività in una pipeline.After you create a dataset, you can use it with activities in a pipeline. Ad esempio, un set di dati può essere configurato come set di dati di input o di output di un'attività di copia o un'attività HDInsightHive.For example, a dataset can be an input/output dataset of a Copy Activity or an HDInsightHive Activity. Per altre informazioni sui set di dati, vedere l'articolo Set di dati in Azure Data Factory.For more information about datasets, see Datasets in Azure Data Factory article.

Attività di spostamento dei datiData movement activities

L'attività di copia in Data Factory esegue la copia dei dati da un archivio dati di origine a un archivio dati sink.Copy Activity in Data Factory copies data from a source data store to a sink data store. Il servizio Data Factory supporta gli archivi dati elencati nella tabella in questa sezione.Data Factory supports the data stores listed in the table in this section. I dati da qualsiasi origine possono essere scritti in qualsiasi sink.Data from any source can be written to any sink. Fare clic su un archivio dati per informazioni su come copiare dati da e verso tale archivio.Click a data store to learn how to copy data to and from that store.

CategoryCategory Archivio datiData store Supportato come origineSupported as a source Supportato come sinkSupported as a sink Supportato dal runtime di integrazione di AzureSupported by Azure IR Supportato dal runtime di integrazione self-hostedSupported by Self-hosted IR
AzureAzure Archiviazione BLOB di AzureAzure Blob Storage
  Azure Cosmos DB (API SQL)Azure Cosmos DB (SQL API)
  API di Azure Cosmos DB per MongoDBAzure Cosmos DB's API for MongoDB
  Esplora dati di AzureAzure Data Explorer
  Azure Data Lake Storage Gen1Azure Data Lake Storage Gen1
  Azure Data Lake Storage Gen2Azure Data Lake Storage Gen2
  Database di Azure per MariaDBAzure Database for MariaDB
  Database di Azure per MySQLAzure Database for MySQL
  Database di Azure per PostgreSQLAzure Database for PostgreSQL
  Archiviazione file di AzureAzure File Storage
  Database SQL di AzureAzure SQL Database
  Istanza gestita di database SQL di AzureAzure SQL Database Managed Instance
  Azure SQL Data WarehouseAzure SQL Data Warehouse
  Indice di Ricerca di AzureAzure Search Index
  Archiviazione tabelle di AzureAzure Table Storage
DatabaseDatabase Amazon RedshiftAmazon Redshift
  DB2DB2
  Drill (anteprima)Drill (Preview)
  Google BigQueryGoogle BigQuery
  GreenplumGreenplum
  HBaseHBase
  HiveHive
  Apache Impala (anteprima)Apache Impala (Preview)
  InformixInformix
  MariaDBMariaDB
  Microsoft AccessMicrosoft Access
  MySQLMySQL
  NetezzaNetezza
  OracleOracle
  PhoenixPhoenix
  PostgreSQLPostgreSQL
  Presto (anteprima)Presto (Preview)
  SAP Business Warehouse Open HubSAP Business Warehouse Open Hub
  SAP Business Warehouse via MDXSAP Business Warehouse via MDX
  SAP HANASAP HANA
  Tabella SAPSAP Table
  SparkSpark
  SQL ServerSQL Server
  SybaseSybase
  TeradataTeradata
  VerticaVertica
NoSQLNoSQL CassandraCassandra
  Couchbase (anteprima)Couchbase (Preview)
  MongoDBMongoDB
FileFile Amazon S3Amazon S3
  File systemFile System
  FTPFTP
  Google Cloud StorageGoogle Cloud Storage
  HDFSHDFS
  SFTPSFTP
Protocollo genericoGeneric protocol HTTP genericoGeneric HTTP
  OData genericoGeneric OData
  ODBC genericoGeneric ODBC
  REST genericoGeneric REST
Servizi e appServices and apps Amazon Marketplace Web Service (anteprima)Amazon Marketplace Web Service (Preview)
  Common Data Service per le appCommon Data Service for Apps
  Concur (anteprima)Concur (Preview)
  Dynamics 365Dynamics 365
  Dynamics AX (Anteprima)Dynamics AX (Preview)
  Dynamics CRMDynamics CRM
  Google AdWords (Anteprima)Google AdWords (Preview)
  HubSpot (anteprima)HubSpot (Preview)
  Jira (anteprima)Jira (Preview)
  Magento (anteprima)Magento (Preview)
  Marketo (anteprima)Marketo (Preview)
  Office 365Office 365
  Oracle Eloqua (anteprima)Oracle Eloqua (Preview)
  Oracle Responsys (anteprima)Oracle Responsys (Preview)
  Oracle Service Cloud (anteprima)Oracle Service Cloud (Preview)
  PayPal (anteprima)Paypal (Preview)
  QuickBooks (anteprima)QuickBooks (Preview)
  SalesforceSalesforce
  Cloud del servizio SalesforceSalesforce Service Cloud
  Salesforce Marketing Cloud (anteprima)Salesforce Marketing Cloud (Preview)
  SAP Cloud for Customer (C4C)SAP Cloud for Customer (C4C)
  SAP ECCSAP ECC
  ServiceNowServiceNow
  Shopify (anteprima)Shopify (Preview)
  Square (anteprima)Square (Preview)
  Tabella Web (tabella HTML)Web Table (HTML table)
  Xero (anteprima)Xero (Preview)
  Zoho (anteprima)Zoho (Preview)

Nota

Se un connettore è contrassegnato come Anteprima, è possibile provarlo e inviare commenti e suggerimenti.Any connector marked as Preview means that you can try it out and give us feedback. Se si vuole accettare una dipendenza dai connettori in versione di anteprima nella propria soluzione, contattare il supporto tecnico di Azure.If you want to take a dependency on preview connectors in your solution, please contact Azure support.

Per altre informazioni, vedere l'articolo Copy Activity in Azure Data Factory (Attività di copia in Azure Data Factory).For more information, see Copy Activity - Overview article.

Attività di trasformazione dei datiData transformation activities

Azure Data Factory supporta le seguenti attività di trasformazione che possono essere aggiunte alle pipeline singolarmente o con un'altra attività concatenata.Azure Data Factory supports the following transformation activities that can be added to pipelines either individually or chained with another activity.

Attività di trasformazione dei datiData transformation activity Ambiente di calcoloCompute environment
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]
Attività di Machine Learning: Esecuzione batch e Aggiorna risorsaMachine Learning activities: Batch Execution and Update Resource Macchina virtuale di AzureAzure VM
Stored procedureStored Procedure Azure SQL, Azure SQL Data Warehouse o SQL ServerAzure SQL, Azure SQL Data Warehouse, or SQL Server
U-SQLU-SQL Azure Data Lake Analytics.Azure Data Lake Analytics
Codice personalizzatoCustom Code Azure BatchAzure Batch
Notebook di DatabricksDatabricks Notebook Azure DatabricksAzure Databricks

Per altre informazioni, vedere l'articolo Attività di trasformazione dei dati.For more information, see the data transformation activities article.

Attività di controlloControl activities

Sono supportate le seguenti attività del flusso di controllo:The following control flow activities are supported:

Attività di controlloControl activity DescrizioneDescription
Attività ExecutePipelineExecute Pipeline Activity L'attività di esecuzione pipeline consente a una pipeline di Data Factory di richiamare un'altra pipeline.Execute Pipeline activity allows a Data Factory pipeline to invoke another pipeline.
ForEachActivityForEachActivity L'attività ForEach definisce un flusso di controllo ripetuto nella pipeline.ForEach Activity defines a repeating control flow in your pipeline. Questa attività viene usata per eseguire l'iterazione su una raccolta ed esegue attività specificate in un ciclo.This activity is used to iterate over a collection and executes specified activities in a loop. L'implementazione di cicli di questa attività è simile alla struttura di esecuzione cicli Foreach nei linguaggi di programmazione.The loop implementation of this activity is similar to Foreach looping structure in programming languages.
WebActivityWebActivity L'attività Web può essere usata per chiamare un endpoint REST personalizzato da una pipeline di Data Factory.Web Activity can be used to call a custom REST endpoint from a Data Factory pipeline. È possibile passare set di dati e servizi collegati in modo che l'attività possa usarli e accedervi.You can pass datasets and linked services to be consumed and accessed by the activity.
Attività di ricercaLookup Activity L'attività di ricerca può essere usata per la lettura o la ricerca di un nome/valore di record/tabella da qualsiasi origine esterna.Lookup Activity can be used to read or look up a record/ table name/ value from any external source. Questo output può essere referenziato ulteriormente dalle attività successive.This output can further be referenced by succeeding activities.
Attività GetMetadataGet Metadata Activity Questa attività può essere usata per recuperare i metadati di tutti i dati in Azure Data Factory.GetMetadata activity can be used to retrieve metadata of any data in Azure Data Factory.
Attività UntilUntil Activity Implementa il ciclo Do-Until che è simile alla struttura di esecuzione cicli Do-Until nei linguaggi di programmazione.Implements Do-Until loop that is similar to Do-Until looping structure in programming languages. Esegue infatti un set di attività in un ciclo finché la condizione associata con l'attività restituisce true.It executes a set of activities in a loop until the condition associated with the activity evaluates to true. È possibile specificare un valore di timeout per l'attività Until in Data Factory.You can specify a timeout value for the until activity in Data Factory.
Attività della condizione IfIf Condition Activity Può essere usata per creare un ramo in base alla condizione che il valore restituito sia true o false.The If Condition can be used to branch based on condition that evaluates to true or false. L'attività IfCondition svolge la stessa funzione dell'istruzione If nei linguaggi di programmazione.The If Condition activity provides the same functionality that an if statement provides in programming languages. Valuta un set di attività se la condizione restituisce true e un altro set di attività se la condizione restituisce false.It evaluates a set of activities when the condition evaluates to true and another set of activities when the condition evaluates to false.
Attività WaitWait Activity Quando si usa un'attività Wait in una pipeline, la pipeline attende per il periodo di tempo specificato prima di proseguire con l'esecuzione delle attività successive.When you use a Wait activity in a pipeline, the pipeline waits for the specified period of time before continuing with execution of subsequent activities.

Pipeline JSONPipeline JSON

Ecco come una pipeline viene definita in formato JSON:Here is how a pipeline is defined in JSON format:

{
    "name": "PipelineName",
    "properties":
    {
        "description": "pipeline description",
        "activities":
        [
        ],
        "parameters": {
         }
    }
}
TagTag DescrizioneDescription TypeType ObbligatorioRequired
namename Nome della pipeline.Name of the pipeline. Specificare un nome che rappresenti l'azione eseguita dalla pipeline.Specify a name that represents the action that the pipeline performs.
  • Numero massimo di caratteri: 140Maximum number of characters: 140
  • Deve iniziare con una lettera, numero o un carattere di sottolineatura (_)Must start with a letter, number, or an underscore (_)
  • Non sono ammessi i caratteri seguenti: ".", "+", "?", "/", "<", ">", "*", "%", "&", ":", ""Following characters are not allowed: “.”, “+”, “?”, “/”, “<”,”>”,”*”,”%”,”&”,”:”,”\”
StringString YesYes
descriptiondescription Specificare il testo descrittivo che illustra lo scopo della pipeline.Specify the text describing what the pipeline is used for. StringString NoNo
activitiesactivities Nella sezione delle attività possono essere definite una o più attività.The activities section can have one or more activities defined within it. Vedere la sezione relativa al formato JSON delle attività per informazioni dettagliate sull'elemento JSON delle attività.See the Activity JSON section for details about the activities JSON element. ArrayArray YesYes
parametersparameters La sezione parameters può avere uno o più parametri definiti all'interno della pipeline, assicurando la flessibilità per il riutilizzo della pipeline.The parameters section can have one or more parameters defined within the pipeline, making your pipeline flexible for reuse. ListList NoNo

Attività JSONActivity JSON

Nella sezione delle attività possono essere definite una o più attività.The activities section can have one or more activities defined within it. Esistono due principali tipi di attività: attività di esecuzione e di controllo.There are two main types of activities: Execution and Control Activities.

Attività di esecuzioneExecution activities

Includono le attività di spostamento dei dati e di trasformazione dei dati.Execution activities include data movement and data transformation activities. Presentano la seguente struttura di primo livello:They have the following top-level structure:

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

La tabella seguente descrive le proprietà all'interno della definizione JSON dell'attività:Following table describes properties in the activity JSON definition:

TagTag DescrizioneDescription ObbligatorioRequired
namename Nome dell'attività.Name of the activity. Specificare un nome che rappresenti l'azione eseguita dall'attività.Specify a name that represents the action that the activity performs.
  • Numero massimo di caratteri: 55Maximum number of characters: 55
  • Deve iniziare con una lettera, un numero o un carattere di sottolineatura (_)Must start with a letter number, or an underscore (_)
  • Non sono ammessi i caratteri seguenti: ".", "+", "?", "/", "<", ">", "*", "%", "&", ":", ""Following characters are not allowed: “.”, “+”, “?”, “/”, “<”,”>”,”*”,”%”,”&”,”:”,”\”
YesYes
descriptiondescription Testo descrittivo per il tipo o lo scopo dell'attivitàText describing what the activity or is used for Yes
typetype Tipo di attività.Type of the activity. Per informazioni sui diversi tipi di attività, vedere le sezioni Attività di spostamento dei dati, Attività di trasformazione dei dati e Attività di controllo.See the Data Movement Activities, Data Transformation Activities, and Control Activities sections for different types of activities. YesYes
linkedServiceNamelinkedServiceName Nome del servizio collegato usato dall'attività.Name of the linked service used by the activity.

Per un'attività può essere necessario specificare il servizio collegato che collega all'ambiente di calcolo richiesto.An activity may require that you specify the linked service that links to the required compute environment.
Sì per l'attività HDInsight, l'attività di assegnazione di punteggio Batch di Azure Machine Learning e l'attività stored procedure.Yes for HDInsight Activity, Azure Machine Learning Batch Scoring Activity, Stored Procedure Activity.

No per tutto il restoNo for all others
typePropertiestypeProperties Le proprietà nella sezione typeProperties dipendono da ogni tipo di attività.Properties in the typeProperties section depend on each type of activity. Per visualizzare le proprietà del tipo per un'attività, fare clic sui collegamenti all'attività nella sezione precedente.To see type properties for an activity, click links to the activity in the previous section. NoNo
policypolicy Criteri che influiscono sul comportamento di runtime dell'attività.Policies that affect the run-time behavior of the activity. Questa proprietà include il comportamento di timeout e ripetizione.This property includes timeout and retry behavior. Se queste impostazioni non vengono specificate, vengono usati i valori predefiniti.If it is not specified, default values are used. Per altre informazioni, vedere la sezione Criteri di attività.For more information, see Activity policy section. NoNo
dependsOndependsOn Questa proprietà viene usata per definire le dipendenze delle attività e come le attività successive dipendono dalle attività precedenti.This property is used to define activity dependencies, and how subsequent activities depend on previous activities. Per altre informazioni, vedere Dipendenza delle attività.For more information, see Activity dependency NoNo

Criteri di attivitàActivity policy

Criteri che influiscono sul comportamento runtime di un'attività, offrendo le opzioni di configurabilità.Policies affect the run-time behavior of an activity, giving configurability options. I criteri delle attività sono disponibili solo per le attività di esecuzione.Activity Policies are only available for execution activities.

Definizione JSON dei criteri di attivitàActivity policy JSON definition

{
    "name": "MyPipelineName",
    "properties": {
      "activities": [
        {
          "name": "MyCopyBlobtoSqlActivity"
          "type": "Copy",
          "typeProperties": {
            ...
          },
         "policy": {
            "timeout": "00:10:00",
            "retry": 1,
            "retryIntervalInSeconds": 60,
            "secureOutput": true
         }
        }
      ],
        "parameters": {
           ...
        }
    }
}
Nome JSONJSON name DescrizioneDescription Valori consentitiAllowed Values ObbligatorioRequired
timeouttimeout Specifica il timeout per l'attività da eseguire.Specifies the timeout for the activity to run. TimespanTimespan No.No. Il timeout predefinito è 7 giorni.Default timeout is 7 days.
retryretry Numero massimo di tentativiMaximum retry attempts IntegerInteger No.No. Il valore predefinito è 0Default is 0
retryIntervalInSecondsretryIntervalInSeconds Il ritardo tra tentativi di ripetizione espresso in secondiThe delay between retry attempts in seconds IntegerInteger No.No. Valore predefinito è 30 secondiDefault is 30 seconds
secureOutputsecureOutput Se impostato su true, l'output dall'attività viene considerato protetto e non viene registrato per il monitoraggio.When set to true, output from activity is considered as secure and will not be logged to monitoring. BooleanBoolean No.No. Il valore predefinito è false.Default is false.

Attività di controlloControl activity

Le attività di controllo presentano la seguente struttura di primo livello:Control activities have the following top-level structure:

{
    "name": "Control Activity Name",
    "description": "description",
    "type": "<ActivityType>",
    "typeProperties":
    {
    },
    "dependsOn":
    {
    }
}
TagTag DescrizioneDescription ObbligatorioRequired
namename Nome dell'attività.Name of the activity. Specificare un nome che rappresenti l'azione eseguita dall'attività.Specify a name that represents the action that the activity performs.
  • Numero massimo di caratteri: 55Maximum number of characters: 55
  • Deve iniziare con una lettera, un numero o un carattere di sottolineatura (_)Must start with a letter number, or an underscore (_)
  • Non sono ammessi i caratteri seguenti: ".", "+", "?", "/", "<", ">", "*", "%", "&", ":", ""Following characters are not allowed: “.”, “+”, “?”, “/”, “<”,”>”,”*”,”%”,”&”,”:”,”\”
YesYes
    descriptiondescription Testo descrittivo per il tipo o lo scopo dell'attivitàText describing what the activity or is used for Yes
    typetype Tipo di attività.Type of the activity. Per informazioni sui diversi tipi di attività, vedere le sezioni Attività di spostamento dei dati, Attività di trasformazione dei dati e Attività di controllo.See the data movement activities, data transformation activities, and control activities sections for different types of activities. YesYes
    typePropertiestypeProperties Le proprietà nella sezione typeProperties dipendono da ogni tipo di attività.Properties in the typeProperties section depend on each type of activity. Per visualizzare le proprietà del tipo per un'attività, fare clic sui collegamenti all'attività nella sezione precedente.To see type properties for an activity, click links to the activity in the previous section. NoNo
    dependsOndependsOn Questa proprietà viene usata per definire la dipendenza delle attività e come le attività successive dipendono dalle attività precedenti.This property is used to define Activity Dependency, and how subsequent activities depend on previous activities. Per altre informazioni, vedere la Dipendenza delle attività.For more information, see activity dependency. NoNo

    Dipendenza di attivitàActivity dependency

    La dipendenza delle attività definisce in che modo le attività successive dipendono dalle attività precedenti, determinando la condizione dell'eventuale esecuzione dell'attività successiva.Activity Dependency defines how subsequent activities depend on previous activities, determining the condition whether to continue executing the next task. Un'attività può dipendere da una o più attività precedenti con condizioni di dipendenza diverse.An activity can depend on one or multiple previous activities with different dependency conditions.

    Le diverse condizioni di dipendenza sono: Succeeded, Failed, Skipped, Completed.The different dependency conditions are: Succeeded, Failed, Skipped, Completed.

    Ad esempio, se una pipeline dispone di un'attività A-> attività B, i diversi scenari possibili sono:For example, if a pipeline has Activity A -> Activity B, the different scenarios that can happen are:

    • L'attività B ha una condizione di dipendenza dall'attività A di tipo succeeded: l'attività B viene eseguita solo se lo stato finale dell'attività A è succeeded.Activity B has dependency condition on Activity A with succeeded: Activity B only runs if Activity A has a final status of succeeded
    • L'attività B ha una condizione di dipendenza dall'attività A di tipo failed: l'attività B viene eseguita solo se lo stato finale dell'attività A è failed.Activity B has dependency condition on Activity A with failed: Activity B only runs if Activity A has a final status of failed
    • L'attività B ha una condizione di dipendenza dall'attività A di tipo completed: l'attività B viene eseguita se lo stato finale dell'attività A è succeeded o failed.Activity B has dependency condition on Activity A with completed: Activity B runs if Activity A has a final status of succeeded or failed
    • L'attività B ha una condizione di dipendenza dall'attività A di tipo skipped: l'attività B viene eseguita se lo stato finale dell'attività A è skipped.Activity B has dependency condition on Activity A with skipped: Activity B runs if Activity A has a final status of skipped. Lo stato skipped (operazione ignorata) si verifica nello scenario Attività X -> Attività Y -> Attività Z, in cui ogni attività viene eseguita solo se l'attività precedente ha esito positivo.Skipped occurs in the scenario of Activity X -> Activity Y -> Activity Z, where each activity runs only if the previous activity succeeds. Se l'attività X ha esito negativo, lo stato dell'attività Y è "skipped" perché non viene mai eseguita.If Activity X fails, then Activity Y has a status of “Skipped” because it never executes. Analogamente, anche lo stato dell'attività Z è "skipped".Similarly, Activity Z has a status of “Skipped” as well.

    Esempio: l'attività 2 dipende dall'esito positivo dell'attività 1Example: 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": {
           }
        }
    }
    
    

    Esempio di una pipeline di copiaSample copy pipeline

    In questa pipeline di esempio è presente un'attività di tipo Copy in the attività .In the following sample pipeline, there is one activity of type Copy in the activities section. In questo esempio, l'attività di copia consente di copiare i dati da un'archiviazione BLOB di Azure a un database SQL di Azure.In this sample, the copy activity copies data from an Azure Blob storage to an 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"
            }
          }
        ]
      }
    }
    

    Tenere presente quanto segue:Note the following points:

    • Nella sezione delle attività esiste una sola attività con l'oggetto type impostato su Copy.In the activities section, there is only one activity whose type is set to Copy.
    • L'input per l'attività è impostato su InputDataset e l'output è impostato su OutputDataset.Input for the activity is set to InputDataset and output for the activity is set to OutputDataset. Vedere l'articolo Set di dati per la definizione di set di dati in JSON.See Datasets article for defining datasets in JSON.
    • Nella sezione typeProperties vengono specificati BlobSource come tipo di origine e SqlSink come tipo di sink.In the typeProperties section, BlobSource is specified as the source type and SqlSink is specified as the sink type. Nella sezione Attività di spostamento dati scegliere l'archivio dati che si vuole usare come origine o sink per avere altre informazioni sullo spostamento dei dati da e verso tale archivio dati.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.

    Per la procedura dettagliata sulla creazione di questa pipeline, vedere Avvio rapido: Creare una data factory.For a complete walkthrough of creating this pipeline, see Quickstart: create a data factory.

    Esempio di una pipeline di trasformazioneSample transformation pipeline

    In questa pipeline di esempio è presente un'attività di tipo HDInsightHive in the attività .In the following sample pipeline, there is one activity of type HDInsightHive in the activities section. In questo esempio, l' attività Hive di HDInsight trasforma i dati da un archivio BLOB di Azure tramite l'esecuzione di un file di script Hive in un cluster Hadoop di HDInsight.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"
                }
            ]
        }
    }
    

    Tenere presente quanto segue:Note the following points:

    • Nella sezione attività esiste una sola attività con l'oggetto type impostato su HDInsightHive.In the activities section, there is only one activity whose type is set to HDInsightHive.
    • Il file di script Hive, partitionweblogs.hql, viene archiviato nell'account di archiviazione di Azure (specificato da scriptLinkedService, denominato AzureStorageLinkedService) e nella cartella script nel contenitore 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.
    • La sezione defines viene usata per specificare le impostazioni di runtime che vengono passate allo script Hive come valori di configurazione Hive, ad esempio {hiveconf:inputtable} e ${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}).

    La sezione typeProperties è diversa per ogni attività di trasformazione.The typeProperties section is different for each transformation activity. Per altre informazioni sulle proprietà del tipo supportate per un'attività di trasformazione, fare clic sull'attività di trasformazione nelle attività di trasformazione dei dati.To learn about type properties supported for a transformation activity, click the transformation activity in the Data transformation activities.

    Per la procedura dettagliata sulla creazione di questa pipeline, vedere Esercitazione: Trasformare i dati usando Spark.For a complete walkthrough of creating this pipeline, see Tutorial: transform data using Spark.

    Attività multiple in una pipelineMultiple activities in a pipeline

    Le due pipeline di due esempio precedenti contengono una sola attività.The previous two sample pipelines have only one activity in them. È possibile avere più di un'attività in una pipeline.You can have more than one activity in a pipeline. Se sono disponibili più attività in una pipeline e le attività successive non dipendono da quelle precedenti, le attività possono essere eseguite in parallelo.If you have multiple activities in a pipeline and subsequent activities are not dependent on previous activities, the activities may run in parallel.

    È possibile concatenare due attività usando la dipendenza delle attività, che definisce in che modo le attività successive dipendono dalle attività precedenti, determinando la condizione se si passerà all'esecuzione dell'attività successiva.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. Un'attività può dipendere da una o più attività precedenti con condizioni di dipendenza diverse.An activity can depend on one or more previous activities with different dependency conditions.

    Pianificazione delle pipelineScheduling pipelines

    Le pipeline vengono pianificate da trigger.Pipelines are scheduled by triggers. Esistono diversi tipi di trigger: il trigger dell'utilità di pianificazione che consente di attivare le pipeline con una pianificazione basata sul tempo reale e il trigger manuale che attiva le pipeline su richiesta.There are different types of triggers (scheduler trigger, which allows pipelines to be triggered on a wall-clock schedule, as well as manual trigger, which triggers pipelines on-demand). Per altre informazioni sui trigger, vedere l'articolo Esecuzione e trigger di pipeline.For more information about triggers, see pipeline execution and triggers article.

    Per fare in modo che il trigger attivi l'esecuzione di una pipeline, è necessario includere un riferimento di pipeline della pipeline specifica nella definizione del trigger.To have your trigger kick off a pipeline run, you must include a pipeline reference of the particular pipeline in the trigger definition. Pipeline e trigger hanno una relazione n-m.Pipelines & triggers have an n-m relationship. Più trigger possono avviare una singola pipeline e lo stesso trigger può avviare più pipeline.Multiple triggers can kick off a single pipeline and the same trigger can kick off multiple pipelines. Dopo che il trigger è stato definito è necessario avviarlo per iniziare ad attivare la pipeline.Once the trigger is defined, you must start the trigger to have it start triggering the pipeline. Per altre informazioni sui trigger, vedere l'articolo Esecuzione e trigger di pipeline.For more information about triggers, see pipeline execution and triggers article.

    Ad esempio, si può disporre di un trigger dell'utilità di pianificazione, "Trigger A", per avviare la pipeline, "MyCopyPipeline".For example, say you have a scheduler trigger, “Trigger A” that I wish to kick off my pipeline, “MyCopyPipeline.” Definire il trigger come illustrato nell'esempio seguente:You define the trigger as shown in the following example:

    Definizione del trigger ATrigger A definition

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

    Passaggi successiviNext steps

    Vedere le esercitazioni seguenti per istruzioni dettagliate sulla creazione di pipeline con le attività:See the following tutorials for step-by-step instructions for creating pipelines with activities: