Condividi tramite


Manifesto dei carichi di lavoro

Panoramica

I file WorkloadManifest.xml e Item.xml sono necessari per la definizione del carico di lavoro in Fabric. Contengono le impostazioni di configurazione di base dei carichi di lavoro e degli elementi del carico di lavoro per la configurazione e fungono da guida per la configurazione e la gestione del carico di lavoro, consentendo di definire, condividere e registrare i dettagli essenziali del carico di lavoro per un'integrazione uniforme in Fabric.

Nel repository di esempio viene generato un file .nupkg dai file XML che si trovano nella cartella src/Packages/manifest durante il processo di compilazione. Questo file in pacchetto contiene tutte le informazioni necessarie sul carico di lavoro. Nel file workload-dev-mode.json è presente un campo denominato ManifestPackageFilePath che dovrebbe puntare a questo file .nupkg appena creato.

Processo di caricamento e registrazione

  1. Autenticazione utente: durante lo sviluppo, una volta eseguito l'esempio, l'autenticazione avvia il processo di caricamento e registrazione. In questo modo si garantisce l'associazione corretta del carico di lavoro con l'identità.
  2. Analisi del manifesto: il manifesto caricato viene sottoposto all'analisi per convalidare la struttura e il contenuto. Questo passaggio garantisce che il manifesto sia formattato correttamente e pronto per un'ulteriore elaborazione.
  3. Registrazione del carico di lavoro: se l'analisi ha esito positivo, il carico di lavoro viene registrato in Fabric. I dettagli di configurazione essenziali, come l'ID del carico di lavoro, vengono archiviati nel database di Fabric, consentendo una gestione efficace del carico di lavoro.

Manifesto del carico di lavoro - Componenti del manifesto chiave

Il manifesto, la cui struttura è definita da WorkloadDefinition.xsd, descrive gli attributi principali di un carico di lavoro, come nome, applicazione ed endpoint.

Attributo SchemaVersion

Rappresenta la versione pubblicata di WorkloadDefinition.xsd di Fabric.

Attributo WorkloadName

Identificatore univoco del carico di lavoro. È necessario avere un "Org". prefisso per workloadName tale nome è costituito da due parole con separatore '.', ad esempio 'Org.MyWorkload'. Altri prefissi non sono validi e causeranno un errore di caricamento. Questa operazione verrà applicata negli scenari seguenti: connessione di sviluppo, caricamento di test.

Elemento Version

La versione del manifesto deve essere conforme a SemVer.

Elemento CloudServiceConfiguration

La configurazione del servizio del carico di lavoro; attualmente è supportata solo una configurazione.

Microsoft Entra ID [Azure Active Directory (AAD)] Configurazione dell'applicazione

La sezione <AADApp> configura l'applicazione Microsoft Entra ID [Azure Active Directory (AAD)] per i processi di autenticazione e autorizzazione. AppId rappresenta l'identificatore univoco per l'applicazione, RedirectUri specifica l'URI a cui Microsoft Entra ID invierà la risposta di autenticazione e i punti ResourceId all'identificatore univoco per la risorsa a cui accede l'applicazione. Per altre informazioni su ciò che ResourceId, AppId e RedirectUri rappresentano, è possibile fare riferimento alla documentazione sull'autenticazione.

<AADApp>
    <AppId>YourApplicationId</AppId>
    <RedirectUri>YourRedirectUri</RedirectUri>
    <ResourceId>YourResourceId</ResourceId>
</AADApp>

Consultare la documentazione sull'autenticazione per una maggiore comprensione di AppId, ResourceId e RedirectUri e il relativo significato nel contesto dei processi di autenticazione.

Elementi ServiceEndpoint

Rappresentare la configurazione di un endpoint logico specifico, ad esempio l'endpoint back-end che include l'implementazione per le API CRUD dell'elemento e dei processi.

  • La configurazione per l'endpoint back-end del carico di lavoro indica l'URL back-end del carico di lavoro.
<ServiceEndpoint>
    <Name>Workload</Name>
    <Url>YourWorkloadBackendUrl</Url>
    <IsEndpointResolutionService>...
    <EndpointResolutionContext>...
</ServiceEndpoint>
  • <IsEndpointResolutionService> e EndpointResolutionContext vengono impostati in base al fatto che l'endpoint implementi l'API del carico di lavoro o solo la risoluzione dell'endpoint. Per informazioni dettagliate sul contesto di risoluzione e sulla risposta, vedere Risoluzione degli endpoint.

Nota

La risoluzione degli endpoint per front-end non è supportata.

Manifesto dell'elemento - Componenti chiave del manifesto

Il manifesto, la cui struttura è definita da ItemDefinition.xsd, descrive gli attributi principali dell'elemento di un carico di lavoro, come le definizioni di nome e processo.

Attributo SchemaVersion

Rappresenta la versione pubblicata di ItemDefinition.xsd di Fabric.

Attributo TypeName

Identificatore univoco dell'elemento.

Configurazione dell'utilità di programmazione processi

La sezione <JobScheduler> include vari elementi che definiscono il comportamento e le impostazioni di programmazione, rilevamento e gestione dei processi.

  • <OnDemandJobDeduplicateOptions> e <ScheduledJobDeduplicateOptions>: definiscono rispettivamente le opzioni di deduplicazione per i processi di elementi su richiesta e pianificati. Le opzioni includono None (nessuna deduplicazione), PerItem (un processo eseguito per lo stesso elemento e tipo di processo) e PerUser (un processo eseguito per lo stesso utente e elemento).
  • <ItemJobTypes>: contiene configurazioni per tipi di processi di elementi diversi.
  • <ItemJobType>: descrive un tipo di processo specifico.
  • <Name>: il nome del tipo di processo. Usare il nome dell'elemento come prefisso.

Si consideri ad esempio il carico di lavoro di esempio, che include tre processi specifici definiti all'interno della sezione <ItemJobTypes>:

<JobScheduler>
    <OnDemandJobDeduplicateOptions>PerItem</OnDemandJobDeduplicateOptions>
    <ScheduledJobDeduplicateOptions>PerItem</ScheduledJobDeduplicateOptions>
    <ItemJobTypes>
    <ItemJobType Name="Org.WorkloadSample.SampleWorkloadItem.ScheduledJob" />
    <ItemJobType Name="Org.WorkloadSample.SampleWorkloadItem.CalculateAsText" />
    <ItemJobType Name="Org.WorkloadSample.SampleWorkloadItem.CalculateAsParquet" />
    </ItemJobTypes>
</JobScheduler>
  • Processo CalculateAsText: questo tipo di processo gestisce calcoli basati su testo, prendendo Operand1 e Operand2, eseguendo l'operazione selezionata e salvando il risultato nella lakehouse.
  • Processo CalculateAsParquet: specificamente personalizzato per l'uso dei dati Parquet, questo tipo di processo accetta Operand1 anche e Operand2, esegue l'operazione selezionata e archivia il risultato nel lakehouse, seguendo il formato dati Parquet. Per altre informazioni sui processi e sulla configurazione correlata, vedere la guida all'hub di monitoraggio.

In sintesi, i manifesti del carico di lavoro e dell'elemento fungono da documenti di base per l'aggiunta di carichi di lavoro personalizzati a Fabric. Il processo di autenticazione attiva una semplice sequenza di azioni: caricamento, analisi e registrazione, garantendo una corretta configurazione e una gestione efficiente dei carichi di lavoro all'interno dell'ecosistema di Azure.