Trasformazione origine nel flusso di dati di mappingSource transformation in mapping data flow

SI APPLICA A: Azure Data Factory Azure Synapse Analytics

Una trasformazione origine configura l'origine dati per il flusso di dati.A source transformation configures your data source for the data flow. Quando si progettano i flussi di dati, il primo passaggio consiste sempre nella configurazione di una trasformazione di origine.When you design data flows, your first step is always configuring a source transformation. Per aggiungere un'origine, selezionare la casella Aggiungi origine nell'area di disegno del flusso di dati.To add a source, select the Add Source box in the data flow canvas.

Ogni flusso di dati richiede almeno una trasformazione di origine, ma è possibile aggiungere tutte le origini necessarie per completare le trasformazioni dei dati.Every data flow requires at least one source transformation, but you can add as many sources as necessary to complete your data transformations. È possibile unire tali origini insieme a una trasformazione join, Lookup o Union.You can join those sources together with a join, lookup, or a union transformation.

Ogni trasformazione di origine è associata esattamente a un set di dati o a un servizio collegato.Each source transformation is associated with exactly one dataset or linked service. Il set di dati definisce la forma e il percorso dei dati da cui si desidera eseguire la scrittura o la lettura.The dataset defines the shape and location of the data you want to write to or read from. Se si usa un set di dati basato su file, è possibile usare i caratteri jolly e gli elenchi di file nell'origine per lavorare con più di un file alla volta.If you use a file-based dataset, you can use wildcards and file lists in your source to work with more than one file at a time.

Set di impostazioni di set di righeInline datasets

La prima decisione da effettuare quando si crea una trasformazione di origine è se le informazioni sull'origine sono definite all'interno di un oggetto DataSet o nella trasformazione di origine.The first decision you make when you create a source transformation is whether your source information is defined inside a dataset object or within the source transformation. La maggior parte dei formati è disponibile solo in uno o nell'altro.Most formats are available in only one or the other. Per informazioni su come usare un connettore specifico, vedere il documento connettore appropriato.To learn how to use a specific connector, see the appropriate connector document.

Quando un formato è supportato sia per inline che per un oggetto DataSet, sono disponibili entrambi i vantaggi.When a format is supported for both inline and in a dataset object, there are benefits to both. Gli oggetti DataSet sono entità riutilizzabili che possono essere utilizzate in altri flussi di dati e attività, ad esempio la copia.Dataset objects are reusable entities that can be used in other data flows and activities such as Copy. Queste entità riutilizzabili sono particolarmente utili quando si utilizza uno schema con protezione avanzata.These reusable entities are especially useful when you use a hardened schema. I set di impostazioni non sono basati su Spark.Datasets aren't based in Spark. In alcuni casi potrebbe essere necessario eseguire l'override di determinate impostazioni o proiezione dello schema nella trasformazione di origine.Occasionally, you might need to override certain settings or schema projection in the source transformation.

I set di dati inline sono consigliati quando si utilizzano schemi flessibili, istanze di origine monouso o origini con parametri.Inline datasets are recommended when you use flexible schemas, one-off source instances, or parameterized sources. Se l'origine è fortemente parametrizzata, i set di dati inline non consentono di creare un oggetto "fittizio".If your source is heavily parameterized, inline datasets allow you to not create a "dummy" object. I set di dati inline sono basati su Spark e le relative proprietà sono native per il flusso di dati.Inline datasets are based in Spark, and their properties are native to data flow.

Per usare un set di dati inline, selezionare il formato desiderato nel selettore del tipo di origine .To use an inline dataset, select the format you want in the Source type selector. Anziché selezionare un set di dati di origine, selezionare il servizio collegato a cui si desidera connettersi.Instead of selecting a source dataset, you select the linked service you want to connect to.

Screenshot che mostra la selezione inline.Screenshot that shows Inline selected.

Tipi di origine supportatiSupported source types

Il flusso di dati di mapping segue un approccio di estrazione, caricamento e trasformazione (ELT) e funziona con i set di dati di staging che sono tutti in Azure.Mapping data flow follows an extract, load, and transform (ELT) approach and works with staging datasets that are all in Azure. Attualmente, i set di dati seguenti possono essere utilizzati in una trasformazione di origine.Currently, the following datasets can be used in a source transformation.

