Usar a qualidade de dados automática

Nesta página, descrevemos como criar uma verificação de qualidade de dados do Dataplex.

Para saber mais sobre as verificações de qualidade de dados, consulte Sobre a qualidade de dados automática.

Antes de começar

Ative a API Dataplex.

Ativar a API

Permissões

  • Para executar uma verificação de qualidade de dados em uma tabela do BigQuery, você precisa de permissão para ler a tabela do BigQuery e para criar um job do BigQuery no projeto usado para verificar a tabela.

  • Se a tabela do BigQuery e a verificação de qualidade de dados estiverem em projetos diferentes, será necessário conceder permissão de leitura à conta de serviço do Dataplex do projeto que contém a verificação de qualidade de dados para a tabela correspondente do BigQuery.

  • Se as regras de qualidade de dados se referirem a outras tabelas, a conta de serviço do projeto de verificação precisará ter permissões de leitura nas mesmas tabelas.

  • Para receber as permissões necessárias para exportar os resultados da verificação para uma tabela do BigQuery, peça ao administrador para conceder à conta de serviço do Dataplex o papel do IAM de Editor de dados do BigQuery (roles/bigquery.dataEditor) no conjunto de dados e na tabela de resultados. Isso concede as seguintes permissões:

    • bigquery.datasets.get
    • bigquery.tables.create
    • bigquery.tables.get
    • bigquery.tables.getData
    • bigquery.tables.update
    • bigquery.tables.updateData
  • Se os dados do BigQuery estiverem organizados em um lago do Dataplex, conceda à conta de serviço do Dataplex os papéis roles/dataplex.metadataReader e roles/dataplex.viewer. Também são necessárias todas estas permissões:

    • dataplex.lakes.list
    • dataplex.lakes.get
    • dataplex.zones.list
    • dataplex.zones.get
    • dataplex.entities.list
    • dataplex.entities.get
    • dataplex.operations.get
  • Se você estiver verificando uma tabela externa do BigQuery do Cloud Storage, conceda à conta de serviço do Dataplex o papel roles/storage.objectViewer do Cloud Storage para o bucket. Se preferir, atribua as seguintes permissões à conta de serviço do Dataplex:

    • storage.buckets.get
    • storage.objects.get
  • Se você quiser publicar os resultados da verificação de qualidade de dados nas páginas do BigQuery e do Data Catalog no console do Google Cloud para as tabelas de origem, precisará receber o papel do IAM de editor de dados do BigQuery (roles/bigquery.dataEditor) ou a permissão bigquery.tables.update para a tabela.

  • Se você precisar acessar colunas protegidas por políticas de acesso no nível da coluna do BigQuery, atribua as permissões da conta de serviço do Dataplex a essas colunas. O usuário que cria ou atualiza uma verificação de dados também precisa de permissões para as colunas.

  • Se uma tabela tiver políticas de acesso no nível de linha do BigQuery ativadas, você só poderá verificar as linhas visíveis para a conta de serviço do Dataplex. Os privilégios de acesso do usuário individual não são avaliados para políticas no nível da linha.

Permissões e papéis de verificação de dados

Para usar a qualidade de dados automática, você precisa das permissões para executar verificações de dados ou de um papel com permissões predefinidas para fazer isso.

A tabela a seguir lista as permissões DataScan:

Nome da permissão Concede permissão para:
dataplex.datascans.create Criar um DataScan
dataplex.datascans.delete Excluir um DataScan
dataplex.datascans.get Conferir metadados operacionais, como ID ou programação, mas não resultados e regras
dataplex.datascans.getData Mais detalhes de DataScan, incluindo regras e resultados
dataplex.datascans.list Listar DataScans
dataplex.datascans.run Executar um DataScan
dataplex.datascans.update Atualizar a descrição de um DataScan
dataplex.datascans.getIamPolicy Conferir as permissões atuais do IAM na verificação
dataplex.datascans.setIamPolicy Definir permissões do IAM na verificação

Conceda aos usuários um ou mais dos seguintes papéis:

  • roles/dataplex.dataScanAdmin: acesso total aos recursos de DataScan.
  • roles/dataplex.dataScanEditor: acesso de gravação aos recursos DataScan.
  • roles/dataplex.dataScanViewer: acesso de leitura aos recursos DataScan, exceto regras e resultados.
  • roles/dataplex.dataScanDataViewer: acesso de leitura aos recursos do DataScan, incluindo regras e resultados.

Definir regras de qualidade de dados

É possível definir regras de qualidade de dados usando regras integradas ou verificações SQL personalizadas. Se você estiver usando a Google Cloud CLI, defina essas regras em um arquivo JSON ou YAML.

Os exemplos nas seções a seguir mostram como definir várias regras de qualidade de dados. As regras validam uma tabela de amostra que contém dados sobre transações de clientes. Suponha que a tabela tenha o seguinte esquema:

