Compartir vía


Manifiesto de carga de trabajo

Información general

Los archivos WorkloadManifest.xml y Item.xml son necesarios para la definición de cargas de trabajo en Fabric. Contienen las opciones básicas de configuración de cargas de trabajo y elementos de cargas de trabajo para la configuración y actúan como guía para la configuración y administración de cargas de trabajo, ayudando a definir, compartir y registrar detalles esenciales de la carga de trabajo para una integración sin problemas en Fabric.

En nuestro repositorio de muestra, se genera un archivo .nupkg a partir de los archivos XML ubicados en la carpeta src/Packages/manifest durante el proceso de compilación. Este archivo empaquetado contiene toda la información necesaria sobre la carga de trabajo. En el archivo workload-dev-mode.json hay un campo denominado ManifestPackageFilePath que debe apuntar a este archivo .nupkg recién creado.

Proceso de carga y registro

  1. Autenticación de usuario: durante el desarrollo, una vez que se ejecuta la muestra, la autenticación inicia el proceso de carga y registro. Esto garantiza la asociación correcta de la carga de trabajo con su identidad.
  2. Análisis de manifiestos: el manifiesto cargado se somete a análisis para validar su estructura y contenido. Este paso garantiza que el manifiesto tiene el formato correcto y está listo para su posterior procesamiento.
  3. Registro de cargas de trabajo: si el análisis se realiza correctamente, la carga de trabajo se registra en Fabric. Los detalles de configuración esenciales, como el identificador de carga de trabajo, se almacenan en la base de datos de Fabric, lo que permite la administración eficaz de cargas de trabajo.

Manifiesto de carga de trabajo: componentes clave del manifiesto

El manifiesto, cuya estructura viene definida por WorkloadDefinition.xsd, describe los atributos principales de una carga de trabajo, como el nombre, la aplicación y los puntos de conexión.

Atributo SchemaVersion

Representa la versión publicada de WorkloadDefinition.xsd de Fabric.

Atributo WorkloadName

Identificador único de la carga de trabajo. Tenga en cuenta que es necesario tener un prefijo "Org." para workloadName, de modo que el nombre conste de dos palabras con un separador "."; por ejemplo, "Org.MyWorkload". Otros prefijos no son válidos y provocarán un error de carga. Esto se aplicará en los escenarios siguientes: conexión de desarrollo y carga de prueba.

Elemento Version

La versión del manifiesto debe ser compatible con SemVer.

Elemento CloudServiceConfiguration

La configuración del servicio de la carga de trabajo, actualmente solo se admite una configuración.

Configuración de la aplicación Microsoft Entra ID [Azure Active Directory (AAD)]

En la sección <AADApp> se configura la aplicación Microsoft Entra ID [Azure Active Directory (AAD)] para los procesos de autenticación y autorización. AppId representa el identificador único de la aplicación, RedirectUri especifica el URI al que Microsoft Entra ID enviará la respuesta de autenticación y ResourceId dirige al identificador único del recurso al que accede la aplicación. Para obtener más contexto sobre lo que representan ResourceId, AppId y RedirectUri, puede consultar la documentación de autenticación.

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

Consulte la documentación de autenticación para entender mejor AppId, ResourceId y RedirectUri y su relevancia en el contexto de los procesos de autenticación.

Elementos ServiceEndpoint

Representa la configuración de un punto de conexión lógico específico, por ejemplo, el punto de conexión de back-end que incluye la implementación del CRUS del elemento y las API de los trabajos.

  • La configuración del punto de conexión de back-end de la carga de trabajo indica la dirección URL de back-end de la carga de trabajo.
<ServiceEndpoint>
    <Name>Workload</Name>
    <Url>YourWorkloadBackendUrl</Url>
    <IsEndpointResolutionService>...
    <EndpointResolutionContext>...
</ServiceEndpoint>
  • <IsEndpointResolutionService> y EndpointResolutionContext se establecen en función de si el punto de conexión implementa la API de carga de trabajo o solo la resolución del punto de conexión. Consulte Resolución de puntos de conexión para obtener información detallada sobre el contexto de resolución y la respuesta.

Nota:

No se admite la resolución de puntos de conexión para front-end.

Manifiesto de elemento: componentes clave del manifiesto

El manifiesto, cuya estructura viene definida por ItemDefinition.xsd, describe los atributos principales del elemento de una carga de trabajo, como su nombre y las definiciones de trabajo.

Atributo SchemaVersion

Representa la versión publicada de ItemDefinition.xsd de Fabric.

Atributo TypeName

El identificador único de su elemento.

Configuración del programador de trabajos

La sección <JobScheduler> abarca varios elementos que definen el comportamiento y la configuración de la programación, el seguimiento y la administración de trabajos.

  • <OnDemandJobDeduplicateOptions> y <ScheduledJobDeduplicateOptions>: definen las opciones de desduplicación para trabajos de elemento programados y a petición, respectivamente. Las opciones incluyen None (sin desduplicación), PerItem (una ejecución de trabajo para el mismo elemento y tipo de trabajo) y PerUser (una ejecución de trabajo para el mismo usuario y elemento).
  • <ItemJobTypes>: contiene configuraciones para tipos de trabajo de diferentes elementos.
  • <ItemJobType>: describe un tipo de trabajo específico.
  • <Name>: el nombre del tipo de trabajo. Debe usar el nombre del elemento como prefijo.

Por ejemplo, consideremos nuestra carga de trabajo de muestra, que incluye tres trabajos específicos definidos en la sección <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>
  • CalculateAsText Job: este tipo de trabajo controla los cálculos basados en texto, tomando Operand1 y Operand2, realizando la operación seleccionada y guardando el resultado en el almacén de lago de datos.
  • CalculateAsParquet Job: específicamente adaptado para trabajar con datos de Parquet, este tipo de trabajo también toma Operand1 y Operand2, realiza la operación seleccionada y almacena el resultado en el almacén de lago de datos, siguiendo el formato de datos Parquet. Consulte la guía del centro de supervisión para obtener más información sobre los trabajos y la configuración relacionada.

En resumen, los manifiestos de carga de trabajo y elemento sirven como documentos fundamentales para agregar cargas de trabajo personalizadas a Fabric. El proceso de autenticación desencadena una secuencia sencilla de acciones: carga, análisis y registro, lo que garantiza una configuración adecuada y una administración eficaz de cargas de trabajo dentro del ecosistema de Azure.