ConnettoreConnector FormatoFormat Set di dati/inlineDataset/inline
Archiviazione BLOB di AzureAzure Blob Storage AvroAvro
Testo delimitatoDelimited text
DeltaDelta
ExcelExcel
JSONJSON
ORCORC
ParquetParquet
XMLXML
✓/✓✓/✓
✓/✓✓/✓
✓/✓✓/✓
✓/✓✓/✓
✓/-✓/-
✓/✓✓/✓
✓/-✓/-
✓/✓✓/✓
Azure Cosmos DB (API SQL)Azure Cosmos DB (SQL API) ✓/-✓/-
Azure Data Lake Storage Gen1Azure Data Lake Storage Gen1 AvroAvro
Testo delimitatoDelimited text
ExcelExcel
JSONJSON
ORCORC
ParquetParquet
XMLXML
✓/✓✓/✓
✓/✓✓/✓
✓/✓✓/✓
✓/-✓/-
✓/✓✓/✓
✓/-✓/-
✓/✓✓/✓
Azure Data Lake Storage Gen2Azure Data Lake Storage Gen2 AvroAvro
Common Data Model (CDM)Common Data Model
Testo delimitatoDelimited text
DeltaDelta
ExcelExcel
JSONJSON
ORCORC
ParquetParquet
XMLXML
✓/✓✓/✓
-/✓-/✓
✓/✓✓/✓
✓/✓✓/✓
✓/✓✓/✓
✓/-✓/-
✓/✓✓/✓
✓/-✓/-
✓/✓✓/✓
Database di Azure per MySQLAzure Database for MySQL ✓/✓✓/✓
Database di Azure per PostgreSQLAzure Database for PostgreSQL ✓/✓✓/✓
Database SQL di AzureAzure SQL Database ✓/-✓/-
Istanza gestita di database SQL di AzureAzure SQL Managed Instance ✓/-✓/-
Azure Synapse AnalyticsAzure Synapse Analytics ✓/-✓/-
HiveHive -/✓-/✓
SnowflakeSnowflake ✓/✓✓/✓

Le impostazioni specifiche di questi connettori si trovano nella scheda Opzioni di origine . Esempi di script di flusso di dati e informazioni su queste impostazioni sono disponibili nella documentazione del connettore.Settings specific to these connectors are located on the Source options tab. Information and data flow script examples on these settings are located in the connector documentation.

Azure Data Factory ha accesso a più di 90 connettori nativi.Azure Data Factory has access to more than 90 native connectors. Per includere dati da tali origini nel flusso di dati, usare l'attività di copia per caricare i dati in una delle aree di gestione temporanea supportate.To include data from those other sources in your data flow, use the Copy Activity to load that data into one of the supported staging areas.

Impostazioni origineSource settings

Dopo aver aggiunto un'origine, configurare tramite la scheda impostazioni di origine . Qui è possibile selezionare o creare il set di dati a cui si riportano i punti di origine.After you've added a source, configure via the Source settings tab. Here you can pick or create the dataset your source points at. È anche possibile selezionare le opzioni relative allo schema e al campionamento per i dati.You can also select schema and sampling options for your data.

È possibile configurare i valori di sviluppo per i parametri del set di dati nelle impostazioni di debug.Development values for dataset parameters can be configured in debug settings. (La modalità di debug deve essere attivata).(Debug mode must be turned on.)

Screenshot che mostra la scheda Impostazioni di origine.Screenshot that shows the Source settings tab.

Nome del flusso di output: nome della trasformazione di origine.Output stream name: The name of the source transformation.

Tipo di origine: scegliere se si desidera utilizzare un set di dati inline o un oggetto DataSet esistente.Source type: Choose whether you want to use an inline dataset or an existing dataset object.

Test connessione: verificare se il servizio Spark del flusso di dati è in grado di connettersi al servizio collegato usato nel set di dati di origine.Test connection: Test whether or not the data flow's Spark service can successfully connect to the linked service used in your source dataset. Per abilitare questa funzionalità, è necessario attivare la modalità di debug.Debug mode must be on for this feature to be enabled.

Schema Drift: la deriva dello schema è la capacità di data factory di gestire in modo nativo gli schemi flessibili nei flussi di dati senza dover definire in modo esplicito le modifiche apportate alle colonne.Schema drift: Schema drift is the ability of Data Factory to natively handle flexible schemas in your data flows without needing to explicitly define column changes.

  • Selezionare la casella di controllo Consenti la deriva dello schema se le colonne di origine vengono modificate spesso.Select the Allow schema drift check box if the source columns will change often. Questa impostazione consente a tutti i campi di origine in ingresso di scorrere le trasformazioni nel sink.This setting allows all incoming source fields to flow through the transformations to the sink.

  • Selezionando deduci tipi di colonna derivati viene indicato data factory di rilevare e definire i tipi di dati per ogni nuova colonna individuata.Selecting Infer drifted column types instructs Data Factory to detect and define data types for each new column discovered. Se questa funzionalità è disattivata, tutte le colonne in sequenza saranno di tipo stringa.With this feature turned off, all drifted columns will be of type string.

Convalida schema: Se convalida schema è selezionata, il flusso di dati non verrà eseguito se i dati di origine in ingresso non corrispondono allo schema definito del set di dati.Validate schema: If Validate schema is selected, the data flow will fail to run if the incoming source data doesn't match the defined schema of the dataset.

Ignora conteggio righe: il campo Skip line count specifica il numero di righe da ignorare all'inizio del set di dati.Skip line count: The Skip line count field specifies how many lines to ignore at the beginning of the dataset.

Campionamento: abilitare il campionamento per limitare il numero di righe dall'origine.Sampling: Enable Sampling to limit the number of rows from your source. Usare questa impostazione quando si testano o si campionano i dati dall'origine a scopo di debug.Use this setting when you test or sample data from your source for debugging purposes. Questa operazione è molto utile quando si eseguono flussi di dati in modalità di debug da una pipeline.This is very useful when executing data flows in debug mode from a pipeline.

