Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Nota:
Esta característica está actualmente en versión preliminar y solo está disponible para Dataflow Gen2 con CI/CD. Para obtener más información sobre cómo aprovechar esta funcionalidad en escenarios de integración continua o implementación continua (CI/CD), asegúrese de leer el artículo sobre arquitecturas de soluciones de CI/CD y ALM para Dataflow Gen2 y el tutorial de un extremo a otro sobre referencias de variables en un flujo de datos.
Las bibliotecas de variables de Fabric ofrecen una manera centralizada de administrar los valores de configuración en las cargas de trabajo de Microsoft Fabric. Con la nueva integración en Dataflow Gen2 (versión preliminar), puede hacer referencia a estas variables directamente en el flujo de datos, lo que permite el comportamiento dinámico entre entornos y simplifica los flujos de trabajo de CI/CD.
Prerrequisitos
Para usar bibliotecas de variables de Fabric en Dataflow Gen2, asegúrese de lo siguiente:
Tiene permiso para crear y administrar bibliotecas de variables de Fabric.
Está trabajando con Dataflow Gen2 con CI/CD.
Uso de bibliotecas de variables de Fabric en Dataflow Gen2
Dentro de Dataflow Gen2, puede hacer referencia a una variable mediante una de las siguientes funciones:
El identificador esperado que se debe pasar a cualquiera de estas dos funciones debe seguir el formato de:
$(/**/LibraryName/VariableName)
Los ejemplos siguientes para ambas funciones en el escenario en el que tiene una biblioteca de variables denominada My Library y una variable de la cadena de tipo denominada My Variable:
Variable.ValueOrDefault("$(/**/My Library/My Variable)", "Sample")
Variable.Value("$(/**/My Library/My Variable)")
Al aplicar esta función a un script de consulta, vamos a tomar la siguiente consulta de ejemplo que se conecta a una tabla denominada Table1 desde un elemento LakehouseId y WorkspaceId específico mediante el conector Fabric Lakehouse.
let
Source = Lakehouse.Contents([]),
#"Navigation 1" = Source{[workspaceId = "cfafbeb1-8037-4d0c-896e-a46fb27ff229"]}[Data],
#"Navigation 2" = #"Navigation 1"{[lakehouseId = "5b218778-e7a5-4d73-8187-f10824047715"]}[Data],
#"Navigation 3" = #"Navigation 2"{[Id = "Table1", ItemKind = "Table"]}[Data]
in
#"Navigation 3"
Tiene previsto reemplazar los valores pasados para workspaceId y lakehouseId para que, en escenarios de CI/CD, apunte dinámicamente al elemento correcto en la etapa correcta.
Para ello, en la misma área de trabajo en la que se encuentra el flujo de datos, también tiene una biblioteca de variables denominada My Library que contiene las siguientes variables a las que planea hacer referencia en el flujo de datos:
| Nombre de la variable | Tipo de variable | Conjunto de valores predeterminado |
|---|---|---|
| ID del espacio de trabajo | String | a8a1bffa-7eea-49dc-a1d2-6281c1d031f1 |
| ID de Lakehouse | String | 37dc8a41-dea9-465d-b528-3e95043b2356 |
Con esta información, puede modificar el script de consulta para reemplazar los valores que dan como resultado el siguiente script:
let
Source = Lakehouse.Contents([]),
#"Navigation 1" = Source{[workspaceId = Variable.ValueOrDefault("$(/**/My Library/Workspace ID)", "cfafbeb1-8037-4d0c-896e-a46fb27ff229")]}[Data],
#"Navigation 2" = #"Navigation 1"{[lakehouseId = Variable.ValueOrDefault("$(/**/My Library/Lakehouse ID)","5b218778-e7a5-4d73-8187-f10824047715")]}[Data],
#"Navigation 3" = #"Navigation 2"{[Id = "Table1", ItemKind = "Table"]}[Data]
in
#"Navigation 3"
Al ejecutar el flujo de datos con el script modificado, se resuelve en el valor de la variable y el tipo de datos correcto definido por la variable. Esto apunta a un área de trabajo diferente y Lakehouse en función de los valores disponibles en el momento de ejecutar el flujo de datos.
Precaución
El editor de Power Query no admite actualmente la evaluación de variables. Se recomienda usar la función Variable.ValueOrDefault para asegurarse de que la experiencia de creación usa el valor predeterminado para la creación de prototipos.
El uso de un valor predeterminado a través de Variable.ValueOrDefault garantiza que la fórmula se resuelva incluso cuando copie o mueva la solución a otro entorno que no tenga la biblioteca de variables de referencia. En tiempo de ejecución, la variable se resuelve en el valor correcto.
Consideraciones y limitaciones
En la lista siguiente se describen las restricciones y comportamientos importantes que se deben tener en cuenta al usar bibliotecas de variables de Fabric con Dataflow Gen2. Estas limitaciones afectan a cómo se hace referencia a las variables, se evalúan y se aplican durante el diseño y el tiempo de ejecución.
Ámbito del espacio de trabajo: las bibliotecas de variables deben residir en el mismo área de trabajo que Dataflow Gen2 con CI/CD.
Ubicación de referencia: las variables solo se pueden usar dentro del archivo mashup.pq de un flujo de datos Gen2 con CI/CD.
Comportamiento en tiempo de ejecución: los valores de las variables se recuperan al principio de una operación de ejecución y se conservan durante toda la operación. Los cambios que se producen en una biblioteca durante una ejecución de flujo de datos no detienen ni afectan a su ejecución.
Compatibilidad con el editor de Power Query: no hay compatibilidad actual para resolver o evaluar variables en el editor de Power Query.
Usar un valor predeterminado: cuando se usa un valor predeterminado a través de la función Variable.ValueOrDefault, asegúrese de que el tipo de datos del valor predeterminado coincide con el tipo de datos de la variable a la que se hace referencia.
Tipos admitidos: solo se admiten variables de tipos básicos (
boolean,datetime,guidinteger, ,numberystring).Conexiones fijas: las variables no pueden modificar la información de conexión. Las conexiones permanecen unidas a las configuraciones de ruta de acceso de recursos definidas.
Riesgo de sobrescritura: los usuarios con acceso para modificar bibliotecas de variables pueden sobrescribir los valores de las variables, lo que podría afectar al resultado del flujo de datos.
Asignación de esquemas: las variables no pueden modificar las asignaciones de esquema de destino; las asignaciones siguen la configuración original.
Visibilidad del linaje: las vistas de linaje no muestran vínculos entre Dataflow Gen2 y las bibliotecas de variables a las que hace referencia.
Límite de variables: los flujos de datos solo pueden recuperar un máximo de 50 variables.
Compatibilidad con SPN: los flujos de datos solo se pueden actualizar correctamente si la actualización no usa un SPN para la autenticación.