Receber Notificações para Eventos de Coleta do Serviço Data Catalog

Neste tutorial, você configura o serviço Oracle Cloud Infrastructure Events para enviar a você um e-mail sempre que um job de coleta do serviço Data Catalog for iniciado, bem-sucedido ou falhar em um compartimento específico. As principais tarefas incluem como:

  • Crie tópicos e assinaturas.
  • Escreva as regras para receber notificações por e-mail dos eventos.
  • Crie buckets com dados.
  • Coletar dados no serviço Data Catalog.

Antes de Começar

Para executar este tutorial, com sucesso, você deve ter:

Se você tiver direitos administrativos para sua conta, ignore o restante desta seção. Caso contrário, peça ao administrador que adicione a seguinte política à sua conta:
allow group <the-group-your-username-belongs> to manage all-resources in compartment catalog-compartment

Consulte Políticas Comuns para obter mais exemplos.

Observação

Na próxima seção, você cria um compartimento para suas instâncias do catálogo de dados, chamado catalog-compartment.

1. Configurar uma Notificação

Nesta seção, você configura o serviço Notifications para registrar seu e-mail para uma assinatura personalizada. Posteriormente, você usará essa assinatura para receber notificações em sua conta de e-mail.

Criar um Compartimento

Crie um compartimento para instâncias, eventos e notificações do catálogo de dados.

  1. Abra o menu de navegação e selecione Identidade e Segurança. Em Identidade, selecione Compartimentos.
  2. Clique em Criar Compartimento.
  3. Preencha as seguintes informações:
    • Nome: catalog-compartment
    • Descrição: Compartment for data catalogs.
    • Compartimento Principal: <your-tenancy>(root)
  4. Clique em Criar Compartimento.

Você criou com sucesso um compartimento para os recursos do catálogo de dados.

Criar um Tópico
  1. Abra o menu de navegação e selecione Serviços ao Desenvolvedor. Em Integração de Aplicativos, selecione Notificações.
  2. No painel esquerdo, em Compartimento, selecione catalog-compartment.
    Atualize a navegação esquerda se a seção Compartimento não listar catalog-compartment.
    Observação

    Certifique-se de selecionar esse compartimento para todos os recursos criados neste tutorial.
  3. Clique em Criar tópico.
  4. Preencha as seguintes informações:
    • Nome: catalog-topic
    • Descrição: Topic for data catalog harvest events.
  5. Clique em Criar.
Você criou com sucesso um tópico para suas notificações.
Criar uma Assinatura
  1. No serviço Notifications, clique em catalog-topic na lista de tópicos.
  2. Clique em Criar Assinatura.
  3. Preencha as seguintes informações:
    • Protocolo: E-mail
    • E-mail: <your-email>
  4. Clique em Criar.
  5. Verifique sua conta de e-mail para obter um e-mail com o assunto, noreply@notification.<your-region>.oci.oraclecloud.com
  6. Clique no link Confirmar Assinatura no e-mail.
    Você obtém uma página no browser com a mensagem:

    Você assinou <your-email> para o tópico: catalog-topic.

  7. Na Console, aguarde até que o status da assinatura mude de pendente para ativa.
Você criou com sucesso uma assinatura de e-mail para seu tópico.

2. Configurar uma Regra de Evento

Nesta seção, você configura uma regra no serviço Events para enviar um e-mail sempre que um job de coleta for iniciado, bem-sucedido ou falhar em seu compartimento.