Per convalidare che l'origine sia configurata correttamente, attivare la modalità di debug e recuperare un'anteprima dei dati.To validate your source is configured correctly, turn on debug mode and fetch a data preview. Per altre informazioni, vedere modalità di debug.For more information, see Debug mode.

Nota

Quando la modalità di debug è attivata, la configurazione del limite di righe nelle impostazioni di debug sovrascriverà l'impostazione di campionamento nell'origine durante l'anteprima dei dati.When debug mode is turned on, the row limit configuration in debug settings will overwrite the sampling setting in the source during data preview.

Opzioni origineSource options

La scheda Opzioni di origine contiene impostazioni specifiche per il connettore e il formato scelti.The Source options tab contains settings specific to the connector and format chosen. Per ulteriori informazioni ed esempi, vedere la documentazione del connettorepertinente.For more information and examples, see the relevant connector documentation.

ProiezioneProjection

Analogamente agli schemi nei set di dati, la proiezione in un'origine definisce le colonne di dati, i tipi e i formati dei dati di origine.Like schemas in datasets, the projection in a source defines the data columns, types, and formats from the source data. Per la maggior parte dei tipi di set di dati, ad esempio SQL e parquet, la proiezione in un'origine è fissa per riflettere lo schema definito in un set di dati.For most dataset types, such as SQL and Parquet, the projection in a source is fixed to reflect the schema defined in a dataset. Quando i file di origine non sono fortemente tipizzati, ad esempio file flat. csv anziché file parquet, è possibile definire i tipi di dati per ogni campo nella trasformazione di origine.When your source files aren't strongly typed (for example, flat .csv files rather than Parquet files), you can define the data types for each field in the source transformation.

Screenshot che mostra le impostazioni nella scheda proiezione.Screenshot that shows settings on the Projection tab.

Se nel file di testo non è definito alcuno schema, selezionare rileva tipo di dati in modo che data factory campionare e dedurre i tipi di dati.If your text file has no defined schema, select Detect data type so that Data Factory will sample and infer the data types. Selezionare Definisci il formato predefinito per rilevare automaticamente i formati di dati predefiniti.Select Define default format to autodetect the default data formats.

Reimposta schema Reimposta la proiezione su ciò che viene definito nel set di dati a cui si fa riferimento.Reset schema resets the projection to what is defined in the referenced dataset.

È possibile modificare i tipi di dati delle colonne in una trasformazione colonna derivata downstream.You can modify the column data types in a downstream derived-column transformation. Utilizzare una trasformazione seleziona per modificare i nomi delle colonne.Use a select transformation to modify the column names.

Importa schemaImport schema

Selezionare il pulsante Importa schema nella scheda proiezione per usare un cluster di debug attivo per creare una proiezione dello schema.Select the Import schema button on the Projection tab to use an active debug cluster to create a schema projection. È disponibile in ogni tipo di origine.It's available in every source type. L'importazione dello schema qui sostituirà la proiezione definita nel set di dati.Importing the schema here will override the projection defined in the dataset. L'oggetto DataSet non verrà modificato.The dataset object won't be changed.

L'importazione dello schema è utile nei set di dati come Avro e Azure Cosmos DB che supportano strutture di dati complesse che non richiedono la presenza di definizioni dello schema nel set di dati.Importing schema is useful in datasets like Avro and Azure Cosmos DB that support complex data structures that don't require schema definitions to exist in the dataset. Per i set di righe inline, l'importazione dello schema è l'unico modo per fare riferimento ai metadati della colonna senza la deriva dello schema.For inline datasets, importing schema is the only way to reference column metadata without schema drift.

Ottimizzare la trasformazione di origineOptimize the source transformation

La scheda ottimizza consente di modificare le informazioni sulle partizioni a ogni passaggio della trasformazione.The Optimize tab allows for editing of partition information at each transformation step. Nella maggior parte dei casi, l' utilizzo del partizionamento corrente viene ottimizzato per la struttura di partizionamento ideale per un'origine.In most cases, Use current partitioning will optimize for the ideal partitioning structure for a source.

Se si esegue la lettura da un'origine del database SQL di Azure, il partizionamento di origine personalizzato leggerà probabilmente i dati più velocemente.If you're reading from an Azure SQL Database source, custom Source partitioning will likely read data the fastest. Data Factory leggerà le query di grandi dimensioni rendendo le connessioni al database in parallelo.Data Factory will read large queries by making connections to your database in parallel. Questo partizionamento di origine può essere eseguito su una colonna o utilizzando una query.This source partitioning can be done on a column or by using a query.

Screenshot che mostra le impostazioni della partizione di origine.Screenshot that shows the Source partition settings.

Per ulteriori informazioni sull'ottimizzazione all'interno del flusso di dati di mapping, vedere la scheda Optimize.For more information on optimization within mapping data flow, see the Optimize tab.

Passaggi successiviNext steps

Iniziare a compilare il flusso di dati con una trasformazione colonna derivata e una trasformazione selezione.Begin building your data flow with a derived-column transformation and a select transformation.