Criar regras de padrão de conjunto de recursos
Normalmente, os sistemas de processamento de dados à escala armazenam uma única tabela no armazenamento como múltiplos ficheiros. Este conceito é representado no Microsoft Purview através de conjuntos de recursos. Um conjunto de recursos é um único objeto no catálogo de dados que representa um grande número de recursos no armazenamento. Para saber mais, veja Compreender os conjuntos de recursos.
Ao analisar uma conta de armazenamento, o Microsoft Purview utiliza um conjunto de padrões definidos para determinar se um grupo de recursos é um conjunto de recursos. Em alguns casos, o agrupamento de conjuntos de recursos do Microsoft Purview pode não refletir com precisão o seu património de dados. As regras de padrão de conjunto de recursos permitem-lhe personalizar ou substituir a forma como o Microsoft Purview deteta quais os recursos agrupados como conjuntos de recursos e como são apresentados no catálogo.
As regras de padrão são atualmente suportadas nos seguintes tipos de origem:
- Azure Data Lake Storage Gen2
- Azure Storage Blob
- Arquivos do Azure
- Amazon S3
O conjunto de funcionalidades Conjunto de recursos avançado tem de estar ativado para criar regras de padrão de conjunto de recursos. Para saber mais, veja Compreender conjuntos de recursos avançados.
Como criar uma regra de padrão de conjunto de recursos
Siga os passos abaixo para criar uma nova regra de padrão de conjunto de recursos:
Aceda ao mapa de dados. Selecione Regras de padrão no menu no cabeçalho Gestão de origem. Selecione + Novo para criar um novo conjunto de regras.
Introduza o âmbito da regra de padrão do conjunto de recursos. Selecione o tipo de conta de armazenamento e o nome da conta de armazenamento na qual pretende criar uma regra definida. Cada conjunto de regras é aplicado relativamente a um âmbito de caminho de pasta especificado no campo Caminho da pasta .
Para introduzir uma regra para um âmbito de configuração, selecione + Nova Regra.
Introduza nos seguintes campos para criar uma regra:
Nome da regra: O nome da regra de configuração. Este campo não tem qualquer efeito nos recursos a que a regra se aplica.
Nome qualificado: Um caminho qualificado que utiliza uma combinação de texto, substituidores dinâmicos e substituidores estáticos para corresponder recursos à regra de configuração. Este caminho é relativo ao âmbito da regra de configuração. Veja a secção de sintaxe abaixo para obter instruções detalhadas sobre como especificar nomes qualificados.
Nome a apresentar: O nome a apresentar do elemento. Esse campo é opcional. Utilize texto simples e substituidores estáticos para personalizar a forma como um recurso é apresentado no catálogo. Para obter instruções mais detalhadas, veja a secção de sintaxe abaixo.
Não agrupar como conjunto de recursos: Se estiver ativado, o recurso correspondente não será agrupado num conjunto de recursos.
Guarde a regra ao selecionar Adicionar.
Observação
Após a criação de uma regra de padrão, todas as novas análises aplicarão a regra durante a ingestão. Os recursos existentes no catálogo de dados serão atualizados através de um processo em segundo plano que pode demorar algumas horas.
Sintaxe da regra de padrão
Ao criar regras de padrão de conjunto de recursos, utilize a seguinte sintaxe para especificar a que regras de recursos se aplicam.
Substituidores dinâmicos (parênteses retos únicos)
Os parênteses retos únicos são utilizados como substituidores dinâmicos numa regra de padrão. Especifique um substituto dinâmico no nome qualificado com o formato {<replacerName>:<replacerType>}
. Se forem correspondidos, os substituidores dinâmicos são utilizados como uma condição de agrupamento que indica que os recursos devem ser representados como um conjunto de recursos. Se os recursos estiverem agrupados num conjunto de recursos, o caminho qualificado do conjunto de recursos conterá {replacerName}
onde o substituidor foi especificado.
Por exemplo, se dois recursos e correspondidos folder1/file-1.csv
à regra {folder:string}/file-{NUM:int}.csv
, o conjunto de recursos seria uma única entidade {folder}/file-{NUM}.csv
.folder2/file-2.csv
Caso especial: Substituidores dinâmicos ao não agrupar no conjunto de recursos
Se Não agrupar como conjunto de recursos estiver ativado para uma regra de padrão, o nome do substituto é um campo opcional.
{:<replacerType>}
é sintaxe válida. Por exemplo, file-{:int}.csv
corresponderia com êxito a file-1.csv
e file-2.csv
e criaria dois recursos diferentes em vez de um conjunto de recursos.
Substituidores estáticos (parênteses retos duplos)
Os parênteses retos duplos são utilizados como substituidores estáticos no nome qualificado de uma regra de padrão. Especifique um substituto estático no nome qualificado com o formato {{<replacerName>:<replacerType>}}
. Se for correspondido, cada conjunto de valores de substituição estático exclusivo criará agrupamentos de conjuntos de recursos diferentes.
Por exemplo, se dois recursos e folder2/file-2.csv
correspondidos à regra {{folder:string}}/file-{NUM:int}.csv
, serão criados folder1/file-{NUM}.csv
dois conjuntos folder1/file-1.csv
de recursos e folder2/file-{NUM}.csv
.
Os substituidores estáticos podem ser utilizados para especificar o nome a apresentar de um recurso correspondente a uma regra de padrão. A utilização {{<replacerName>}}
no nome a apresentar de uma regra utilizará o valor correspondente no nome do recurso.
Tipos de substituição disponíveis
Seguem-se os tipos disponíveis que podem ser utilizados em substituições estáticas e dinâmicas:
Tipo | Structure |
---|---|
string | Uma série de um ou mais carateres Unicode, incluindo delimitadores como espaços. |
int | Uma série de 1 ou mais carateres ASCII 0-9, pode ser 0 prefixo (por exemplo, 0001). |
guid | Uma série de representações de cadeias de carateres 32 ou 8-4-4-4-12 de um UUID, conforme definido em RFC 4122. |
data | Uma série de 6 ou 8 carateres ASCII 0-9 com, opcionalmente, separadores: aaaammdd, aaaa-mm-dd, yymmdd, yy-mm-dd, especificado em RFC 3339. |
hora | Uma série de 4 ou 6 carateres ASCII 0-9 com separadores opcionais: HHmm, HH:mm, HHmmss, HH:mm:ss especificados em RFC 3339. |
Carimbo de data/hora | Uma série de 12 ou 14 carateres ASCII 0-9 com separadores opcionais: aaaa-mm-ddTHH:mm, yyyymmddhhmm, yyyyy-mm-ddTHH:mm:ss, yyyymmddHHmmss especificado no RFC 3339. |
booliano | Pode conter "verdadeiro" ou "falso", não sensível a maiúsculas e minúsculas. |
number | Uma série de 0 ou mais carateres ASCII 0-9, pode ser 0 prefixo (por exemplo, 0001) seguido, opcionalmente, de um ponto '.' e de uma série de 1 ou mais de 0 a 9 carateres ASCII, pode ser 0 postfixo (por exemplo, .100) |
hexadecim | Uma série de um ou mais carateres ASCII do conjunto 0-1 e A-F, o valor pode ser 0 prefixo |
localidade | Uma cadeia que corresponde à sintaxe especificada em RFC 5646. |
Ordem das regras de padrão do conjunto de recursos aplicadas
Segue-se a ordem das operações para aplicar regras de padrão:
Os âmbitos mais específicos terão prioridade se um recurso corresponder a duas regras. Por exemplo, as regras num âmbito
container/folder
serão aplicadas antes das regras no âmbitocontainer
.Ordem das regras num âmbito específico. Isto pode ser editado na experiência de utilizador.
Se um recurso não corresponder a nenhuma regra especificada, aplica-se a heurística predefinida do conjunto de recursos.
Exemplos
Exemplo 1
Extração de dados SAP em cargas completas e delta
Entradas
Arquivos:
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
Regra de padrão
Âmbito:https://myazureblob.blob.core.windows.net/bar/
Nome a apresentar: "Cliente Externo"
Nome Qualificado:customer/{extract:string}/{year:int}/{month:int}/{day:int}/saptable_customer_{date_from:date}_{date_to:time}_{sequence:int}.txt
Conjunto de Recursos: verdadeiro
Saída
Um recurso de conjunto de recursos
Nome a Apresentar: Cliente Externo
Nome Qualificado:https://myazureblob.blob.core.windows.net/bar/customer/{extract}/{year}/{month}/{day}/saptable_customer_{date_from}_{date_to}_{sequence}.txt
Exemplo 2
Dados de IoT no formato avro
Entradas
Arquivos:
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
Regras de padrão
Âmbito:https://myazureblob.blob.core.windows.net/bar/
Regra 1
Nome a apresentar: "machine-89"
Nome Qualificado:raw/machinename-89/{date:date}/{time:time}-{id:int}.avro
Conjunto de Recursos: verdadeiro
Regra 2
Nome a apresentar: "machine-90"
Nome Qualificado:raw/machinename-90/{date:date}/{time:time}-{id:int}.avro
Conjunto de Recursos: verdadeiro
Saídas
Dois conjuntos de recursos
Conjunto de Recursos 1
Nome a Apresentar: machine-89
Nome Qualificado:https://myazureblob.blob.core.windows.net/bar/raw/machinename-89/{date}/{time}-{id}.avro
Conjunto de Recursos 2
Nome a Apresentar: machine-90
Nome Qualificado:https://myazureblob.blob.core.windows.net/bar/raw/machinename-90/{date}/{time}-{id}.avro
Exemplo 3
Dados de IoT no formato avro
Entradas
Arquivos:
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
Regra de padrão
Âmbito:https://myazureblob.blob.core.windows.net/bar/
Nome a apresentar: "Machine-{{machineid}}"
Nome Qualificado:raw/machinename-{{machineid:int}}/{date:date}/{time:time}-{id:int}.avro
Conjunto de Recursos: verdadeiro
Saídas
Conjunto de Recursos 1
Nome a apresentar: machine-89
Nome Qualificado:https://myazureblob.blob.core.windows.net/bar/raw/machinename-89/{date}/{time}-{id}.avro
Conjunto de Recursos 2
Nome a apresentar: machine-90
Nome Qualificado:https://myazureblob.blob.core.windows.net/bar/raw/machinename-90/{date}/{time}-{id}.avro
Exemplo 4
Não agrupar em conjuntos de recursos
Entradas
Arquivos:
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
Regra de padrão
Âmbito:https://myazureblob.blob.core.windows.net/bar/
Nome a apresentar:Machine-{{machineid}}
Nome Qualificado:raw/machinename-{{machineid:int}}/{{:date}}/{{:time}}-{{:int}}.avro
Conjunto de Recursos: falso
Saídas
Quatro ativos individuais
Recurso 1
Nome a apresentar: machine-89
Nome Qualificado:https://myazureblob.blob.core.windows.net/bar/raw/machinename-89/01-01-2020/22:33:22-001.avro
Recurso 2
Nome a apresentar: machine-89
Nome Qualificado:https://myazureblob.blob.core.windows.net/bar/raw/machinename-89/01-01-2020/22:33:22-002.avro
Recurso 3
Nome a apresentar: machine-89
Nome Qualificado:https://myazureblob.blob.core.windows.net/bar/raw/machinename-89/02-01-2020/22:33:22-001.avro
Recurso 4
Nome a apresentar: machine-90
Nome Qualificado:https://myazureblob.blob.core.windows.net/bar/raw/machinename-90/01-01-2020/22:33:22-001.avro
Próximas etapas
Comece por registar e analisar uma conta de armazenamento do Azure Data Lake Gen2.