Criar uma Regra
  1. Abra o menu de navegação e selecione Observabilidade e Gerenciamento. Em Serviço Events, selecione Regras.
  2. Clique em Criar Regra.
  3. Preencha as seguintes informações:
    • Nome para Exibição: catalog-harvest-rule
    • Descrição: Receive an email when a harvest job starts, succeeds or fails in the catalog-compartment.
    • Condições da Regra:
      • Condição: Tipo de Evento
      • Nome do Serviço: Data Catalog
      • Tipo de Evento: Coleta - Início
      • Tipo de Evento: Coleta - Fim
      Observação

      Certifique-se de selecionar Harvest-Begin e Harvest-End.
  4. Clique em + Outra Condição.
  5. Preencha as seguintes informações:
    • Condições da Regra:
      • Condição: Atributo
      • Nome do Atributo: CompartmentName
      • Valores do Atributo: catalog-compartment

    A Lógica da Regra é preenchida automaticamente:

    MATCH event WHERE (
    eventType EQUALS ANY OF (
    com.oraclecloud.datacatalog.harvestjob.end,
    com.oraclecloud.datacatalog.harvestjob.begin
    )
    AND (
    compartmentName MATCHES ANY OF (
    laleh-catalog-compartment
    )
    )
    )
  6. Na seção Ações, preencha as seguintes informações:
    • Tipo de Ação: Notificações
    • Compartimento de Notificações: catalog-compartment
    • Tópico: catalog-topic
  7. Clique em Criar Regra.
Você criou com sucesso uma regra de evento para os jobs de coleta do catálogo de dados.

3. Criar um Bucket com Dados

Nesta seção, você cria um bucket no serviço Object Storage. Em seguida, adicione dados ao bucket.

Criar um Bucket

Crie um bucket no serviço Object Storage.

  1. Abra o menu de navegação e selecione Armazenamento. Em Object Storage & Archive Storage, selecione Buckets.
  2. Clique em Criar Bucket.
  3. Preencha as seguintes informações:
    • Nome: catalog-bucket
    • Deixe o valor padrão para outros campos.
  4. Clique em Criar Bucket.
Você criou com sucesso um bucket para seus dados.
Adicionar Dados ao Bucket
  1. No serviço Object Storage, na lista de buckets, clique em catalog-bucket.
  2. Clique em Fazer Upload.
  3. Selecione as duas imagens que você preparou na seção antes de começar.
  4. Clique em Fazer Upload e depois em Fechar.
    As duas imagens aparecem na lista de Objetos.
Você adicionou dados ao seu bucket com sucesso.
Conceder ao Serviço Data Catalog Acesso ao Bucket
Nesta seção, você concede ao serviço Data Catalog acesso aos recursos do serviço Object Storage no catalog-compartment. Esta política permite que suas instâncias do catálogo de dados façam download de metadados do catalog-bucket.
  1. Abra o menu de navegação e selecione Identidade e Segurança. Em Identidade, selecione Políticas..
  2. Clique em Criar Política.
  3. Preencha as seguintes informações:
    • Nome: catalog-policy
    • Descrição: Allow Data Catalog to access Object Storage resources.
    • Na seção Construtor de Políticas, clique em Personalizar (Avançado).
  4. Cole a seguinte política no construtor de políticas:
    allow service datacatalog to read object-family in compartment catalog-compartment
  5. Clique em Criar.
Você criou com sucesso uma política do catálogo de dados para acessar os recursos de armazenamento de objetos, incluindo buckets.

4. Coletar o Bucket

Nesta seção, você cria uma instância do catálogo de dados. Em seguida, conecta essa instância ao bucket e coleta dele os metadados. Por último, você verifica suas notificações por e-mail dos jobs de coleta.

Reunir as Informações Necessárias

Prepare as informações necessárias e copie-as para um bloco de notas.

Colete as seguintes informações na Console:

  • ID do Compartimento: <compartment-ocid>
    • Na barra de pesquisa da Console, digite catalog-compartment.
    • Clique em catalog-compartment nos resultados da pesquisa.
    • Copie o OCID.
  • (OCI) Região: <region-identifier>
    • Na barra de navegação superior, localize <your-region>. Exemplo: US West (Phoenix).
    • Na barra de navegação superior, vá para o ícone Perfil e clique em Tenancy: <your tenancy>.
    • Clique em Gerenciar Regiões.
    • Na lista de regiões, localize <region-identifier> para <your-region>. Exemplo: us-phoenix-1.
  • URL:<object-storage-swift-URI>
    • Copie a seguinte string:
      https://swiftobjectstorage.<region-identifier>.oraclecloud.com
    • Substitua <region-identifier> pelas informações reunidas para Região.
  • Namespace: <object-storage-namespace>
    • Na barra de navegação superior, vá para o ícone Perfil e clique em Tenancy: <your tenancy>.
    • Copie o valor do Namespace do Object Storage.
