Introdução ao AWS Glue Data Quality para o Data Catalog
Esta seção de introdução fornece instruções para ajudar você a começar a usar o AWS Glue Data Quality no console da AWS Glue. Você aprenderá a realizar as tarefas essenciais, como gerar recomendações de regras de qualidade de dados e avaliar um conjunto de regras em relação aos seus dados.
Tópicos
Pré-requisitos
Antes de usar o AWS Glue Data Quality, você deve estar familiarizado com o uso do Data Catalog e de crawlers no AWS Glue. Com o AWS Glue Data Quality, você pode avaliar a qualidade das tabelas em um banco de dados do Data Catalog. Você precisará dos seguintes itens:
-
Uma tabela do Data Catalog para avaliar segundo o conjunto de regras de qualidade de dados.
-
Um perfil do IAM para o AWS Glue Glue, que você fornece quando gera recomendações de regras ou executa uma tarefa de qualidade de dados. Esse perfil deve ter permissão para acessar os recursos que vários processos do AWS Glue Data Quality exigem para realizar a execução em seu nome. Esses recursos incluem o AWS Glue, o Amazon S3 e o CloudWatch. Para ver exemplos de políticas que incluem as permissões mínimas para o AWS Glue Data Quality, consulte Políticas de exemplo do IAM.
Para saber mais sobre perfis do IAM para o AWS Glue, consulte Create an IAM policy for the AWS Glue service eCreate an IAM role for the AWS Glue service. Você também pode ver uma lista de todas as permissões do AWS Glue que são específicas para qualidade de dados em Authorization for AWS Glue Data Quality actions.
-
Um banco de dados com pelo menos uma tabela que contém uma variedade de dados. A tabela usada neste tutorial é denominada
yyz-tickets
, com a tabelatickets
. Esses dados são uma coleção de informações publicamente disponíveis da cidade de Toronto para multas de estacionamento. Se você criar sua própria tabela, certifique-se de que ela esteja preenchida com uma variedade de dados válidos para obter o melhor conjunto de regras recomendadas.
Exemplo passo a passo
Para ver um exemplo passo a passo com conjuntos de dados de amostra, consulte a postagem do blog sobre o AWS Glue Data Quality
Gerar recomendações de regras
As recomendações de regras tornam mais fácil começar a trabalhar com qualidade de dados sem precisar escrever código. O AWS Glue Data Quality analisa os dados, identifica as regras e cria um conjunto de regras que você pode avaliar em uma tarefa de qualidade de dados. As execuções de recomendação são excluídas automaticamente após 90 dias.
Para gerar recomendações de regras de qualidade de dados
-
Abra o console do AWS Glue em https://console.aws.amazon.com/glue/
. -
No painel de navegação, selecione Tables (Tabelas). Em seguida, selecione a tabela para a qual deseja gerar recomendações de regras de qualidade de dados.
-
Na página de detalhes da tabela, selecione a guia Qualidade dos dados para acessar as regras e as configurações do AWS Glue Data Quality para a tabela.
-
Na guia Qualidade dos dados, escolha Adicionar regras e monitorar a qualidade dos dados.
-
Na página Criador de conjuntos de regras, um alerta na parte superior da página solicitará que você inicie uma tarefa de recomendação se não houver nenhuma execução de recomendação de regra.
-
Escolha Recomendar regras para abrir o modal e inserir os parâmetros para a tarefa de recomendação.
-
Escolha um perfil do IAM com acesso ao AWS Glue. Esse perfil deve ter permissão para acessar os recursos que vários processos do AWS Glue Data Quality exigem para realizar a execução em seu nome.
-
Depois que os campos forem preenchidos de acordo com suas preferências, escolha Recomendar regras para iniciar a execução da tarefa de recomendação. Se as execuções de recomendação estiverem em andamento ou tiverem sido concluídas, você poderá gerenciar as execuções neste alerta. Talvez seja necessário atualizar o alerta para ver a alteração de status. As execuções de tarefas de recomendação concluídas e em andamento aparecem na página Histórico de execução, que lista todas as execuções de recomendação dos últimos 90 dias.
O que significam as regras recomendadas
O AWS Glue Data Quality gera regras com base nos dados de cada coluna da tabela de entrada. Ele usa as regras para identificar possíveis limites nos quais os dados podem ser filtrados para manter os requisitos de qualidade. A lista de regras geradas a seguir inclui exemplos que são úteis para entender o que as regras significam e o que elas podem fazer quando aplicadas aos dados.
Para obter uma lista completa dos tipos de regras em Data Quality Definition Language (DQDL) gerados, consulte a referência de tipos de regras de DQDL.
-
IsComplete "SET_FINE_AMOUNT"
: a regraIsComplete
verifica se a coluna está preenchida para qualquer linha dada. Use essa regra para marcar colunas como não opcionais nos dados. Uniqueness "TICKET_NUMBER" > 0.95
: aUniqueness
regra verifica se os dados dentro da coluna atendem a algum limite de exclusividade. Neste exemplo, foi determinado que os dados que preenchem qualquer linha dada para"TICKET_NUMBER"
têm, no máximo, 95% de conteúdo idêntico a todas as outras linhas, o que sugere essa regra.ColumnValues "PROVINCE" in ["ON", "QC", "AB", "NY",...]
: a regraColumnValues
define valores válidos para a coluna, com base no conteúdo existente da coluna. Neste exemplo, os dados de cada linha são uma placa de código de licença de 2 letras para um estado ou província.ColumnLength "INFRACTION_DESCRIPTION" between 15 and 31
: a regraColumnLength
impõe uma restrição de tamanho aos dados de uma coluna. Essa regra é gerada a partir dos dados de amostra com base nos comprimentos mínimo e máximo registrados para uma coluna de strings.
Monitorar recomendações de regras
Quando as recomendações de regras de qualidade de dados estão em execução, a página Adicionar regras e monitorar a qualidade de dados exibe informações e ações adicionais que você pode realizar na barra superior.
Quando as recomendações de regras estão em andamento, você pode escolher Parar a execução antes que a tarefa de recomendação seja concluída. Enquanto a tarefa estiver em andamento, você verá o status, em andamento e a data e a hora em que a execução começou.
Quando as recomendações de regras forem concluídas, a barra de recomendação de regras exibirá o número de regras recomendadas, o status da última execução da recomendação e a data e o timestamp em que ela foi concluída.
Você pode adicionar as regras recomendadas escolhendo Inserir recomendação de regra. Para ver as regras recomendadas anteriormente, selecione uma data específica. Para executar uma nova recomendação, escolha Mais ações e depois Regras recomendadas.
Defina as configurações padrão escolhendo Gerenciar configurações do usuário. Você pode definir o caminho padrão para o Amazon S3 armazenar conjuntos de regras ou configurar uma função padrão para executar o catálogo de dados.
Editar conjuntos de regras recomendadas
Como o AWS Glue Data Quality gera regras com base nos dados existentes que você tem disponíveis, é possível ver algumas regras inesperadas ou indesejáveis nas sugestões automatizadas. Para tirar o máximo proveito dos conjuntos de regras recomendadas, você precisa avaliá-los e modificá-los. Nesta etapa do tutorial, você toma as regras geradas na etapa anterior e as ajusta para impor qualidades mais restritivas a alguns dados. Você também relaxa outras regras para garantir que dados corretos e exclusivos possam ser adicionados posteriormente.
Editar um conjunto de regras sugeridas
No console do AWS Glue, escolha Catálogo de dados no painel de navegação e depois Adicionar banco de dados. Selecione a tabela
tickets
.-
Na página de detalhes da tabela, escolha a guia Qualidade dos dados para acessar as regras e as configurações do AWS Glue Data Quality para a tabela.
Na seção Conjuntos de regras, selecione o conjunto de regras gerado em Gerar recomendações de regras.
Escolha Ações e depois escolha Editar na janela do console. O editor do conjunto de regras é carregado no console. Ele inclui um painel de edição para as regras e uma referência rápida de DQDL.
-
Remova a linha
2
do script. Isso relaxa a exigência de que o tamanho do banco de dados seja restrito a um determinado número de linhas. Após a edição, o arquivo deve conter o seguinte nas linhas de 1 a 3:Rules = [ IsComplete "TAG_NUMBER_MASKED", ColumnLength "TAG_NUMBER_MASKED" between 6 and 9,
-
Remova a linha
25
do script. Isso relaxa a exigência de que 96% das províncias registradas sejamON
. Após a edição, o arquivo deve conter o seguinte, da linha24
até o final do conjunto de regras:ColumnValues "PROVINCE" in ["ON", "QC", "AB", "NY", "AZ", "NS", "BC", "MI", "PQ", "MB", "PA", "FL", "SK", "NJ", "OH", "NB", "IL", "MA", "CA", "VA", "TX", "NF", "MD", "PE", "CT", "NC", "GA", "IN", "OR", "MN", "TN", "WI", "KY", "MO", "WA", "NH", "SC", "CO", "OK", "VT", "RI", "ME", "AL", "YT", "IA", "DE", "AR", "LA", "XX", "WV", "MT", "KS", "NT", "DC", "NV", "NE", "UT", "MS", "NM", "ID", "SD", "ND", "AK", "NU", "GO", "WY", "HI"], ColumnLength "PROVINCE" = 2 ]
-
Altere a linha
14
para o seguinte:IsComplete "TIME_OF_INFRACTION",
Isso reforça a exigência na coluna, limitando o banco de dados apenas a multas que contenham a hora da infração registrada. Você deve sempre considerar as multas cuja hora da infração não está registrada como dados inválidos nesse conjunto de dados. Isso é diferente de situações em que o particionamento ou a transformação podem ser mais apropriados para uso ou inspeção adicional de dados para determinar uma regra de qualidade.
Escolha Atualizar conjunto de regras na parte inferior da página do console.
Criar um conjunto de regras
Um conjunto de regras é um grupo de regras de qualidade de dados que você avalia em relação aos seus dados. No console do AWS Glue, você pode criar conjuntos de regras personalizados usando Data Quality Definition Language (DQDL).
Para criar um conjunto de regras de qualidade de dados
-
No console do AWS Glue, escolha Catálogo de dados, Bancos de dados e depois Tabelas no painel de navegação. Selecione a tabela
tickets
. -
Abra a guia Data quality (Qualidade de dados).
-
Na seção Regras, escolha Criar regra). O editor DQDL é iniciado no console. Ele tem uma área de texto para edição direta e uma referência rápida para as regras do DQDL e o esquema da tabela.
-
Comece a adicionar regras à área de texto do editor DQDL. Você pode escrever as regras diretamente deste tutorial ou usar o atributo de criação de regras Criador de regras DQDL do editor de regras de qualidade de dados.
nota
Como usar o criador de regras DQDL
Selecione um tipo de regra na lista e o sinal de adição para inserir um exemplo de sintaxe no painel do editor.
Troque os nomes das colunas do espaço reservado por seus próprios nomes de coluna. Os nomes das colunas da tabela estão disponíveis na guia Esquema.
Atualize o parâmetro de expressão conforme desejar. Para obter uma lista completa de expressões compatíveis com DQDL, consulte Expressões.
Como exemplo, as regras a seguir são restrições para a validação de dados da coluna
ticket_number
na tabelatickets
. Para adicionar as seguintes regras, use o criador de regras DQDL ou edite diretamente o conjunto de regras:IsComplete "ticket_number", IsUnique "ticket_number", ColumnValues "ticket_number" > 9000000000
Forneça um nome para o novo conjunto de regras no campo Nome do conjunto de regras.
Escolha Salvar conjunto de regras.
Avaliar a qualidade dos dados em vários conjuntos de dados
Você pode configurar regras de qualidade de dados em vários conjuntos de dados usando os conjuntos de regras ReferentialIntegrity e DatasetMatch. ReferentialIntegrity verifica se os dados no conjunto de dados primário estão presentes em outros conjuntos de dados.
Para adicionar um conjunto de dados de referência, escolha a guia Esquema e depois Atualizar tabelas de referência. Será solicitado que você selecione um banco de dados e uma tabela. Você pode adicionar a tabela e depois configurar as regras de qualidade dos dados. Tipos de regras como AggregateMatch, RowCountMatch, ReferentialIntegrity, SchemaMatch, and DatasetMatch ofesão compatíveis com a capacidade de executar verificações de qualidade de dados em vários conjuntos de dados.
Como executar um conjunto de regras para avaliar a qualidade de dados
Quando você executa uma tarefa de qualidade de dados, o AWS Glue Data Quality avalia um conjunto de regras em relação aos seus dados e calcula uma pontuação de qualidade de dados. A pontuação representa a porcentagem de regras de qualidade de dados aprovadas para os dados fornecidos.
Para executar uma tarefa de qualidade de dados
-
No console do AWS Glue, escolha Catálogo de dados, Bancos de dados e depois Tabelas no painel de navegação. Selecione a tabela
tickets
. -
Escolha a guia Qualidade de dados.
-
Na lista Conjuntos de regras, escolha o conjunto de regras segundo as quais você deseja avaliar a tabela. Para esta etapa, recomendamos usar um conjunto de regras que você já tenha escrito ou modificado, em vez de regras geradas. Escolha Executar.
-
No modal, escolha seu perfil do IAM. Esse perfil deve ter permissão para acessar os recursos que vários processos do AWS Glue Data Quality exigem para realizar a execução em seu nome. Você pode salvar o perfil do IAM como padrão ou modificá-lo acessando a página Configuração padrão.
-
Em Data quality actions (Ações de qualidade de dados), escolha se você deseja Publish metrics to Amazon CloudWatch. (Publicar métricas no Amazon CloudWatch). Quando essa opção está selecionada, o AWS Glue Data Quality publica métricas que indicam o número de regras aprovadas e o número de regras reprovadas. Para atuar sobre as métricas armazenadas dessa forma, você pode usar os alarmes do CloudWatch. As principais métricas também são publicadas no Amazon EventBridge para você configurar alertas. Para obter mais informações, consulte Configurar alertas, implantações e agendamentos.
-
Em Frequência de execução, escolha executar sob demanda ou agende o conjunto de regras. Ao agendar um conjunto de regras, é solicitado a você um nome de tarefa. A agenda será criada no Amazon EventBridge. Você pode editar sua agenda no Amazon EventBridge.
-
Para salvar os resultados de qualidade dos dados no Amazon S3, escolha um Local para os resultados de qualidade de dados. O perfil do IAM que você selecionou anteriormente para essa tarefa deve ter acesso de gravação ao local escolhido.
-
Em Configurações adicionais, insira o Número necessário de operadores que você deseja que o AWS Glue aloque para a tarefa de qualidade de dados.
-
Opcionalmente, você pode configurar um filtro na fonte de dados. Isso ajuda a reduzir os dados que você está lendo. Você também pode usar um filtro para executar validações incrementais selecionando as informações da partição e passando-as como parâmetros por meio de chamadas de API. Para melhorar a performance, você pode fornecer um predicado de partição.
-
Escolha Executar. Você deve ver a nova tarefa na lista Data quality task runs (Execuções de tarefas de qualidade de dados). Quando a coluna Status da execução da tarefa for exibida como Concluída, você poderá visualizar os resultados da pontuação de qualidade. Pode ser necessário atualizar a janela do console para que o status seja atualizado corretamente.
-
Para visualizar a coluna dos detalhes do resultado da qualidade dos dados, escolha o ícone “+” para expandir o conjunto de regras. Os resultados mostram as regras em que as regras foram aprovadas e reprovadas na avaliação e o que causou a reprovação da regra.
Como visualizar o índice de qualidade de dados e os resultados
Para ver a última execução em todos os conjuntos de regras criados
-
No console do AWS Glue, escolha Tables (Tabelas) no painel de navegação. Em seguida, selecione a tabela para a qual deseja executar uma tarefa de qualidade de dados.
-
Escolha a guia Qualidade de dados.
-
O resumo da qualidade de dados mostra uma tendência geral das execuções ao longo do tempo. As últimas 10 execuções em todos os conjuntos de regras são exibidas por padrão. Para filtrar por conjunto de regras, selecione o conjunto desejado na lista suspensa. Se houver menos de 10 execuções, todas as execuções concluídas disponíveis serão exibidas.
-
Na tabela Qualidade de dados, cada conjunto de regras com sua última execução (se houver) é mostrado, junto com a pontuação. A expansão do conjunto de regras exibe as regras que estão nesse conjunto de regras, junto com os resultados da regra na execução.
Para ver a última execução de um conjunto de regras específico
-
No console do AWS Glue, escolha Tables (Tabelas) no painel de navegação. Em seguida, selecione a tabela para a qual deseja executar uma tarefa de qualidade de dados.
-
Escolha a guia Qualidade de dados.
-
Na tabela Qualidade de dados, escolha um conjunto de regras específico.
-
Na página de Detalhes do conjunto de regras, escolha a guia Histórico de execuções.
Todas as execuções de avaliação desse conjunto de regras específico estão listadas na tabela dessa guia. Você pode ver o histórico das pontuações e o status das execuções.
-
Para ver mais informações sobre uma execução específica, escolha a ID da execução para acessar a página Detalhes da execução de avaliação. Nessa página, você pode ver detalhes específicos sobre a execução e mais detalhes sobre o status dos resultados de regras individuais.