Nome da coluna Tipo de coluna Descrição da coluna
transaction_timestamp Carimbo de data/hora Carimbo de data/hora da transação. A tabela é particionada nesse campo.
customer_id String Um ID de cliente no formato de 8 letras seguidas por 16 dígitos.
transaction_id String O ID da transação precisa ser exclusivo na tabela.
currency_id String Uma das moedas aceitas.O tipo de moeda precisa corresponder a uma das moedas disponíveis na tabela de dimensão dim_currency.
amount float Valor da transação.
discount_pct float Porcentagem do desconto. Esse valor precisa estar entre 0 e 100.

Definir regras de qualidade de dados usando tipos de regras integrados

Os exemplos de regras a seguir são baseados em tipos de regra integrados. É possível criar regras com base em tipos de regra integrados usando o console do Google Cloud ou a API. O Dataplex pode recomendar algumas dessas regras.

Nome da coluna Tipo de regra Dimensão sugerida Parâmetros de regra
transaction_id Verificação de exclusividade Exclusividade Threshold: Not Applicable
amount Verificação de valores nulos Integridade Threshold: 100%
customer_id Verificação de regex (expressão regular) Validade Expressão regular: ^[0-9]{8}[a-zA-Z]{16}$
Limite: 100%
currency_id Verificação do valor definido Validade Conjunto de: USD,JPY,INR,GBP,CAN
Limite: 100%

Definir regras de qualidade de dados usando regras SQL personalizadas

Para criar regras SQL personalizadas, use o seguinte framework:

  • Ao criar uma regra que avalia uma linha por vez, crie uma expressão que gere o número de linhas bem-sucedidas quando o Dataplex avaliar a consulta SELECT COUNTIF(CUSTOM_SQL_EXPRESSION) FROM TABLE. O Dataplex verifica o número de linhas bem-sucedidas em relação ao limite.

  • Ao criar uma regra que avalia as linhas ou usa uma verificação de SQL agregada, crie uma expressão que retorne sucesso ou falha quando o Dataplex avaliar a consulta SELECT IF(CUSTOM_SQL_EXPRESSION) FROM TABLE.

  • Ao criar uma regra que avalia o estado inválido de um conjunto de dados, forneça uma instrução que retorne linhas inválidas. Se alguma linha for retornada, a regra falhará. Omita o ponto e vírgula à direita da instrução SQL.

  • É possível fazer referência a uma tabela de fonte de dados e a todos os filtros de condição prévia usando o parâmetro de referência de dados ${data()} em uma regra, em vez de mencionar explicitamente a tabela de origem e os filtros dela. Exemplos de filtros de pré-condição incluem filtros de linha, porcentagens de amostragem e filtros incrementais. O parâmetro ${data()} diferencia maiúsculas de minúsculas.

Os exemplos de regras a seguir são baseados em regras SQL personalizadas.

Tipo de regra Descrição da regra Expressão SQL
Condição da linha Verifica se o valor de discount_pct está entre 0 e 100. 0 <discount_pct E discount_pct < 100
Condição da linha Verificação de referência para confirmar que currency_id é uma das moedas aceitas. currency_id in (select id from my_project_id.dim_dataset.dim_currency)
Expressão SQL agregada Verifica se a discount_pct média está entre 30% e 50%. 30<avg(discount) AND avg(discount) <50
Condição da linha Verifica se uma data não está no futuro. TIMESTAMP(transaction_timestamp) < CURRENT_TIMESTAMP()
Expressão SQL agregada Uma função definida pelo usuário (UDF, na sigla em inglês) do BigQuery para verificar se o valor médio da transação é menor que um valor predefinido por país. Crie a UDF (JavaScript) executando o seguinte comando:
        CREATE OR REPLACE FUNCTION
        myProject.myDataset.average_by_country (
          country STRING, average FLOAT64)
        RETURNS BOOL LANGUAGE js AS R"""
        if (country = "CAN" && average < 5000){
          return 1
        } else if (country = "IND" && average < 1000){
          return 1
        } else { return 0 }
        """;
       
Exemplo de regra para verificar o valor médio da transação para country=CAN.
        myProject.myDataset.average_by_country(
        "CAN",
        (SELECT avg(amount) FROM
          myProject.myDataset.transactions_table
            WHERE currency_id = 'CAN'
        ))
      
Expressão SQL agregada Uma cláusula de previsão do BigQuery ML para identificar anomalias em discount_pct. Ele verifica se um desconto precisa ser aplicado com base em customer, currency e transaction. A regra verifica se a previsão corresponde ao valor real em pelo menos 99% das vezes. Suposição: o modelo de ML é criado antes de usar a regra. Crie o modelo de ML usando o seguinte comando:
  CREATE MODEL
  model-project-id.dataset-id.model-name
        OPTIONS(model_type='logistic_reg') AS
  SELECT
  IF(discount_pct IS NULL, 0, 1) AS label,
  IFNULL(customer_id, "") AS customer,
  IFNULL(currency_id, "") AS currency,
  IFNULL(amount, 0.0) AS amount
  FROM
  `data-project-id.dataset-id.table-names`
  WHERE transaction_timestamp < '2022-01-01';
  