Criar uma Instância do Serviço Data Catalog
  1. Abra o menu de navegação e selecione Análise e IA. Em Data Lake, selecione Data Catalog.
  2. Clique em Criar Serviço do Data Catalog.
  3. Preencha as seguintes informações:
    • Criar no Compartimento: catalog-compartment
    • Nome: catalog-instance-1
    • Deixe o valor padrão para outros campos.
  4. Clique em Criar Serviço do Data Catalog.
Você criou com sucesso uma instância do catálogo de dados.
Criar um Ativo de Dados
  1. No serviço Data Catalog, na lista de instâncias do catálogo de dados, clique em catalog-instance-1.
  2. No mosaico Ações Rápidas, selecione Criar Ativo de Dados.
  3. Preencha as seguintes informações:
    • Nome: object-storage-data-asset
  4. Para Tipo, selecione Oracle Object Storage
  5. Use as informações da seção Coletar Informações Obrigatórias para os seguintes campos:
    • URL: https://swiftobjectstorage.<region-identifier>.oraclecloud.com
    • Namespace: <object-storage-namespace>
  6. Clique em Criar.
Você criou com sucesso um ativo de dados em sua instância do catálogo de dados.
Estabelecer Conexão com o Bucket
Conecte catalog-bucket a catalog-instance-1.
  1. Na Home page de catalog-instance-1, vá para o mosaico Recentemente Atualizado e selecione object-storage-data-asset.
  2. Em Conexões, clique em Adicionar Conexão.
  3. Preencha as seguintes informações:
    • Nome: catalog-bucket-connection
  4. Para Tipo, selecione S2S Principal
  5. Use as informações da seção Coletar Informações Obrigatórias para os seguintes campos:
    • OCI Região: <region-identifier>
    • OCID do Compartimento: <compartment-ocid>
  6. Selecione Torne esta a conexão padrão para o ativo de dados.
  7. Clique em Testar Conexão.
  8. Clique em Adicionar.
Você conectou com sucesso um bucket à sua instância do catálogo de dados.
Coletar o Bucket
  1. Na Home page de catalog-instance-1, vá para o mosaico Recentemente Atualizado e selecione object-storage-data-asset.
  2. Clique em Coletar.
  3. Para a etapa Selecionar uma Conexão, selecione catalog-bucket-connection e clique em Próximo.
  4. Na etapa Selecionar Entidades de Dados, faça o seguinte:
    • Exibir o conteúdo do bucket: Clique em catalog-bucket.
    • Adicione os metadados de todas as imagens ao catálogo: Clique em Adicionar Tudo.
    • Clique em Próximo.
  5. Preencha ou selecione os seguintes campos:
    • Nome do Job: harvest-catalog-bucket
    • Incluir Arquivos Não reconhecidos: selecionado
    • Deixe o valor padrão para outros campos.
  6. Clique em Criar Job.
  7. Clique no job harvest-catalog-bucket.
  8. Confirme o seguinte resumo:
    • Status: Succeeded
    • Entidades de Dados Coletadas: 2
    • Arquivos Não Reconhecidos Coletados: 2 (Imagens são arquivos não reconhecidos.)
