Creación de reglas de patrón de conjunto de recursos
Los sistemas de procesamiento de datos a escala suelen almacenar una sola tabla en el almacenamiento como varios archivos. Este concepto se representa en Microsoft Purview mediante conjuntos de recursos. Un conjunto de recursos es un único objeto del catálogo de datos que representa un gran número de recursos en el almacenamiento. Para más información, consulte Descripción de los conjuntos de recursos.
Al examinar una cuenta de almacenamiento, Microsoft Purview usa un conjunto de patrones definidos para determinar si un grupo de recursos es un conjunto de recursos. En algunos casos, es posible que la agrupación de conjuntos de recursos de Microsoft Purview no refleje con precisión el patrimonio de datos. Las reglas de patrón del conjunto de recursos permiten personalizar o invalidar la forma en que Microsoft Purview detecta qué recursos se agrupan como conjuntos de recursos y cómo se muestran en el catálogo.
Las reglas de patrón se admiten actualmente en los siguientes tipos de origen:
- Azure Data Lake Storage Gen2
- Azure Blob Storage
- Azure Files
- Amazon S3
El conjunto de características del conjunto de recursos avanzado debe estar habilitado para crear reglas de patrón de conjunto de recursos. Para obtener más información, consulte Descripción de los conjuntos de recursos avanzados.
Creación de una regla de patrón de conjunto de recursos
Siga los pasos siguientes para crear una nueva regla de patrón de conjunto de recursos:
Vaya al mapa de datos. Seleccione Reglas de patrón en el menú en el encabezado Administración de origen. Seleccione + Nuevo para crear un nuevo conjunto de reglas.
Escriba el ámbito de la regla de patrón del conjunto de recursos. Seleccione el tipo de cuenta de almacenamiento y el nombre de la cuenta de almacenamiento en la que desea crear un conjunto de reglas. Cada conjunto de reglas se aplica en relación con un ámbito de ruta de acceso de carpeta especificado en el campo Ruta de acceso de carpeta.
Para especificar una regla para un ámbito de configuración, seleccione + Nueva regla.
Escriba en los campos siguientes para crear una regla:
Nombre de regla: Nombre de la regla de configuración. Este campo no tiene ningún efecto en los recursos a los que se aplica la regla.
Nombre completo: Ruta de acceso completa que usa una combinación de texto, reemplazos dinámicos y reemplazos estáticos para hacer coincidir los recursos con la regla de configuración. Esta ruta de acceso es relativa al ámbito de la regla de configuración. Consulte la sección de sintaxis siguiente para obtener instrucciones detalladas sobre cómo especificar nombres completos.
Nombre para mostrar: Nombre para mostrar del recurso. Este campo es opcional. Use el texto sin formato y los reemplazos estáticos para personalizar cómo se muestra un recurso en el catálogo. Para obtener instrucciones más detalladas, consulte la sección de sintaxis siguiente.
No agrupar como conjunto de recursos: Si está habilitado, el recurso coincidente no se agrupará en un conjunto de recursos.
Para guardar la regla, seleccione Agregar.
Nota:
Una vez creada una regla de patrón, todos los exámenes nuevos aplicarán la regla durante la ingesta. Los recursos existentes en el catálogo de datos se actualizarán a través de un proceso en segundo plano que puede tardar hasta unas horas.
Sintaxis de regla de patrón
Al crear reglas de patrón de conjunto de recursos, use la sintaxis siguiente para especificar a qué reglas de recursos se aplican.
Reemplazos dinámicos (corchetes simples)
Los corchetes simples se usan como reemplazos dinámicos en las reglas de patrón. Especifique un reemplazo dinámico en el nombre completo con el formato {<replacerName:<replacerType>}
. Si coincide, los reemplazos dinámicos se usan como una condición de agrupación que indica que los recursos deben representarse como un conjunto de recursos. Si los recursos se agrupan en un conjunto de recursos, la ruta de acceso completa del conjunto de recursos contendrá {replacerName}
dónde se especificó el sustituto.
Por ejemplo, si dos recursos folder1/file-1.csv
y folder2/file-2.csv
coinciden con la regla {folder:string}/file-{NUM:int}.csv
, el conjunto de recursos sería una sola entidad {folder}/file-{NUM}.csv
.
Caso especial: reemplazos dinámicos cuando no se agrupan en un conjunto de recursos
Si don't group as resource set is enabled for a pattern rule, the replacer name is an optional field.
{:<replacerType>}
es una sintaxis válida. Por ejemplo, file-{:int}.csv
coincidiría correctamente con file-1.csv
y file-2.csv
y crearía dos recursos diferentes en lugar de un conjunto de recursos.
Reemplazos estáticos (corchetes dobles)
Los corchetes dobles se usan como reemplazos estáticos en el nombre completo de una regla de patrón. Especifique un reemplazo estático en el nombre completo con el formato {{<replacerName>:<replacerType>}}
. Si coincide, cada conjunto de valores de reemplazo estático único creará agrupaciones de conjuntos de recursos diferentes.
Por ejemplo, si dos recursos folder1/file-1.csv
y folder2/file-2.csv
coinciden con la regla {{folder:string}}/file-{NUM:int}.csv
, se crearían folder1/file-{NUM}.csv
dos conjuntos de recursos y folder2/file-{NUM}.csv
.
Los reemplazos estáticos se pueden usar para especificar el nombre para mostrar de un recurso que coincida con una regla de patrón. El uso {{<replacerName>}}
en el nombre para mostrar de una regla usará el valor coincidente en el nombre del recurso.
Tipos de reemplazo disponibles
A continuación se muestran los tipos disponibles que se pueden usar en reemplazos estáticos y dinámicos:
Tipo | Estructura |
---|---|
string | Una serie de uno o más caracteres Unicode, incluidos delimitadores como espacios. |
Entero | Una serie de 1 o más caracteres ASCII de 0 a 9, puede tener un prefijo 0 (por ejemplo, 0001). |
guid | Una serie de 32 o 8-4-4-4-12 representación de cadena de un UUID tal como se define en RFC 4122. |
date | Una serie de 6 u 8 0-9 caracteres ASCII con separadores opcionales: aaaammdd, aaaa-mm-dd, aaaammdd, aaaa-mm-dd, especificado en RFC 3339. |
time | Una serie de 4 o 6 0-9 caracteres ASCII con separadores opcionales: HHmm, HH:mm, HHmmss, HH:mm:ss especificado en RFC 3339. |
Timestamp | Una serie de 12 o 14 caracteres ASCII de 0 a 9 con separadores opcionales: aaaa-mm-ddTHH:mm, aaaammddhhmm, aaaa-mm-ddTHH:mm:ss, aaaammddHHmmss especificado en RFC 3339. |
booleano | Puede contener "true" o "false", sin distinción entre mayúsculas y minúsculas. |
número | Una serie de 0 o más caracteres ASCII de 0 a 9, puede tener un prefijo 0 (por ejemplo, 0001) seguido opcionalmente de un punto "." y una serie de 1 o más de 0-9 caracteres ASCII, puede ser 0 posfijado (por ejemplo, .100) |
Hexagonal | Una serie de uno o más caracteres ASCII del conjunto 0-1 y A-F, el valor puede tener el prefijo 0 |
configuración regional | Cadena que coincide con la sintaxis especificada en RFC 5646. |
Orden de aplicación de las reglas de patrón del conjunto de recursos
A continuación se muestra el orden de las operaciones para aplicar reglas de patrón:
Los ámbitos más específicos tendrán prioridad si un recurso coincide con dos reglas. Por ejemplo, las reglas de un ámbito
container/folder
se aplicarán antes que las reglas del ámbitocontainer
.Orden de las reglas dentro de un ámbito específico. Esto se puede editar en la experiencia de usuario.
Si un recurso no coincide con ninguna regla especificada, se aplica la heurística del conjunto de recursos predeterminado.
Ejemplos
Ejemplo 1
Extracción de datos de SAP en cargas completas y diferenciales
Entradas
Archivos:
https://myazureblob.blob.core.windows.net/bar/customer/full/2020/01/13/saptable_customer_20200101_20200102_01.txt
https://myazureblob.blob.core.windows.net/bar/customer/full/2020/01/13/saptable_customer_20200101_20200102_02.txt
https://myazureblob.blob.core.windows.net/bar/customer/delta/2020/01/15/saptable_customer_20200101_20200102_01.txt
https://myazureblob.blob.core.windows.net/bar/customer/full/2020/01/17/saptable_customer_20200101_20200102_01.txt
https://myazureblob.blob.core.windows.net/bar/customer/full/2020/01/17/saptable_customer_20200101_20200102_02.txt
Regla de patrón
Alcance:https://myazureblob.blob.core.windows.net/bar/
Nombre para mostrar: "Cliente externo"
Nombre completo:customer/{extract:string}/{year:int}/{month:int}/{day:int}/saptable_customer_{date_from:date}_{date_to:time}_{sequence:int}.txt
Conjunto de recursos: true
Salida
Un recurso de conjunto de recursos
Nombre para mostrar: Cliente externo
Nombre completo:https://myazureblob.blob.core.windows.net/bar/customer/{extract}/{year}/{month}/{day}/saptable_customer_{date_from}_{date_to}_{sequence}.txt
Ejemplo 2
Datos de IoT en formato avro
Entradas
Archivos:
https://myazureblob.blob.core.windows.net/bar/raw/machinename-89/01-01-2020/22:33:22-001.avro
https://myazureblob.blob.core.windows.net/bar/raw/machinename-89/01-01-2020/22:33:22-002.avro
https://myazureblob.blob.core.windows.net/bar/raw/machinename-89/02-01-2020/22:33:22-001.avro
https://myazureblob.blob.core.windows.net/bar/raw/machinename-90/01-01-2020/22:33:22-001.avro
Reglas de patrón
Alcance:https://myazureblob.blob.core.windows.net/bar/
Regla 1
Nombre para mostrar: "machine-89"
Nombre completo:raw/machinename-89/{date:date}/{time:time}-{id:int}.avro
Conjunto de recursos: true
Regla 2
Nombre para mostrar: "machine-90"
Nombre completo:raw/machinename-90/{date:date}/{time:time}-{id:int}.avro
Conjunto de recursos: true
Resultados
Dos conjuntos de recursos
Conjunto de recursos 1
Nombre para mostrar: machine-89
Nombre completo:https://myazureblob.blob.core.windows.net/bar/raw/machinename-89/{date}/{time}-{id}.avro
Conjunto de recursos 2
Nombre para mostrar: machine-90
Nombre completo:https://myazureblob.blob.core.windows.net/bar/raw/machinename-90/{date}/{time}-{id}.avro
Ejemplo 3
Datos de IoT en formato avro
Entradas
Archivos:
https://myazureblob.blob.core.windows.net/bar/raw/machinename-89/01-01-2020/22:33:22-001.avro
https://myazureblob.blob.core.windows.net/bar/raw/machinename-89/01-01-2020/22:33:22-002.avro
https://myazureblob.blob.core.windows.netbar/raw/machinename-89/02-01-2020/22:33:22-001.avro
https://myazureblob.blob.core.windows.net/bar/raw/machinename-90/01-01-2020/22:33:22-001.avro
Regla de patrón
Alcance:https://myazureblob.blob.core.windows.net/bar/
Nombre para mostrar: 'Machine-{{machineid}}'
Nombre completo:raw/machinename-{{machineid:int}}/{date:date}/{time:time}-{id:int}.avro
Conjunto de recursos: true
Resultados
Conjunto de recursos 1
Nombre para mostrar: machine-89
Nombre completo:https://myazureblob.blob.core.windows.net/bar/raw/machinename-89/{date}/{time}-{id}.avro
Conjunto de recursos 2
Nombre para mostrar: machine-90
Nombre completo:https://myazureblob.blob.core.windows.net/bar/raw/machinename-90/{date}/{time}-{id}.avro
Ejemplo 4
No agrupar en conjuntos de recursos
Entradas
Archivos:
https://myazureblob.blob.core.windows.net/bar/raw/machinename-89/01-01-2020/22:33:22-001.avro
https://myazureblob.blob.core.windows.net/bar/raw/machinename-89/01-01-2020/22:33:22-002.avro
https://myazureblob.blob.core.windows.net/bar/raw/machinename-89/02-01-2020/22:33:22-001.avro
https://myazureblob.blob.core.windows.net/bar/raw/machinename-90/01-01-2020/22:33:22-001.avro
Regla de patrón
Alcance:https://myazureblob.blob.core.windows.net/bar/
Nombre para mostrar:Machine-{{machineid}}
Nombre completo:raw/machinename-{{machineid:int}}/{{:date}}/{{:time}}-{{:int}}.avro
Conjunto de recursos: false
Resultados
Cuatro recursos individuales
Recurso 1
Nombre para mostrar: machine-89
Nombre completo:https://myazureblob.blob.core.windows.net/bar/raw/machinename-89/01-01-2020/22:33:22-001.avro
Recurso 2
Nombre para mostrar: machine-89
Nombre completo:https://myazureblob.blob.core.windows.net/bar/raw/machinename-89/01-01-2020/22:33:22-002.avro
Recurso 3
Nombre para mostrar: machine-89
Nombre completo:https://myazureblob.blob.core.windows.net/bar/raw/machinename-89/02-01-2020/22:33:22-001.avro
Recurso 4
Nombre para mostrar: machine-90
Nombre completo:https://myazureblob.blob.core.windows.net/bar/raw/machinename-90/01-01-2020/22:33:22-001.avro
Siguientes pasos
Para empezar, registre y digitale una cuenta de almacenamiento de Azure Data Lake Gen2.