A regra a seguir verifica se a precisão da previsão é maior que 99%.
      SELECT
        accuracy > 0.99
      FROM
       ML.EVALUATE
        (MODEL model-project-id.dataset-id.model-name,
         (
          SELECT
            customer_id,
            currency_id,
            amount,
            discount_pct
          FROM
            data-project-id.dataset-id.table-names
          WHERE transaction_timestamp > '2022-01-01';
         )
        )
    
Condição da linha Uma função de previsão do BigQuery ML para identificar anomalias em discount_pct. A função verifica se um desconto precisa ser aplicado com base em customer, currency e transaction. A regra identifica todas as ocorrências em que a previsão não corresponde. Suposição: o modelo de ML é criado antes de usar a regra. Crie o modelo de ML usando o seguinte comando:
  CREATE MODEL
  model-project-id.dataset-id.model-name
        OPTIONS(model_type='logistic_reg') AS
  SELECT
  IF(discount_pct IS NULL, 0, 1) AS label,
  IFNULL(customer_id, "") AS customer,
  IFNULL(currency_id, "") AS currency,
  IFNULL(amount, 0.0) AS amount
  FROM
  `data-project-id.dataset-id.table-names`
  WHERE transaction_timestamp < '2022-01-01';
  
A regra a seguir verifica se a previsão de desconto corresponde ao valor real de cada linha.
       IF(discount_pct > 0, 1, 0)
          =(SELECT predicted_label FROM
           ML.PREDICT(
            MODEL model-project-id.dataset-id.model-name,
              (
                SELECT
                  customer_id,
                  currency_id,
                  amount,
                  discount_pct
                FROM
                  data-project-id.dataset-id.table-names AS t
                    WHERE t.transaction_timestamp =
                     transaction_timestamp
                   LIMIT 1
              )
            )
         )
    
Declaração SQL Valida se o discount_pct é maior que 30% hoje, verificando se existem linhas com um percentual de desconto menor ou igual a 30. SELECT * FROM my_project_id.dim_dataset.dim_currency WHERE discount_pct <= 30 AND transaction_timestamp >= current_date()
Declaração SQL (com parâmetro de referência de dados)

Verifica se o discount_pct é maior que 30% para todas as moedas aceitas no momento.

O filtro de data transaction_timestamp >= current_date() é aplicado como um filtro de linha na tabela de fonte de dados.

O parâmetro de referência de dados ${data()} atua como um marcador de posição para my_project_id.dim_dataset.dim_currency WHERE transaction_timestamp >= current_date() e aplica o filtro de linha.

SELECT * FROM ${data()} WHERE discount_pct > 30

Definir regras de qualidade de dados usando a CLI gcloud

O arquivo YAML de exemplo a seguir usa as mesmas regras das regras de amostra usando tipos integrados e das regras de SQL personalizadas de amostra. É possível usar esse arquivo YAML como entrada para o comando da CLI gcloud.

rules:
- uniquenessExpectation: {}
  column: transaction_id
  dimension: UNIQUENESS
- nonNullExpectation: {}
  column: amount
  dimension: COMPLETENESS
  threshold: 1
- regexExpectation:
  regex: '^[0-9]{8}[a-zA-Z]{16}$'
  column : customer_id
  ignoreNull : true
  dimension : VALIDITY
  threshold : 1
- setExpectation :
  values :
  - 'USD'
  - 'JPY'
  - 'INR'
  - 'GBP'
  - 'CAN'
  column : currency_id
  ignoreNull : true
  dimension : VALIDITY
  threshold : 1
- rowConditionExpectation:
    sqlExpression : 0 < `discount_pct` AND `discount_pct` < 100
  column: discount_pct
  dimension: VALIDITY
  threshold: 1
- rowConditionExpectation:
    sqlExpression : currency_id in (select id from `my_project_id.dim_dataset.dim_currency`)
  column: currency_id
  dimension: VALIDITY
  threshold: 1
- tableConditionExpectation:
    sqlExpression : 30 < avg(discount_pct) AND avg(discount_pct) < 50
  dimension: VALIDITY
- rowConditionExpectation:
    sqlExpression : TIMESTAMP(transaction_timestamp) < CURRENT_TIMESTAMP()
  column: transaction_timestamp
  dimension: VALIDITY
  threshold: 1

Criar uma verificação de qualidade de dados

Console

  1. No console do Google Cloud, acesse a página Qualidade de dados.

    Acessar a qualidade dos dados

  2. Clique em Criar verificação de qualidade de dados.

  3. Na janela Definir verificação, preencha os seguintes campos:

    1. Digite um Nome de exibição.

    2. O ID da verificação será gerado automaticamente se você não fornecer seu próprio documento. Consulte a convenção de nomenclatura de recursos.

    3. Opcional: digite uma Descrição.

    4. No campo Tabela, clique em Procurar, escolha a tabela e clique em Selecionar. O Dataplex aceita apenas tabelas padrão do BigQuery.

      Para tabelas em conjuntos de dados multirregionais, escolha uma região em que a verificação de dados será criada.

      Para navegar pelas tabelas organizadas no lake do Dataplex, clique em Browse dentro de Lakes do Dataplex.

    5. No campo Escopo, escolha Dados incrementais ou Dados inteiros.

      • Se você escolher Incremental: no campo Coluna de carimbo de data/hora, selecione uma coluna do tipo DATE ou TIMESTAMP na sua tabela do BigQuery que cresça monotonicamente e possa ser usada para identificar novos registros. Pode ser uma coluna que particiona a tabela.
    6. Opcional: adicione rótulos. Os rótulos são pares de key:value que permitem agrupar objetos relacionados entre si ou com outros recursos do Google Cloud.

    7. Para filtrar seus dados, clique em Filtros. Marque a caixa de seleção Filtrar linhas. O valor de entrada para o filtro de linha precisa ser uma expressão SQL válida que possa ser usada como parte de uma cláusula WHERE na sintaxe SQL padrão do BigQuery. Por exemplo, col1 >= 0. O filtro pode ser uma combinação de várias condições de coluna. Por exemplo, col1 >= 0 AND col2 < 10.

    8. Para criar amostras de seus dados, na lista Tamanho da amostragem, selecione uma porcentagem de amostragem. Escolha um valor percentual entre 0% e 100%, com até três dígitos decimais. Para conjuntos de dados maiores, escolha uma porcentagem de amostragem mais baixa. Por exemplo, para uma tabela de aproximadamente 1 PB, se você inserir um valor entre 0,1% e 1,0%, o Dataplex vai coletar amostras entre 1 e 10 TB de dados. Para verificações de dados incrementais, o Dataplex aplica a amostragem ao incremento mais recente.

    9. Para publicar os resultados da verificação de qualidade de dados nas páginas do BigQuery e do Data Catalog no console do Google Cloud para a tabela de origem, clique na caixa de seleção Publicar resultados na interface do Dataplex Catalog e do BigQuery. É possível visualizar os resultados da verificação mais recente na guia Qualidade de dados nas páginas do BigQuery e do Data Catalog para a tabela de origem. Para permitir que os usuários acessem os resultados da verificação publicados, consulte Compartilhar os resultados publicados. A opção de publicação pode não estar disponível nos seguintes casos:

      • Você não tem as permissões necessárias na tabela.
      • Outra verificação de qualidade de dados está definida para publicar os resultados.

      Para mais informações sobre as permissões necessárias para visualizar os resultados publicados, consulte Permissões.

    10. Clique em Continuar.

  4. Na janela Programar, escolha uma das seguintes opções:

    • Repetir: execute o job de verificação de qualidade de dados com base em uma programação: diariamente, semanalmente, mensal ou personalizada. Especifique com que frequência a verificação é executada e em que horário. Se você escolher a opção personalizada, use o formato cron para especificar a programação.

    • Sob demanda: execute seu job de verificação de qualidade de dados sob demanda.

    Clique em Continuar.

  5. Na janela Regras de qualidade de dados, defina as regras a serem configuradas para essa verificação de qualidade de dados. Clique em Adicionar regras e escolha uma das opções a seguir.

    • Recomendações com base no perfil: crie regras com base nas recomendações com base em uma verificação de criação de perfil de dados atual.

      1. Escolher colunas: selecione as colunas para receber as regras recomendadas.

      2. Verificar projeto: recomendações com base em uma verificação atual de criação de perfil de dados. Por padrão, o Dataplex seleciona verificações de criação de perfil do mesmo projeto em que você está criando a verificação de qualidade de dados. Se você criou a verificação em um projeto diferente, especifique o projeto de onde as verificações de perfil serão extraídas.

      3. Escolher resultados de perfil: com base nas colunas e no projeto selecionados, vários resultados de perfil são exibidos.

      4. Selecione um ou mais resultados do perfil e clique em OK. Isso preenche uma lista de regras para seleção.

      5. Marque as caixas e clique em Selecionar para selecionar as regras que você quer editar. Depois de selecionadas, as regras são adicionadas à lista de regras atual. Em seguida, você pode editar as regras.

    • Tipos de regra integrados: crie regras a partir de regras predefinidas. Veja a lista de regras predefinidas.

      1. Escolher colunas: selecione as colunas para selecionar as regras.

      2. Escolher os tipos de regra: com base nas colunas selecionadas, vários tipos de regras aparecem para seleção.

      3. Selecione um ou mais tipos de regra e clique em OK. Isso preenche uma lista de regras para seleção.

      4. Para selecionar as regras que você quer editar, marque as caixas e clique em Selecionar. Depois de selecionadas, as regras são adicionadas à lista atual. Em seguida, é possível editar as regras.

    • Regra de verificação de linhas SQL: crie uma regra SQL personalizada para aplicar a cada linha (regra personalizada de verificação de linhas SQL).

      1. Em Dimensão, escolha uma dimensão.

      2. Em Limite de aprovação, escolha uma porcentagem de registros que precisam ser aprovados na verificação.

      3. Em Nome da coluna, escolha uma coluna.

      4. No campo Fornecer uma expressão SQL, insira uma expressão SQL que seja avaliada como um booleano true (aprovado) ou false (reprovado). Para mais informações, consulte Tipos de regras SQL personalizadas compatíveis e os exemplos na seção Definir regras de qualidade de dados deste documento.

      5. Clique em Add.

    • Regra de verificação agregada do SQL: crie uma regra personalizada de verificação agregada do SQL.

      1. Em Dimensão, escolha uma dimensão.

      2. Em Nome da coluna, escolha uma coluna.

      3. No campo Fornecer uma expressão SQL, insira uma expressão SQL que seja avaliada como um booleano true (aprovado) ou false (reprovado). Para mais informações, consulte Tipos de regras SQL personalizadas compatíveis e os exemplos na seção Definir regras de qualidade de dados deste documento.

      4. Clique em Add.

    • Regra de declaração SQL: crie uma regra de declaração SQL personalizada para verificar se há um estado inválido dos dados.

      1. Em Dimensão, escolha uma dimensão.

      2. Opcional: em Nome da coluna, escolha uma coluna.

      3. No campo Fornecer uma instrução SQL, insira uma instrução SQL que retorne linhas que correspondam ao estado inválido. Se alguma linha for retornada, essa regra falhará. Omita o ponto e vírgula à direita da instrução SQL. Para mais informações, consulte Tipos de regras SQL personalizadas compatíveis e os exemplos na seção Definir regras de qualidade de dados deste documento.

      4. Clique em Add.

    O Dataplex permite nomes personalizados para regras de qualidade de dados para monitoramento e alerta. Em qualquer regra de qualidade de dados, é possível atribuir um nome e uma descrição para a regra personalizada. Para fazer isso, edite uma regra e especifique os seguintes detalhes:

    • Nome da regra: insira um nome de regra personalizado com até 63 caracteres. O nome da regra pode incluir letras (a-z, A-Z), dígitos (0-9) e hifens (-) e precisa começar com uma letra e terminar com um número ou uma letra.
    • Descrição: insira uma descrição para a regra com até 1.024 caracteres.

    Clique em Continuar.

  6. Opcional: exporte os resultados da verificação para uma tabela padrão do BigQuery. Clique em Procurar para selecionar um conjunto de dados do BigQuery e armazenar os resultados da verificação de qualidade de dados.

    Se a tabela especificada não existir, o Dataplex a criará para você. Se você estiver usando uma tabela atual, verifique se ela é compatível com o esquema de exportação de tabelas.

  7. Clique em Criar.

    Depois que a verificação for criada, você poderá executá-la a qualquer momento clicando em Executar agora.