Você criou com sucesso um job de coleta do seu bucket, na instância do seu catálogo de dados.
Verificar seu E-mail
  1. Verifique sua conta de e-mail em busca de um e-mail com o seguinte assunto:

    OCI Event Notification :com.oraclecloud.datacatalog.harvestjob.begin

  2. Verifique o conteúdo do e-mail.

    De: noreply@notification.<region-identifier>.oci.oraclecloud.com

    Exemplo de corpo de e-mail:

    {
      "eventType" : "com.oraclecloud.datacatalog.harvestjob.end",
      "cloudEventsVersion" : "0.1",
      "eventTypeVersion" : "2.0",
      "source" : "DataCatalog",
      "eventTime" : "<time-harvest-job-began>",
      "contentType" : "application/json",
      "data" : {
        "compartmentId" : "ocid1.compartment.oc1..aaaaxxxx",
        "compartmentName" : "catalog-compartment",
        "resourceName" : "",
        "resourceId" : "ocid1.datacatalog.oc1.iad.aaaaxxxx",
        "additionalDetails" : {
          "harvestStatus" : "IN_PROGRESS",
          "dataAssetKey" : "<data-asset-key>",
          "dataAssetName" : "object-storage-data-asset",
          "connectionKey" : "<connection-key",
          "jobKey" : "<job-key>",
          "jobUrl" : "",
          "jobDefinitionKey" : "<job-definition-key>",
          "connectionName" : "catalog-bucket-connection",
          "jobDefinitionName" : "harvest-catalog-bucket",
          "jobExecutionKey" : "<job-execution-key>"
        }
      },
      "eventID" : "<event-ocid>",
      "extensions" : {
        "compartmentId" : "ocid1.compartment.oc1..aaaaxxxx"
      }
    }
    
  3. Localize o valor para "harvestStatus".
    "harvestStatus" : "IN_PROGRESS"
  4. Verifique sua conta de e-mail em busca de um e-mail com o assunto:
    OCI Event Notification :com.oraclecloud.datacatalog.harvestjob.end
  5. Verifique o conteúdo do e-mail.

    De: noreply@notification.<region-identifier>.oci.oraclecloud.com

    Exemplo de corpo de e-mail:

    {
      "eventType" : "com.oraclecloud.datacatalog.harvestjob.end",
      "cloudEventsVersion" : "0.1",
      "eventTypeVersion" : "2.0",
      "source" : "DataCatalog",
      "eventTime" : "<time-harvest-job-ended>",
      "contentType" : "application/json",
      "data" : {
        "compartmentId" : "ocid1.compartment.oc1..aaaaxxxx",
        "compartmentName" : "catalog-compartment",
        "resourceName" : "",
        "resourceId" : "ocid1.datacatalog.oc1.iad.aaaaxxxx",
        "additionalDetails" : {
          "harvestStatus" : "SUCCEEDED",
          "dataAssetKey" : "<data-asset-key>",
          "dataAssetName" : "object-storage-data-asset",
          "connectionKey" : "<connection-key",
          "jobKey" : "<job-key>",
          "jobUrl" : "",
          "jobDefinitionKey" : "<job-definition-key>",
          "connectionName" : "catalog-bucket-connection",
          "jobDefinitionName" : "harvest-catalog-bucket",
          "jobExecutionKey" : "<job-execution-key>"
        }
      },
      "eventID" : "<event-ocid>",
      "extensions" : {
        "compartmentId" : "ocid1.compartment.oc1..aaaaxxxx"
      }
    }
    
  6. Localize o valor para "harvestStatus".
    "harvestStatus" : "SUCCEEDED"
    O status é concluído:
    Observação

    O "harvestStatus" para um evento harvestjob.begin é "IN_PROGRESS" e para um evento harvestjob.end é "SUCCEEDED" ou "FAILED".

O Que Vem a Seguir

Parabéns! Você recebeu com sucesso dois e-mails de notificação, um quando um job de coleta foi iniciado e outro quando ele foi concluído.

Agora que você está familiarizado com a coleta do Oracle Object Storage, consulte os seguintes tutoriais e crie notificações para outros tipos de origens de dados: