Consultar Dados Externos com o Serviço Data Catalog
O Oracle Cloud Infrastructure Data Catalog é o serviço de gerenciamento de metadados do Oracle Cloud que ajuda você a descobrir dados e oferecer suporte à governança de dados. Ele fornece um inventário de ativos, um glossário de negócios e um metastore comum para data lakes.
O Autonomous Database pode aproveitar esses metadados para simplificar drasticamente o gerenciamento de acesso ao armazenamento de objetos do seu data lake. Em vez de definir manualmente tabelas externas para acessar o data lake, use as tabelas externas que são definidas e gerenciadas automaticamente. Essas tabelas serão encontradas em esquemas protegidos do Autonomous Database que são mantidos atualizados com alterações no serviço Data Catalog.
Para obter mais informações sobre o serviço Data Catalog, consulte a documentação do serviço Data Catalog.
- Sobre a Consulta com o Serviço Data Catalog
Ao sincronizar com metadados do serviço Data Catalog, o Autonomous Database cria automaticamente tabelas externas para cada entidade lógica coletada pelo serviço Data Catalog. Essas tabelas externas são definidas em esquemas de banco de dados que são totalmente gerenciados pelo processo de sincronização de metadados. Os usuários podem consultar dados imediatamente sem precisar derivar manualmente o esquema (colunas e tipos de dados) para origens de dados externas e criar tabelas externas manualmente. - Conceitos Relacionados à Consulta com o Serviço Data Catalog
É necessária uma compreensão dos conceitos a seguir para consulta com o serviço Data Catalog. - Mapeamento de Sincronização
O processo de sincronização cria e atualiza esquemas do Autonomous Database e tabelas externas com base em ativos de dados, pastas, entidades lógicas, atributos e substituições personalizadas relevantes do serviço Data Catalog. - Workflow Típico com o Serviço Data Catalog
Há um workflow típico de ações executadas por usuários que desejam consultar o serviço Data Catalog. - Exemplo: MovieStream Cenário
Nesse cenário, o Moviestream está capturando dados em uma zona de destino no armazenamento de objetos. Grande parte desses dados, mas não necessariamente todos, é usada para alimentar um Autonomous Database. Antes de alimentar o Autonomous Database, os dados são transformados, limpos e subsequentemente armazenados na área "ouro". - Exemplo: Cenário de Dados Particionados
Esse cenário ilustra como criar tabelas externas no Autonomous Database baseadas em entidades lógicas do serviço Data Catalog coletadas de dados particionados no Object Store.
Tópico principal: Consultar Dados Externos com Autonomous Database
Sobre a Consulta com o Serviço Data Catalog
Ao sincronizar com metadados do serviço Data Catalog, o Autonomous Database cria automaticamente tabelas externas para cada entidade lógica coletada pelo serviço Data Catalog. Essas tabelas externas são definidas em esquemas de banco de dados que são totalmente gerenciados pelo processo de sincronização de metadados. Os usuários podem consultar dados imediatamente sem precisar derivar manualmente o esquema (colunas e tipos de dados) para origens de dados externas e criar tabelas externas manualmente.
A sincronização é dinâmica, mantendo o Autonomous Database atualizado em relação às alterações nos dados subjacentes, reduzindo o custo de administração, pois ele mantém automaticamente centenas a milhares de tabelas. Ele também permite que várias instâncias do Autonomous Database compartilhem o mesmo serviço Data Catalog, reduzindo ainda mais os custos de gerenciamento e fornecendo um conjunto comum de definições de negócios.
As pastas/buckets do serviço Data Catalog são contêineres que sincronizam com esquemas do Autonomous Database. As entidades lógicas dentro dessas pastas/buckets são mapeadas para tabelas externas do Autonomous Database. Esses esquemas e tabelas externas são gerados e mantidos automaticamente por meio do processo de sincronização:
- Pastas/Buckets mapeiam para esquemas de banco de dados que são apenas para fins organizacionais.
- A organização deve ser consistente com o data lake e minimizar a confusão ao acessar dados por diferentes caminhos.
- O serviço Data Catalog é a origem da verdade para as tabelas contidas nos esquemas. As alterações feitas no serviço Data Catalog atualizam as tabelas do esquema durante uma sincronização subsequente.
Para usar esse recurso, um Administrador do Serviço Database Data Catalog inicia uma conexão com uma instância do serviço Data Catalog, seleciona quais ativos de dados e entidades lógicas serão sincronizados e executa a sincronização. O processo de sincronização cria esquemas e tabelas externas com base nos ativos de dados coletados e nas entidades lógicas do serviço Data Catalog selecionado. Assim que as tabelas externas são criadas, os Analistas de Dados podem começar a consultar seus dados sem precisar derivar manualmente o esquema para origens de dados externas e criar tabelas externas.
O Pacote
DBMS_DCAT
está disponível para executar as tarefas necessárias para consultar ativos de dados do armazenamento de objetos do serviço Data Catalog. Consulte Pacote DBMS_DCAT.
Tópico principal: Consultar Dados Externos com o Serviço Data Catalog
Conceitos Relacionados à Consulta com o Serviço Data Catalog
É necessária uma compreensão dos conceitos a seguir para consulta com o serviço Data Catalog.
- Serviço Data Catalog
-
O serviço Data Catalog coleta ativos de dados que apontam para as origens de dados de armazenamento de objetos que você deseja consultar com o Autonomous Database. No serviço Data Catalog, você pode especificar como os dados são organizados durante a coleta, suportando diferentes padrões de organização de arquivos. Como parte do processo de coleta do serviço Data Catalog, você pode selecionar os buckets e arquivos que deseja gerenciar no ativo. Para obter mais informações, consulte Visão Geral do Serviço Data Catalog.
- Armazenamentos de Objetos
-
As Lojas de Objetos têm buckets que contêm uma variedade de objetos. Alguns tipos comuns de objetos encontrados nesses buckets incluem: arquivos CSV, parquet, avro, json e ORC. Os buckets geralmente têm uma estrutura ou um padrão de design para os objetos que eles contêm. Há muitas maneiras diferentes de estruturar dados e muitas maneiras diferentes de interpretar esses padrões.
Por exemplo, um padrão de design típico usa pastas de nível superior que representam tabelas. Os arquivos dentro de uma determinada pasta compartilham o mesmo esquema e contêm dados para essa tabela. As subpastas são frequentemente usadas para representar partições de tabela (por exemplo, uma subpasta para cada dia). O serviço Data Catalog se refere a cada pasta de nível superior como uma entidade lógica, e essa entidade lógica é mapeada para uma tabela externa do Autonomous Database.
- Conexão
-
Uma conexão é uma conexão do Autonomous Database com uma instância do serviço Data Catalog. Para cada instância do Autonomous Database, pode haver conexões com várias instâncias do serviço Data Catalog. A credencial do Autonomous Database deve ter direitos de acesso aos ativos do serviço Data Catalog que foram coletados do armazenamento de objetos.
- Coleta
-
Um processo do serviço Data Catalog que verifica o armazenamento de objetos e gera as entidades lógicas de seus conjuntos de dados.
- Ativo de Dados
-
Um ativo de dados no serviço Data Catalog representa uma origem de dados, que inclui bancos de dados, Oracle Object Storage, Kafka e muito mais. O Autonomous Database utiliza os ativos do Oracle Object Storage para sincronização de metadados.
- Entidade de Dados
-
Entidade de dados no serviço Data Catalog é uma coleção de dados, como uma tabela ou view do banco de Dados, ou um único arquivo, e normalmente tem muitos atributos que descrevem seus dados.
- Entidade Lógica
-
Em Data Lakes, vários arquivos geralmente compreendem uma única entidade lógica. Por exemplo, você pode ter arquivos de sequência de cliques diários e esses arquivos compartilham o mesmo esquema e tipo de arquivo.
Uma entidade lógica do serviço Data Catalog é um grupo de arquivos do serviço Object Storage que são derivados durante a coleta aplicando padrões de nome de arquivo que foram criados e designados a um ativo de dados.
- Objeto de Dados
-
Um objeto de dados no serviço Data Catalog refere-se a ativos de dados e entidades de dados.
- Padrão de Nome de Arquivo
-
Em um data lake, os dados podem ser organizados de diferentes maneiras. Normalmente, as pastas capturam arquivos do mesmo esquema e tipo. Você deve se registrar no serviço Data Catalog como seus dados são organizados. Os padrões de nome de arquivo são usados para identificar como seus dados são organizados. No serviço Data Catalog, você pode definir padrões de nome de arquivo usando expressões regulares. Quando o serviço Data Catalog coleta um ativo de dados com um padrão de nome de arquivo designado, as entidades lógicas são criadas com base no padrão de nome de arquivo. Ao definir e designar esses padrões a ativos de dados, vários arquivos podem ser agrupados como entidades lógicas com base no padrão de nome de arquivo.
- Sincronizar (Sincronizar)
-
O Autonomous Database executa sincronizações com o serviço Data Catalog para manter automaticamente seu banco de dados atualizado em relação às alterações nos dados subjacentes. A sincronização pode ser realizada manualmente ou em uma programação.
O processo de sincronização cria esquemas e tabelas externas com base nos ativos de dados e entidades lógicas do serviço Data Catalog. Esses esquemas são protegidos, o que significa que seus metadados são gerenciados pelo serviço Data Catalog. Se quiser alterar os metadados, você deverá fazer as alterações no serviço Data Catalog. Os esquemas do Autonomous Database refletirão quaisquer alterações após a execução da próxima sincronização. Para obter mais detalhes, consulte Mapeamento de Sincronização.
Tópico principal: Consultar Dados Externos com o Serviço Data Catalog
Mapeamento de Sincronização
O processo de sincronização cria e atualiza esquemas do Autonomous Database e tabelas externas com base em ativos de dados, pastas, entidades lógicas, atributos e substituições personalizadas relevantes do serviço Data Catalog.
Catálogo de Dados | Autonomous Database | Descrição do Mapeamento |
---|---|---|
Ativo de dados e pasta (bucket de armazenamento de objetos) |
Nome do esquema |
Valores padrão: Por padrão, o nome do esquema gerado no Autonomous Database tem o seguinte formato:
Personalizações: Odata-asset-name e o folder-name padrão podem ser personalizados definindo propriedades personalizadas, nomes de negócios e nomes de exibição para substituir esses nomes padrão.
Exemplos:
|
Entidade lógica | Tabela externa |
As entidades lógicas são mapeadas para tabelas externas. Se a entidade lógica tiver um atributo particionado, ele será mapeado para uma tabela externa particionada. O nome da tabela externa é derivado do Nome para Exibição ou do Nome da Empresa da entidade lógica correspondente. Se Por exemplo, se |
Atributos da entidade lógica | Colunas da tabela externa |
Nomes de coluna: Os nomes de coluna de tabela externa são derivados dos nomes de exibição de atributo da entidade lógica correspondente, ou nomes de negócios. Para entidades lógicas derivadas de arquivos Parquet, Avro e ORC, o nome da coluna é sempre o nome de exibição do atributo, pois representa o nome do campo derivado dos arquivos de origem. Para atributos correspondentes a uma entidade lógica derivada de arquivos CSV, os seguintes campos de atributo são usados na ordem de precedência para gerar o nome da coluna:
Tipo de coluna: A propriedade personalizada Para atributos correspondentes a uma entidade lógica derivada de arquivos Avro com tipos de dados Tamanho da coluna: A propriedade personalizada Precisão da coluna: A propriedade personalizada Para atributos correspondentes a uma entidade lógica derivada de arquivos Avro com tipos de dados Escala de colunas: A propriedade personalizada |
Tópico principal: Consultar Dados Externos com o Serviço Data Catalog
Workflow Típico com o Serviço Data Catalog
Há um workflow típico de ações executadas por usuários que desejam consultar o serviço Data Catalog.
O Administrador de Consulta do Catálogo de Dados do Banco de Dados ou o Administrador do Banco de Dados concede acesso READ às tabelas externas geradas para que os Analistas de Dados e outros usuários do banco de dados possam procurar e consultar as tabelas externas.
A tabela abaixo descreve cada ação em detalhes. Para obter uma descrição dos diferentes tipos de usuário incluídos nesta tabela, consulte Usuários e Atribuições do Serviço Data Catalog.
O Pacote
DBMS_DCAT
está disponível para executar as tarefas necessárias para consultar ativos de dados do armazenamento de objetos do serviço Data Catalog. Consulte Pacote DBMS_DCAT.
Ação | Quem é o usuário | Descrição |
---|---|---|
Criar políticas |
Administrador do Data Catalog do Banco de Dados |
O controlador de recursos do Autonomous Database ou a credencial de usuário do Autonomous Database deve ter as permissões apropriadas para gerenciar o serviço Data Catalog e para leitura no armazenamento de objetos. Mais informações: Credenciais Obrigatórias e Políticas do Serviço IAM. |
Criar credenciais |
Administrador do Data Catalog do Banco de Dados |
Certifique-se de que as credenciais do banco de dados estejam em vigor para acessar o serviço Data Catalog e consultar o armazenamento de objetos. O usuário chama o Mais informações: DBMS_CLOUD CREATE_CREDENTIAL Procedure, Usar Controlador de Recursos com DBMS_CLOUD. |
Criar conexões com o serviço Data Catalog |
Administrador do Data Catalog do Banco de Dados |
Para iniciar uma conexão entre uma instância do Autonomous Database e uma instância do serviço Data Catalog, o usuário chama A conexão com a instância do serviço Data Catalog deve usar um objeto de credencial de banco de dados com privilégios suficientes do Oracle Cloud Infrastructure (OCI). Por exemplo, o Token de Serviço do Controlador de Recursos para a instância do Autonomous Database ou um usuário do OCI com privilégios suficientes pode ser usado. Depois que a conexão for estabelecida, a instância do serviço Data Catalog será atualizada com o namespace
DBMS_DCAT e as propriedades personalizadas (se elas ainda não existirem). O usuário pode executar uma consulta para ver a nova conexão, incluindo todas as conexões atuais:
Mais informações: SET_DATA_CATALOG_CONN Procedures, UNSET_DATA_CATALOG_CONN Procedure. |
Criar uma sincronização seletiva |
Administrador do Data Catalog do Banco de Dados |
Crie um job de sincronização selecionando os objetos do serviço Data Catalog a serem sincronizados. O usuário pode:
Mais informações: Consulte Procedimento CREATE_SYNC_JOB, Procedimento DROP_SYNC_JOB, Mapeamento de Sincronização |
Sincronizar com o Serviço Data Catalog |
Administrador do Data Catalog do Banco de Dados |
O usuário inicia uma operação de sincronização. A sincronização é iniciada manualmente por meio da chamada de procedimento A operação de sincronização cria, modifica e elimina tabelas e esquemas externos de acordo com o conteúdo do serviço Data Catalog e as seleções de sincronização. A configuração manual é aplicada usando Propriedades Personalizadas do Serviço Data Catalog. Mais informações: Consulte Procedimento RUN_SYNC, Procedimento CREATE_SYNC_JOB, Mapeamento de Sincronização |
Monitorar sincronização e exibir logs |
Administrador do Data Catalog do Banco de Dados |
O usuário pode exibir o status de sincronização consultando a view USER_LOAD_OPERATIONS . Após a conclusão do processo de sincronização, o usuário poderá exibir um log dos resultados da sincronização, incluindo detalhes sobre os mapeamentos de entidades lógicas para tabelas externas.
Mais informações: Monitorando e Diagnosticando e Solucionando Problemas de Cargas |
Conceder privilégios |
Administrador de Consulta do Catálogo de Dados do Banco de Dados, Administrador do Banco de Dados |
O Administrador de Consulta do Catálogo de Dados ou o Administrador do banco de dados deve conceder READ em tabelas externas geradas aos usuários do analista de dados. Isso permite que os analistas de dados consultem as tabelas externas geradas. |
Procurar e consultar tabelas externas |
Analista de Dados |
Os analistas de dados podem consultar as tabelas externas por meio de qualquer ferramenta ou aplicativo compatível com o Oracle SQL. Os Analistas de Dados podem revisar os esquemas e as tabelas sincronizados nos esquemas DCAT$* e consultar as tabelas usando o Oracle SQL. Mais informações: Mapeamento de Sincronização |
Encerrar conexões com o serviço Data Catalog |
Administrador do Data Catalog do Banco de Dados |
Para remover uma associação existente do serviço Data Catalog, o usuário chama o procedimento UNSET_DATA_CATALOG_CONN. Essa ação só é feita quando você não planeja mais usar o serviço Data Catalog e as tabelas externas derivadas do catálogo. Esta ação exclui metadados do serviço Data Catalog e elimina tabelas externas sincronizadas da instância do Autonomous Database. As propriedades personalizadas no serviço Data Catalog e nas políticas do OCI não são afetadas. Mais informações: UNSET_DATA_CATALOG_CONN Procedimento |
Tópico principal: Consultar Dados Externos com o Serviço Data Catalog
Exemplo: Cenário MovieStream
Nesse cenário, o Moviestream está capturando dados em uma zona de destino no armazenamento de objetos. Grande parte desses dados, mas não necessariamente todos, é usada para alimentar um Autonomous Database. Antes de alimentar o Autonomous Database, os dados são transformados, limpos e subsequentemente armazenados na área "ouro".
O serviço Data Catalog é usado para coletar essas origens e, em seguida, fornecer um contexto de negócios aos dados. Os metadados do serviço Data Catalog são compartilhados com o Autonomous Database, permitindo que os usuários do Autonomous Database consultem essas origens de dados usando o Oracle SQL. Esses dados podem ser carregados no Autonomous Database ou consultados dinamicamente usando tabelas externas.
Para obter mais informações sobre como usar o serviço Data Catalog, consulte Documentação do Serviço Data Catalog.
Tópico principal: Consultar Dados Externos com o Serviço Data Catalog
Exemplo: Cenário de Dados Particionados
Este cenário ilustra como criar tabelas externas no Autonomous Database baseadas em entidades lógicas do serviço Data Catalog coletadas de dados particionados no Object Store.
O exemplo a seguir é baseado no Exemplo: MovieStream Cenário e foi adaptado para demonstrar a integração com dados particionados. O serviço Data Catalog é usado para coletar essas origens e, em seguida, fornecer um contexto de negócios aos dados. Para obter mais detalhes sobre esse exemplo, consulte Exemplo: MovieStream Cenário.
Para obter mais informações sobre como usar o serviço Data Catalog, consulte Documentação do Serviço Data Catalog.
Tópico principal: Consultar Dados Externos com o Serviço Data Catalog