gcloud

Para criar uma verificação de qualidade de dados, use o comando gcloud dataplex datascans create data-quality.

Se os dados de origem estiverem organizados em um lake do Dataplex, inclua a sinalização --data-source-entity:

gcloud dataplex datascans create data-quality DATASCAN \
    --location=LOCATION \
    --data-quality-spec-file=DATA_QUALITY_SPEC_FILE \
    --data-source-entity=DATA_SOURCE_ENTITY

Se os dados de origem não estiverem organizados em um lake do Dataplex, inclua a sinalização --data-source-resource:

gcloud dataplex datascans create data-quality DATASCAN \
    --location=LOCATION \
    --data-quality-spec-file=DATA_QUALITY_SPEC_FILE \
    --data-source-resource=DATA_SOURCE_RESOURCE

Substitua as seguintes variáveis:

  • DATASCAN: o nome da verificação de qualidade de dados.
  • LOCATION: a região do Google Cloud em que a verificação de qualidade de dados será criada.
  • DATA_QUALITY_SPEC_FILE: o caminho para o arquivo JSON ou YAML que contém as especificações da verificação de qualidade de dados. O arquivo pode ser um arquivo local ou um caminho do Cloud Storage com o prefixo gs://. É possível especificar outros campos nesse arquivo, como rules, rowFilter ou samplingPercent. Consulte a documentação sobre representação JSON.
  • DATA_SOURCE_ENTITY: a entidade do Dataplex que contém os dados para a verificação de qualidade de dados. Por exemplo, projects/test-project/locations/test-location/lakes/test-lake/zones/test-zone/entities/test-entity.
  • DATA_SOURCE_RESOURCE: o nome do recurso que contém os dados para a verificação da qualidade de dados. Por exemplo, //bigquery.googleapis.com/projects/test-project/datasets/test-dataset/tables/test-table.

REST

Use o APIs Explorer para criar uma verificação de qualidade de dados.

Exportar esquema da tabela

Para exportar os resultados da verificação de qualidade de dados para uma tabela atual do BigQuery, verifique se ela é compatível com o seguinte esquema de tabelas:

Nome da coluna Tipo de dados da coluna Nome do subdomínio
(se aplicável)
Tipo de dados de subcampo Modo Exemplo
data_quality_scan struct/record resource_name string anuláveis //dataplex.googleapis.com/projects/test-project/locations/europe-west2/datascans/test-datascan
project_id string anuláveis dataplex-back-end-dev-project
location string anuláveis us-central1
data_scan_id string anuláveis test-datascan
data_source struct/record resource_name string anuláveis Caso da entidade:
//dataplex.googleapis.com/projects/dataplex-back-end-dev-project/locations/europe-west2/lakes/a0-datascan-test-lake/zones/a0-datascan-test-zone/entities/table1

Caso da tabela: //bigquery.googleapis.com/projects/test-project/datasets/test-dataset/tables/test-table
dataplex_entity_project_id string anuláveis dataplex-back-end-dev-project
dataplex_entity_project_number integer anuláveis 123456789
dataplex_lake_id string anuláveis (Válido somente se a origem for a entidade)
test-lake
dataplex_zone_id string anuláveis (Válido somente se a origem for a entidade)
test-zone
dataplex_entity_id string anuláveis (Válido somente se a origem for a entidade)
test-entity
table_project_id string anuláveis test-project
table_project_number integer anuláveis 987654321
dataset_id string anuláveis (Válido somente se a origem for uma tabela)
test-dataset
table_id string anuláveis (Válido somente se a origem for uma tabela)
test-table
data_quality_job_id string anuláveis caeba234-cfde-4fca-9e5b-fe02a9812e38
data_quality_job_configuration json trigger string anuláveis ondemand/schedule
incremental boolean anuláveis true/false
sampling_percent float anuláveis (0-100)
20.0 (indica 20%)
row_filter string anuláveis col1 >= 0 AND col2 < 10
job_labels json anuláveis {"key1":value1}
job_start_time timestamp anuláveis 2023-01-01 00:00:00 UTC
job_end_time timestamp anuláveis 2023-01-01 00:00:00 UTC
job_rows_scanned integer anuláveis 7500
rule_name string anuláveis test-rule
rule_type string anuláveis Range Check
rule_evaluation_type string anuláveis Per row
rule_column string anuláveis Rule only attached to a certain column
rule_dimension string anuláveis Uniqueness
job_quality_result struct/record passed boolean anuláveis true/false
score float anuláveis 90.8
job_dimension_result json anuláveis {
"accuracy":{
"passed":true
},
"consistency":{
"passed":false
}
}
rule_threshold_percent float anuláveis (0,0 a 100,0)
Rule-threshold-pct in API * 100
rule_parameters json anuláveis {min: 24, max:5345}
rule_pass boolean anuláveis True
rule_rows_evaluated integer anuláveis 7400
rule_rows_passed integer anuláveis 3
rule_rows_null integer anuláveis 4
rule_failed_records_query string anuláveis "SELECT * FROM `test-project.test-dataset.test-table` WHERE (NOT((`cTime` >= '15:31:38.776361' and `cTime` <= '19:23:53.754823') IS TRUE));"

Ao configurar o BigQueryExport para um job de verificação da qualidade de dados, siga estas diretrizes:

  • Para o campo resultsTable, use o formato: //bigquery.googleapis.com/projects/{project-id}/datasets/{dataset-id}/tables/{table-id}.
  • Usar uma tabela padrão do BigQuery.
  • Se a tabela não existir quando a verificação for criada ou atualizada, o Dataplex a criará para você.
  • Por padrão, a tabela é particionada na coluna job_start_time diariamente.
  • Se você quiser que a tabela seja particionada em outras configurações ou não quiser a partição, recrie a tabela com o esquema e as configurações necessários e forneça a tabela pré-criada como a tabela de resultados.
  • Certifique-se de que a tabela de resultados esteja no mesmo local que a tabela de origem.
  • Se o VPC-SC estiver configurado no projeto, a tabela de resultados precisará estar no mesmo perímetro do VPC-SC que a tabela de origem.
  • Se a tabela for modificada durante o estágio de execução de verificação, o job em execução será exportado para a tabela de resultados anteriores e a alteração terá efeito a partir do próximo job de verificação.
  • Não modifique o esquema da tabela. Se você precisar de colunas personalizadas, crie uma visualização na tabela.
  • Para reduzir custos, defina uma expiração na partição com base no seu caso de uso. Para mais informações, consulte como definir a expiração da partição.

Faça uma verificação de qualidade de dados

Console

  1. No console do Google Cloud, acesse a página Qualidade de dados. Acesse Qualidade de dados do Dataplex
  2. Clique na verificação de qualidade de dados para executá-la.
  3. Clique em Executar agora.

gcloud

Para executar uma verificação de qualidade de dados, use o comando gcloud dataplex datascans run:

gcloud dataplex datascans run DATASCAN \
--location=LOCATION \

Substitua as seguintes variáveis:

  • LOCATION: a região do Google Cloud em que a verificação de qualidade de dados foi criada.
  • DATASCAN: o nome da verificação de qualidade de dados.

REST

Use o APIs Explorer para executar a verificação de qualidade de dados.

Conferir os resultados do job de verificação de qualidade de dados

Console

As verificações de qualidade de dados que você criou aparecem na página Qualidade de dados.

Para ver os resultados detalhados de uma verificação, clique no nome dela.

  • A seção Visão geral exibe informações sobre as últimas sete execuções, incluindo quando a verificação foi executada, o número de registros verificados em cada job, se todas as verificações de qualidade de dados foram aprovadas, se houve falhas, o número de verificações de qualidade de dados que falharam e quais dimensões falharam.

  • A seção Configuração da verificação da qualidade de dados mostra detalhes sobre a verificação.

gcloud

Para ver os resultados de um job de verificação de qualidade de dados, use o comando gcloud dataplex datascans jobs describe:

gcloud dataplex datascans jobs describe JOB \
--location=LOCATION \
--datascan=DATASCAN \
--view=FULL

Substitua as seguintes variáveis:

  • JOB: o ID do job de verificação da qualidade de dados.
  • LOCATION: a região do Google Cloud em que a verificação de qualidade de dados foi criada.
  • DATASCAN: o nome da verificação de qualidade de dados à qual o job pertence.
  • --view=FULL: para acessar o resultado do job de verificação, especifique FULL.

REST

Use o APIs Explorer para ver os resultados de uma verificação de qualidade de dados.

Conferir todos os jobs de verificação de qualidade de dados

O Dataplex salva o histórico de verificações de qualidade de dados dos últimos 300 jobs ou do ano anterior, o que ocorrer primeiro.

Console

A guia Histórico de jobs fornece informações sobre jobs anteriores. Ele lista todos os jobs, o número de registros verificados em cada job, o status do job, a hora em que ele foi executado, se cada regra foi aprovada ou falhou e muito mais.

Para visualizar informações detalhadas sobre um job, clique em qualquer um deles na coluna ID do job.

gcloud

Para visualizar todos os jobs de uma verificação de qualidade de dados, use o comando gcloud dataplex datascans jobs list:

gcloud dataplex datascans jobs list \
--location=LOCATION \
--datascan=DATASCAN \

Substitua as seguintes variáveis:

  • LOCATION: a região do Google Cloud em que a verificação de qualidade de dados foi criada.
  • DATASCAN: o nome da verificação de qualidade de dados em que todos os jobs serão visualizados.

REST

Use o APIs Explorer para visualizar todos os jobs de verificação.

Compartilhar os resultados publicados

Ao criar uma verificação de qualidade de dados, se você optar por publicar os resultados da verificação nas páginas do BigQuery e do Data Catalog no console do Google Cloud, os resultados mais recentes estarão disponíveis na guia Qualidade de dados nessas páginas.

É possível permitir que os usuários na sua organização acessem os resultados da verificação publicados. Para conceder acesso aos resultados da verificação, siga estas etapas:

  1. No console do Google Cloud, acesse a página Perfil.

    Acessar o perfil do Dataplex

  2. Clique na verificação de qualidade de dados cujos resultados você quer compartilhar.

  3. Acesse a guia Permissões.

  4. Clique em Conceder acesso.

  5. No campo Novos principais, adicione a principal a que você quer conceder acesso.

  6. No campo Selecionar um papel, selecione Leitor de dados do DataScan Dataplex.

  7. Clique em Salvar.

Para remover o acesso aos resultados da verificação publicados de um principal, siga estas etapas:

  1. No console do Google Cloud, acesse a página Perfil.

    Acessar o perfil do Dataplex

  2. Clique na verificação de qualidade de dados cujos resultados você quer compartilhar.

  3. Acesse a guia Permissões.

  4. Selecione o principal de que você quer remover o papel Dataplex DataScan DataViewer.

  5. Clique em Remover acesso.

  6. Clique em Confirmar.

Atualizar uma verificação de qualidade de dados

Console

  1. No console do Google Cloud, acesse a página Qualidade dos dados.

    Acessar a qualidade dos dados

  2. Na linha com a digitalização a ser editada, clique nos três pontos verticais > Editar.

  3. Edite os valores.

  4. Clique em Salvar.

gcloud

Para atualizar a descrição de uma verificação de qualidade de dados, use o comando gcloud dataplex datascans update data-quality:

gcloud dataplex datascans update data-quality DATASCAN \
--location=LOCATION \
--description=DESCRIPTION

Substitua:

  • DATASCAN: o nome da verificação de qualidade de dados a ser atualizada.
  • LOCATION: a região do Google Cloud em que a verificação de qualidade de dados foi criada.
  • DESCRIPTION: a nova descrição para a verificação de qualidade de dados.

REST

Use o APIs Explorer para editar a verificação da qualidade de dados.

Excluir uma verificação de qualidade de dados

Console

  1. No console do Google Cloud, acesse a página Qualidade de dados.

    Acessar a qualidade dos dados

  2. Clique na verificação que você quer excluir.

  3. Clique em Excluir.

gcloud

Para excluir uma verificação de qualidade de dados, use o comando gcloud dataplex datascans delete:

gcloud dataplex datascans delete DATASCAN \
--location=LOCATION \
--async

Substitua as seguintes variáveis:

  • DATASCAN: o nome da verificação de qualidade de dados a ser excluída.
  • LOCATION: a região do Google Cloud em que a verificação de qualidade de dados foi criada.

REST

Use o APIs Explorer para excluir sua verificação de qualidade de dados.

Definir alertas no Cloud Logging

Para definir alertas de falhas de qualidade de dados usando os registros no Cloud Logging, siga estas etapas:

Console

  1. No console do Google Cloud, acesse a Análise de registros do Cloud Logging.

    Acessar o "Explorador de registros"

  2. Na janela Consulta, insira sua consulta. Veja exemplos de consultas.

  3. Selecione Executar consulta.

  4. Clique em Criar alerta. Isso abre um painel lateral.

  5. Digite o nome da política de alertas e clique em Próxima.

  6. Revise a consulta.

    1. Clique no botão Visualizar registros para testar a consulta. Isso mostra registros com condições correspondentes.

    2. Clique em Próxima.

  7. Defina o tempo entre as notificações e clique em Próxima.

  8. Defina quem receberá a notificação do alerta e clique em Salvar para criar a política de alertas.

Como alternativa, é possível configurar e editar os alertas navegando no console do Google Cloud até Monitoramento > Alertas.

gcloud

Incompatível.

REST

Use o APIs Explorer para definir alertas no Cloud Logging.

Exemplos de consultas para definir alertas no nível do job ou da dimensão

  • Um exemplo de consulta para definir alertas sobre falhas gerais da qualidade de dados para uma verificação de qualidade de dados:

    resource.type="dataplex.googleapis.com/DataScan"
    AND labels."dataplex.googleapis.com/data_scan_state"="SUCCEEDED"
    AND resource.labels.resource_container="projects/112233445566"
    AND resource.labels.datascan_id="a0-test-dec6-dq-3"
    AND NOT jsonPayload.dataQuality.passed=true
    
  • Um exemplo de consulta para definir alertas sobre falhas na qualidade de dados de uma dimensão (por exemplo, exclusividade) de uma determinada verificação de qualidade de dados:

    resource.type="dataplex.googleapis.com/DataScan"
    AND labels."dataplex.googleapis.com/data_scan_state"="SUCCEEDED"
    AND resource.labels.resource_container="projects/112233445566"
    AND resource.labels.datascan_id="a0-test-dec6-dq-3"
    AND jsonPayload.dataQuality.dimensionPassed.UNIQUENESS=false
    
  • Um exemplo de consulta para definir alertas sobre falhas na qualidade de dados de uma tabela.

    • Defina alertas sobre falhas de qualidade de dados para uma tabela do BigQuery que não esteja organizada em um lake do Dataplex:

      resource.type="dataplex.googleapis.com/DataScan"
      AND jsonPayload.dataSource="//bigquery.googleapis.com/projects/test-project/datasets/testdataset/table/chicago_taxi_trips"
      AND labels."dataplex.googleapis.com/data_scan_state"="SUCCEEDED"
      AND resource.labels.resource_container="projects/112233445566"
      AND NOT jsonPayload.dataQuality.passed=true
      
    • Defina alertas sobre falhas de qualidade de dados para uma tabela do BigQuery organizada em um lake do Dataplex:

      resource.type="dataplex.googleapis.com/DataScan"
      AND jsonPayload.dataSource="projects/test-project/datasets/testdataset/table/chicago_taxi_trips"
      AND labels."dataplex.googleapis.com/data_scan_state"="SUCCEEDED"
      AND resource.labels.resource_container="projects/112233445566"
      AND NOT jsonPayload.dataQuality.passed=true
      

Exemplos de consultas a serem definidas por alerta de regra

  • Um exemplo de consulta para definir alertas sobre todas as regras de qualidade de dados com falha com o nome da regra personalizada especificada para uma verificação de qualidade de dados:

    resource.type="dataplex.googleapis.com/DataScan"
    AND jsonPayload.ruleName="custom-name"
    AND jsonPayload.result="FAILED"
    
  • Um exemplo de consulta para definir alertas sobre todas as regras de qualidade de dados com falha de um tipo de avaliação específico para uma verificação de qualidade de dados:

    resource.type="dataplex.googleapis.com/DataScan"
    AND jsonPayload.evalutionType="PER_ROW"
    AND jsonPayload.result="FAILED"
    
  • Um exemplo de consulta para definir alertas sobre todas as regras de qualidade de dados com falha referentes a uma coluna na tabela usada para uma verificação de qualidade de dados:

    resource.type="dataplex.googleapis.com/DataScan"
    AND jsonPayload.column="CInteger"
    AND jsonPayload.result="FAILED"
    

Resolver uma falha de qualidade de dados

Para cada job com regras no nível da linha que falham, o Dataplex fornece uma consulta para receber os registros com falha. Execute esta consulta para ver os registros que não correspondem à sua regra.

Console

  1. No console do Google Cloud, acesse a página Qualidade de dados.

    Acessar a qualidade dos dados

  2. Clique no Display name para selecionar a verificação com problemas.

  3. Na guia Histórico de jobs, encontre a execução da verificação que falhou e clique no link de falha.

  4. Na janela do job que será aberta, na seção Regras, localize a coluna Consulta para acessar os registros com falha.

  5. Copie a consulta para executá-la no BigQuery e confira os registros que causaram a falha do job.

gcloud

Incompatível.

REST

Use o APIs Explorer para acessar a consulta para receber registros com falha de jobs com falha.

A seguir