Pacote DBMS_DCAT

O pacote DBMS_DCAT fornece funções e procedimentos para ajudar os usuários do Autonomous Database a aproveitar a descoberta de dados e o sistema de gerenciamento de metadados centralizado do OCI Data Catalog.

O serviço Data Catalog coleta metadados de ativos de armazenamento de objetos de um data lake. O processo de coleta cria entidades lógicas, que podem ser consideradas como tabelas com colunas e tipos de dados associados. Os procedimentos e funções DBMS_DCAT conectam o Autonomous Database ao serviço Data Catalog e, em seguida, sincronizam os ativos com o banco de dados, criando esquemas protegidos e tabelas externas. Em seguida, você pode consultar o armazenamento de objetos usando essas tabelas externas, unindo facilmente dados externos aos dados armazenados no Autonomous Database. Isso simplifica drasticamente o processo de gerenciamento; há um único armazenamento de metadados gerenciado centralmente que é compartilhado entre vários serviços da OCI (incluindo Autonomous Databases). Há também views de dicionário do Autonomous Database que permitem inspecionar o conteúdo do serviço Data Catalog usando SQL e mostrar como essas entidades do serviço Data Catalog são mapeadas para seus esquemas e tabelas do Autonomous Database.

Usuários e Atribuições do Serviço Data Catalog

O pacote DBMS_DCAT suporta usuários/esquemas sincronizados, usuários dcat_admin e usuários locais. Os usuários devem ter a atribuição dcat_sync para poder usar este pacote.

Usuários do Data Catalog

  • Usuários/esquemas sincronizados

    As tabelas externas sincronizadas são organizadas em esquemas de banco de dados correspondentes às combinações de Ativo de Dados/Bucket ou de acordo com propriedades personalizadas definidas pelo usuário. Os esquemas sincronizados são criados/eliminados automaticamente durante a sincronização do serviço Data Catalog. Eles são criados como nenhum usuário de autenticação sem o privilégio CREATE SESSION. Os esquemas sincronizados também são criados usando a cláusula protegida, de modo que não possam ser alterados por usuários locais (nem mesmo o administrador do PDB) e só possam ser modificados por meio da sincronização.

  • Usuário dcat_admin

    O usuário dcat_admin é um usuário do banco de dados local que pode executar uma sincronização e conceder o privilégio READ em tabelas sincronizadas a outros usuários ou atribuições. O usuário é criado como um usuário sem autenticação sem o privilégio CREATE SESSION.

  • Usuários Locais

    Os usuários do banco de dados que consultam as tabelas externas devem receber explicitamente privilégios READ nas tabelas externas sincronizadas pelos usuários dcat_admin ou ADMIN. Por padrão, após a conclusão da sincronização, somente os usuários dcat_admin e ADMIN têm acesso às tabelas externas sincronizadas.

Funções do Serviço Data Catalog

  • dcat_sync

    A atribuição dcat_sync tem todos os privilégios necessários para usar o pacote DBMS_DCAT. Os usuários devem ter essa função para poder usar a API para navegar no serviço Data Catalog e executar a sincronização.

Credenciais e Políticas de IAM Obrigatórias

Este tópico descreve as credenciais de usuário e as políticas do Oracle Cloud Infrastructure Identity and Access Management (IAM) necessárias para conceder aos usuários do Autonomous Database permissão para gerenciar um catálogo de dados e ler no armazenamento de objetos.

Requisitos de Credencial e Política do OCI Data Catalog:

Credencial do catálogo de dados do AWS Glue e requisitos de política

As seguintes credenciais e políticas de usuário são necessárias para conceder aos usuários do Autonomous Database permissão para acessar Catálogos de Dados de Colagem do Amazon Web Services (AWS) e ler no armazenamento de objetos S3:
  • É necessário um objeto de credencial com permissão para acessar um Catálogo de Dados do AWS Glue. Para obter informações sobre como gerenciar credenciais, consulte DBMS_CLOUD para Gerenciamento de Acesso.

    Para acessar um catálogo de dados do AWS Glue, os seguintes privilégios são necessários: cola:GetDatabases , cola:GetTables e cola:GetTable.

    Além disso, o privilégio s3:GetBucketLocation é necessário durante a sincronização para gerar urls https resolvíveis que apontam para os objetos S3 subjacentes.
  • É necessário um objeto de credencial com permissão para acessar os arquivos armazenados em S3 para que o Autonomous Database possa consultar arquivos de dados.
  • As credenciais da AWS são suportadas. As credenciais do AWS Amazon Resource Names (ARN) não são suportadas.

Exemplo: Criando um Objeto de Credencial de Autenticação Nativa do OCI

Neste exemplo, criamos uma credencial de autenticação nativa do OCI que pode ser usada ao criar um catálogo de dados ou um objeto de credencial de armazenamento de objetos. Para obter mais detalhes, consulte DBMS_DCAT Procedimento SET_DATA_CATALOG_CREDENTIAL e DBMS_DCAT Procedimento SET_OBJECT_STORE_CREDENTIAL, respectivamente.

Na autenticação nativa do OCI, o procedimento DBMS_CLOUD.CREATE_CREDENTIAL inclui estes parâmetros: credential_name, user_ocid, tenancy_ocid, private_key e fingerprint. Consulte DBMS_CLOUD CREATE_CREDENTIAL Procedure para obter uma descrição completa desse procedimento.

O credential_name é o nome do objeto da credencial. Os parâmetros user_ocid e tenancy_ocid correspondem aos OCIDs do usuário e da tenancy, respectivamente.

O parâmetro private_key especifica a chave privada gerada no formato PEM. Não há suporte a chaves privadas criadas com uma frase-senha. Portanto, precisamos nos certificar de gerar uma chave sem frase-senha. Consulte Como Gerar uma Chave de Assinatura de API para obter mais detalhes sobre como criar uma chave privada sem frase-senha. Além disso, a chave privada que fornecemos para este parâmetro só deve conter a própria chave sem qualquer cabeçalho ou rodapé (por exemplo, '-----BEGIN RSA PRIVATE KEY-----', '-----END RSA PRIVATE KEY-----').

O parâmetro fingerprint especifica a impressão digital obtida após o upload da chave pública para a console ou usando os comandos OpenSSL. Consulte Como Fazer Upload da Chave Pública e Como Obter a Impressão Digital da Chave para obter mais detalhes sobre como obter a impressão digital.

Assim que todas as informações necessárias forem reunidas e a chave privada for gerada, estaremos prontos para executar o seguinte procedimento CREATE_CREDENTIAL:

BEGIN
  DBMS_CLOUD.CREATE_CREDENTIAL (
    credential_name => 'OCI_NATIVE_CRED',
    user_ocid              => 'ocid1.user.oc1..aaaaaaaatfn77fe3fxux3o5lego7glqjejrzjsqsrs64f4jsjrhbsk5qzndq',
    tenancy_ocid           => 'ocid1.tenancy.oc1..aaaaaaaapwkfqz3upqklvmelbm3j77nn3y7uqmlsod75rea5zmtmbl574ve6a',
    private_key            => 'MIIEogIBAAKCAQEA...t9SH7Zx7a5iV7QZJS5WeFLMUEv+YbYAjnXK+dOnPQtkhOblQwCEY3Hsblj7Xz7o=',
    fingerprint            => '4f:0c:d6:b7:f2:43:3c:08:df:62:e3:b2:27:2e:3c:7a');
END;
/
Depois de criar o objeto de credencial, ele é exibido na tabela dba_credentials:
SELECT owner, credential_name
FROM dba_credentials 
WHERE credential_name LIKE '%NATIVE%';

OWNER CREDENTIAL_NAME
----- ---------------
ADMIN OCI_NATIVE_CRED

Exemplo: Usando o Controlador de Recursos do Autonomous Database

Neste exemplo, um grupo dinâmico é criado que inclui membros de recursos apropriados, o grupo dinâmico recebe permissão para gerenciar um Catálogo de Dados e, em seguida, o grupo dinâmico recebe permissão para ler no armazenamento de objetos.

  1. Crie um grupo dinâmico chamado adb-grp-1. Adicione uma regra de correspondência a adb-grp-1 que inclua a instância do Autonomous Database com o OCID ocid1.autonomousdatabase.oc1.iad.abuwcljr...fjkfe como membro de recurso.

    Regra de correspondência de grupo dinâmico:

    resource.id = 'ocid1.autonomousdatabase.oc1.iad.abuwcljr...fjkfe'
  2. Defina uma política que conceda ao grupo dinâmico adb-grp-1 acesso total às instâncias do serviço Data Catalog, no compartimento mycompartment.

    allow dynamic-group adb-grp-1 to manage data-catalog-family in compartment mycompartment
  3. Defina uma política que permita ao grupo dinâmico adb-grp-1 ler qualquer bucket no compartimento chamado mycompartment.
    allow dynamic-group adb-grp-1 to read objects in compartment mycompartment

Exemplo: Usando Principais do Usuário

Neste exemplo, user1 é membro do grupo adb-admins. Todos os membros desse grupo recebem permissão para gerenciar todos os catálogos de dados no mycompartment e para ler no armazenamento de objetos no mycompartment.

  1. Permita que os usuários que são membros do adb-admins gerenciem todos os catálogos de dados no mycompartment.
    allow group adb-admins to manage data-catalog-family in compartment mycompartment
  2. Permita que os usuários que são membros do adb-admins leiam qualquer objeto em qualquer bucket dentro do mycompartment.
    allow group adb-admins to read objects in compartment mycompartment

Resumo de Subprogramas de Gerenciamento de Conexão

Esta tabela lista os procedimentos de pacote DBMS_DCAT usados para criar, consultar e eliminar conexões do serviço Data Catalog.

Subprograma Descrição
SET_DATA_CATALOG_CONN Procedimento Criar uma conexão com o catálogo de dados fornecido
SET_DATA_CATALOG_CREDENTIAL Procedimento Definir a credencial de acesso do catálogo de dados usada por uma conexão específica com o catálogo de dados
SET_OBJECT_STORE_CREDENTIAL Procedimento Definir a credencial usada pelo identificador de conexão exclusivo fornecido para acessar o Object Store
UNSET_DATA_CATALOG_CONN Procedimento Remover uma conexão existente do serviço Data Catalog

SET_DATA_CATALOG_CREDENTIAL Procedimento

Este procedimento define a credencial de acesso do serviço Data Catalog usada por uma conexão específica com o serviço Data Catalog.

Sintaxe

PROCEDURE DBMS_DCAT.SET_DATA_CATALOG_CREDENTIAL(
    credential_name VARCHAR2(128) DEFAULT NULL,
    dcat_con_id     VARCHAR2 DEFAULT NULL
  );

Parâmetros

Parâmetro Descrição

credential_name

(Opcional) A credencial usada para acessar o serviço Data Catalog.

dcat_con_id O identificador de conexão exclusivo do serviço Data Catalog. Essa credencial é usada para a conexão identificada por dcat_con_id. O padrão é Nulo.

Uso

Essa credencial deve ter permissões Gerenciar Catálogo de Dados; consulte Políticas do Serviço Data Catalog. O padrão é o controlador de recursos; consulte Acessar Recursos da Nuvem Configurando Políticas e Atribuições.

SET_OBJECT_STORE_CREDENTIAL Procedimento

Este procedimento define a credencial usada pelo identificador de conexão exclusivo fornecido para acessar o Armazenamento de Objetos. A alteração da credencial de acesso do Object Store altera todas as tabelas sincronizadas existentes para usar a nova credencial.

Sintaxe

PROCEDURE DBMS_DCAT.SET_OBJECT_STORE_CREDENTIAL(
    credential_name  VARCHAR2(128),
    dcat_con_id      IN VARCHAR2 DEFAULT NULL
  );

Parâmetros

Parâmetro Descrição

credential_name

A credencial usada pelas tabelas externas para acessar o Object Store.

dcat_con_id O identificador de conexão exclusivo do serviço Data Catalog. O default é NULL.

SET_DATA_CATALOG_CONN Procedimento

Este procedimento cria uma conexão com o Catálogo de Dados fornecido. A conexão é necessária para sincronizar metadados com o serviço Data Catalog. Uma instância do Autonomous Database pode se conectar a várias instâncias do serviço Data Catalog e oferece suporte à conexão com o OCI Data Catalogs e o AWS Glue Data Catalogs.

Sintaxe

PROCEDURE DBMS_DCAT.SET_DATA_CATALOG_CONN (
   region       VARCHAR2 DEFAULT NULL,
   endpoint     VARCHAR2 DEFAULT NULL,
   catalog_id   VARCHAR2 DEFAULT NULL,
   dcat_con_id  VARCHAR2 DEFAULT NULL,
   catalog_type VARCHAR2 DEFAULT NULL
 );

Parâmetros

Parâmetro Descrição

region

A região do Data Catalog. Se o endpoint for especificado, o region será opcional. Se endpoint e region forem fornecidos, a endpoint terá precedência. O padrão é NULL.

endpoint

O ponto final do serviço Data Catalog. Se o region for especificado, o endpoint será opcional. Se endpoint e region forem fornecidos, a endpoint terá precedência. O padrão é NULL.

catalog_id

O OCID (Oracle Cloud Identifier) exclusivo para a instância do serviço Data Catalog. Ao estabelecer conexão com o AWS Glue Data Catalogs, o catalog_id é opcional.

dcat_con_id Um identificador de conexão exclusivo do serviço Data Catalog. Esse identificador é obrigatório ao estabelecer conexão com vários Catálogos de Dados e é opcional ao estabelecer conexão com apenas um. É usado para fazer referência à conexão do serviço Data Catalog em chamadas subsequentes ou ao consultar views. Se nenhum identificador for especificado, este procedimento gerará um identificador de conexão NULO. As seguintes restrições se aplicam a dcat_con_id:
  • Ele deve ser exclusivo na instância do Autonomous Database.
  • Deve começar com uma letra.
  • Pode conter caracteres alfanuméricos, sublinhados (_), cifrões ($) e sinais de libra (#).
  • Deve ter pelo menos 16 caracteres.
catalog_type O tipo de catálogo de dados a ser conectado. Valores permitidos:
  • OCI_DCAT - Catálogo de Dados do OCI
  • AWS_GLUE - Catálogo de Dados da AWS Glue
  • NULL - O tipo de catálogo é detectado automaticamente na região ou ponto final fornecido.

Uso

Você só precisa chamar este procedimento uma vez para definir a conexão. Como parte do processo de conexão, o Autonomous Database adiciona propriedades personalizadas ao serviço Data Catalog. Essas propriedades personalizadas são acessíveis aos usuários do serviço Data Catalog e permitem que você substitua nomes padrão (para esquemas, tabelas e colunas) e tipos de dados de coluna.

Antes de criar uma conexão, as credenciais devem ser criadas e definidas. Para obter uma descrição do processo de conexão, consulte Workflow Típico com o Serviço Data Catalog para Catálogos de Dados do OCI e Workflow do Usuário para Consultar com o AWS Glue Data Catalog para Catálogos de Dados do AWS Glue.

Exemplo: Estabelecendo Conexão com um OCID conhecido

Neste exemplo, o Autonomous Database está se conectando ao serviço Data Catalog na região uk-london-1. O parâmetro catalog_id usa o Oracle Cloud Identifier (ocid) para a instância do serviço Data Catalog. O tipo de Data Catalog é determinado automaticamente: AWS Glue Data Catalog ou OCI Data Catalog.

BEGIN
  DBMS_DCAT.SET_DATA_CATALOG_CONN(
    region=>'uk-london-1',
    catalog_id=>'ocid1.datacatalog.oc1.uk-london-1...');
END;
/

Exemplo: Conexão com um Catálogo de Dados do AWS Glue

Uma conexão é a associação entre uma instância do Autonomous Database e um AWS Glue Data Catalog. Após uma conexão bem-sucedida, a instância do Autonomous Database pode ser sincronizada com o AWS Glue. Cada conta da AWS tem um Catálogo de Dados do AWS Glue por região e cada catálogo pode ser acessado usando o ponto final de serviço correspondente para cada região. Uma instância do Autonomous Database pode ser associada a um Catálogo de Dados do AWS Glue chamando a API DBMS_DCAT.SET_DATA_CATALOG_CONN e especificando o ponto final da região em que o catálogo reside.

Consulte Pontos finais e cotas da AWS Glue.

Neste exemplo, o Autonomous Database está se conectando a um Catálogo de Dados do AWS Glue na região uk-london-1. Como essa é uma conexão do AWS Glue Data Catalog, o parâmetro catalog_id não é necessário.

BEGIN
  DBMS_DCAT.SET_DATA_CATALOG_CONN(
    region=>'uk-london-1',
    catalog_type=>'AWS_GLUE'
END;
/

UNSET_DATA_CATALOG_CONN Procedimento

Este procedimento remove uma conexão existente do serviço Data Catalog.

Sintaxe

Observação

A chamada deste procedimento elimina todos os esquemas protegidos e as tabelas externas que foram criadas como parte das sincronizações anteriores. Ela não afeta os metadados no serviço Data Catalog.
PROCEDURE DBMS_DCAT.UNSET_DATA_CATALOG_CONN (
    dcat_con_id IN VARCHAR2 DEFAULT NULL
);

Parâmetros

Parâmetro Descrição
dcat_con_id O identificador de conexão exclusivo do serviço Data Catalog. O padrão é Nulo.

Resumo dos Subprogramas de Sincronização

A execução de uma sincronização, a criação e a eliminação de um job de sincronização e a eliminação de esquemas sincronizados podem ser executadas com os procedimentos listados nesta tabela.

Observação

Em 4 de abril de 2022, os parâmetros sync_option e grant_read foram adicionados ao procedimento DBMS_DCAT.RUN_SYNC. Para garantir o desempenho correto dos jobs de sincronização programados criados antes dessa data, você precisa eliminar e recriar os jobs de sincronização programados. Consulte DBMS_DCAT.DROP_SYNC_JOB Procedures e DBMS_DCAT.CREATE_SYNC_JOB Procedure.
Subprograma Descrição
CREATE_SYNC_JOB Procedimento Crie um job do scheduler para chamar RUN_SYNC periodicamente
DROP_SYNC_JOB Procedimento Eliminar um job de sincronização existente para o identificador de conexão exclusivo fornecido
DROP_SYNCED_SCHEMAS Procedimento Eliminar todos os esquemas sincronizados anteriormente para o identificador de conexão exclusivo fornecido
RUN_SYNC Procedimento Executar uma operação de sincronização

RUN_SYNC Procedimento

Este procedimento executa uma operação de sincronização e é o ponto de entrada para a sincronização. Como entrada, ele pega listas de ativos, pastas e entidades do catálogo de dados selecionados e materializa-os criando, eliminando e alterando tabelas externas.

O parâmetro sync_option especifica qual operação o procedimento RUN_SYNC executa: SYNC, DELETE ou REPLACE. A operação é executada em entidades dentro do escopo do parâmetro synced_objects.

Cada chamada para o procedimento RUN_SYNC retorna um operation_id exclusivo que pode ser usado para consultar a view USER_LOAD_OPERATIONS para obter informações sobre o status da sincronização e o log_table correspondente. A view DBMS_DCAT$SYNC_LOG pode ser consultada para facilitar o acesso ao log_table para a última operação de sincronização executada pelo usuário atual. Para obter mais detalhes, consulte DBMS_DCATView $SYNC_LOG e Monitoramento e Solução de Problemas de Cargas.

Observação

Em 4 de abril de 2022, os parâmetros sync_option e grant_read foram adicionados ao procedimento RUN_SYNC. Para garantir o desempenho correto dos jobs de sincronização programados criados antes dessa data, você precisa eliminar e recriar os jobs de sincronização programados. Consulte DBMS_DCAT.DROP_SYNC_JOB Procedures e DBMS_DCAT.CREATE_SYNC_JOB Procedure.

Sincronizando Entidades Lógicas Particionadas ou Tabelas de Cola

O procedimento RUN_SYNC cria uma tabela externa particionada para cada entidade lógica ou tabela de Colagem quando as três seguintes situações se aplicam:

  1. A entidade lógica ou tabela de Colagem do catálogo de dados do OCI tem um ou mais atributos particionados.
  2. Para catálogos de dados do OCI, a entidade lógica é derivada de um padrão de nome de arquivo baseado em prefixo. Não há suporte para entidades lógicas particionadas derivadas de padrões baseados em regex.
  3. Para catálogos de dados do OCI, a entidade lógica se baseia em dados particionados que seguem o formato de pasta hive-style ou não-hive. Não há suporte para entidades lógicas baseadas em dados particionados que seguem o formato de estilo não-hive usando nomes de objeto.
    • Exemplo 1. Entidades lógicas baseadas em objetos coletados que seguem o formato de particionamento de estilo do Hive com padrões de nome de arquivo baseados em prefixo.

      Considere os seguintes objetos:
      Bucket: MYBUCKET
      cluster1/db1.db/sales/country=USA/year=2020/month=01/sales1.csv
      cluster1/db1.db/sales/country=USA/year=2020/month=01/sales2.csv
      cluster1/db1.db/sales/country=USA/year=2020/month=02/sales1.csv

      A coleta do bucket usando um padrão de nome de arquivo com um prefixo de pasta inicial cluster1/db1.db gera uma entidade lógica chamada SALES com três atributos de partição: country, year e month. O tipo de atributos particionados é Partition, enquanto o tipo de atributos não particionados é Primitive.

    • Exemplo 2. Entidades lógicas baseadas em objetos coletados que seguem o formato de particionamento de estilo não Hive com padrões de nome de arquivo baseados em prefixo.
      Considere os seguintes objetos:
      Bucket: MYBUCKET
      cluster2/db2.db/sales/USA/2020/01/sales1.csv
      cluster2/db2.db/sales/USA/2020/01/sales2.csv
      cluster2/db2.db/sales/USA/2020/02/sales1.csv

      A coleta do bucket usando um padrão de nome de arquivo com um prefixo de pasta inicial cluster2/db2.db gera uma entidade lógica chamada SALES com três atributos de partição: name0, name1 e name2. A única diferença entre a entidade lógica gerada em comparação com o Exemplo 1 é que os nomes dos atributos particionados são gerados automaticamente, enquanto no Exemplo 1 eles são extraídos do URL (country, year e month, respectivamente).

Para obter um exemplo completo de sincronização de entidades lógicas particionadas, consulte Exemplo: Um Cenário de Dados Particionado.

Sincronização Incremental de Entidades Lógicas Particionadas/Tabelas de Cola

Cada chamada ao procedimento RUN_SYNC especifica um conjunto de entidades lógicas do catálogo de dados do OCI ou tabelas do AWS Glue a serem sincronizadas com o banco de dados. Quando uma entidade lógica ou tabela de cola está presente em duas chamadas RUN_SYNC, a segunda chamada preserva e possivelmente altera as tabelas externas existentes. A tabela a seguir mostra quais alterações de entidade lógica ou tabela de colagem são suportadas quando a entidade lógica ou tabela de colagem é particionada:

Alteração de Entidade Lógica ou Tabela de Cola Ação

Adição, remoção ou atualização de uma partição

Todas as partições da tabela particionada externa são atualizadas, independentemente de uma alteração ter sido detectada pelo catálogo de dados.

Adição de um atributo particionado

Não há suporte para adicionar uma coluna particionada a uma tabela particionada externa. Foi gerada uma exceção.

Exclusão de um atributo de partição

Não há suporte para a eliminação de uma coluna particionada de uma tabela particionada externa. Foi gerada uma exceção.

Renomeação de um atributo particionado

Não há suporte para a renomeação de uma coluna particionada em uma tabela particionada externa. Foi gerada uma exceção.

Sintaxe

PROCEDURE DBMS_DCAT.RUN_SYNC (
    synced_objects   IN  CLOB,
    sync_option      IN VARCHAR2 DEFAULT 'SYNC',
    error_semantics  IN VARCHAR2 DEFAULT 'SKIP_ERRORS',
    log_level        IN VARCHAR2 DEFAULT 'INFO',
    grant_read       IN VARCHAR2 DEFAULT NULL,
    dcat_con_id      IN VARCHAR2 DEFAULT NULL
 );
PROCEDURE DBMS_DCAT.RUN_SYNC (
    synced_objects   IN  CLOB,
    sync_option      IN VARCHAR2 DEFAULT 'SYNC',
    error_semantics  IN VARCHAR2 DEFAULT 'SKIP_ERRORS',
    log_level        IN VARCHAR2 DEFAULT 'INFO',
    grant_read       IN VARCHAR2 DEFAULT NULL,
    operation_id     OUT NOCOPY NUMBER,
    dcat_con_id      IN VARCHAR2 DEFAULT NULL
 );

Parâmetros

Parâmetro Descrição

synced_objects

Este parâmetro é um documento JSON que especifica os objetos do catálogo de dados a serem sincronizados.

Para o OCI Data Catalogs, o documento JSON especifica um conjunto de entidades em várias granularidades: ativos de dados, pastas (buckets do Object Store) ou entidades lógicas. Ele contém um asset_list que é um array de objetos de ativo ou um array que contém uma única string "*" que significa "sincronizar todos os ativos de dados (armazenamento de objeto) no catálogo".

Para o AWS Glue Data Catalogs, o documento JSON especifica uma lista de tabelas em várias granularidades: bancos de dados e tabelas. O documento especifica uma lista de bancos de dados. Os usuários podem restringir o conjunto de tabelas a serem sincronizadas especificando tabelas individuais em um banco de dados.

sync_option (Opcional) Há três opções:
  • SYNC (Padrão) - Essa opção garante que o que está no catálogo de dados, no escopo synced_objects, seja representado no Autonomous Database. Se uma entidade lógica ou tabela de cola tiver sido excluída do catálogo de dados, desde a última operação de sincronização, ela será excluída no Autonomous Database. As seguintes operações são executadas no escopo synced_objects:
    • Adiciona tabelas para novas entidades do catálogo de dados
    • Remove tabelas para entidades excluídas do catálogo de dados
    • Atualiza propriedades (como nome, colunas e tipos de dados) para tabelas existentes
  • DELETE - Exclui tabelas dentro do escopo synced_objects.
  • REPLACE - Substitui todos os objetos atualmente sincronizados pelos objetos dentro do escopo synced_objects.

error_semantics

(Opcional) Este parâmetro especifica o comportamento do erro. Se definido como SKIP_ERRORS, a sincronização tentará continuar apesar dos erros encontrados para entidades individuais. Se definido como STOP_ON_ERROR, o procedimento falhará no primeiro erro encontrado. O padrão é SKIP_ERRORS.

log_level

(Opcional) Esse parâmetro especifica os seguintes valores em nível crescente de detalhes de log: (OFF, FATAL, ERROR, WARN, INFO, DEBUG, TRACE, ALL). O padrão é INFO.
grant_read (Opcional) Esse parâmetro é uma lista de usuários/funções que recebem automaticamente privilégios READ em todas as tabelas externas processadas por essa chamada de RUN_SYNC. Todos os usuários/funções na lista grant_read recebem privilégios READ em todas as tabelas externas novas ou já existentes que correspondem às entidades especificadas pelo parâmetro synced_objects. O procedimento RUN_SYNC preserva os privilégios já concedidos em tabelas externas sincronizadas.

operation_id

(Opcional) Esse parâmetro é usado para localizar a entrada correspondente em USER_LOAD_OPERATIONS para a sincronização e determinar o nome da tabela de logs.

Observação: Uma versão do RUN_SYNC que não retorna um operation_id está disponível para que os usuários possam consultar o USER_LOAD_OPERATIONS para obter a sincronização mais recente.

dcat_con_id Este parâmetro é o identificador de conexão exclusivo do catálogo de dados que foi especificado quando a conexão com o catálogo de dados foi criada. Consulte DBMS_DCAT SET_DATA_CATALOG_CONN Procedure. Este parâmetro identifica qual conexão é usada para sincronização e se torna parte do nome do esquema derivado. Consulte Mapeamento de Sincronização para obter uma descrição de como o nome do esquema é derivado. O parâmetro padrão é NULL.

Exemplo: Sincronizar Todas as Entidades do OCI Data Catalog

No exemplo a seguir, todas as entidades do serviço Data Catalog são sincronizadas.

EXEC DBMS_DCAT.RUN_SYNC(synced_objects=>'{"asset_list":["*"]}');

Exemplo: Parâmetro synced_objects para Sincronizar Todos os Ativos de Dados do OCI Data Catalog

Veja a seguir um exemplo de parâmetro synced_objects para sincronizar todos os ativos de dados (Object Storage) no serviço Data Catalog.

{"asset_list" : ["*"]}

Exemplo: Parâmetro synced_objects para Sincronizar Ativos de Dados Específicos do OCI Data Catalog

Veja a seguir um exemplo de parâmetro synced_objects para sincronizar dois ativos de dados.

{"asset_list": [
        {
            "asset_id":"0b320de9-8411-4448-91fb-9e2e7f78fd5f"
        },
        {
            "asset_id":"0b320de9-8411-4448-91fb-9e2e7f74523"
        }
    ]}

Exemplo: Parâmetro synced_objects para Sincronizar Entidades Específicas do OCI Data Catalog em um Ativo de Dados

O exemplo a seguir mostra um parâmetro synced_objects para sincronizar duas entidades no ativo de dados.

{"asset_list": [
        {
            "asset_id":"0b320de9-8411-4448-91fb-9e2e7f78fd5f",
            "folder_list":[
                "f1",         
                "f2" 
           ]
        }   
    ]}

Exemplo: Parâmetro synced_objects para Sincronizar Pastas e Entidades Específicas do OCI Data Catalog em um Ativo de Dados

O exemplo a seguir mostra um parâmetro synced_objects para sincronizar duas pastas e duas entidades dentro do ativo de dados.

{"asset_list":[
        {
            "asset_id":"0b320de9-8411-4448-91fb-9e2e7f78fd5f",
            "entity_list": [
                "entity1",     
                "entity2"
            ],
             "folder_list": [
                "f1",         
                "f2"
            ]
        }   
    ]}

Exemplo: Parâmetro synced_objects para Sincronizar Todos os Bancos de Dados do AWS Glue Data Catalog

O exemplo a seguir mostra um parâmetro synced_objects para sincronizar todos os bancos de dados no AWS Glue Data Catalog.

{"database_list":["*"]}

Exemplo: Parâmetro synced_objects para Sincronizar Dois Bancos de Dados do AWS Glue Data Catalog

O exemplo a seguir mostra um parâmetro synced_objects para sincronizar dois bancos de dados do AWS Glue Data Catalog.

{"database_list":[
    {"database":"tpcdscsv"},
    {"database":"tpcdsparquet"} ]}

Exemplo: Parâmetro synced_objects para Sincronizar Três Bancos de Dados do AWS Glue Data Catalog

O exemplo a seguir mostra um parâmetro synced_objects para sincronizar três tabelas de um banco de dados do AWS Glue Data Catalog.

{"database_list":[
 {"database":"tpcdsparquet",
     "table_list": [ "tpcdsparquet_customer",
                     "tpcdsparquet_item",
                     "tpcdsparquet_web_sales" ] } ]}

CREATE_SYNC_JOB Procedimento

Este procedimento cria um job do scheduler para chamar RUN_SYNC periodicamente.

Ele utiliza como entrada o conjunto de objetos a serem sincronizados, a semântica de erro, o nível de log e um intervalo de repetição. Consulte DBMS_DCAT RUN_SYNC Procedure para obter mais detalhes sobre como a sincronização funciona.

Só pode haver um único job de sincronização. O procedimento CREATE_SYNC_JOB falhará se outro job já estiver especificado, a menos que o parâmetro de imposição seja definido como TRUE. Se a imposição for definida como TRUE, o job anterior será eliminado.

Se um job do scheduler tentar ser executado enquanto outra sincronização estiver em andamento, o job do scheduler falhará.

Observação

Em 4 de abril de 2022, os parâmetros sync_option e grant_read foram adicionados ao procedimento RUN_SYNC. Para garantir o desempenho correto dos jobs de sincronização programados criados antes dessa data, você precisa eliminar e recriar os jobs de sincronização programados. Consulte DBMS_DCAT.DROP_SYNC_JOB Procedures e DBMS_DCAT.CREATE_SYNC_JOB Procedure.

Sintaxe

PROCEDURE DBMS_DCAT.CREATE_SYNC_JOB (
    synced_objects   IN CLOB,
    error_semantics  IN VARCHAR2 DEFAULT 'SKIP_ERRORS',
    log_level        IN VARCHAR2 DEFAULT 'INFO',
    repeat_interval  IN VARCHAR2,
    force            IN VARCHAR2 DEFAULT 'FALSE',
    grant_read       IN VARCHAR2 DEFAULT NULL,
    sync_option      IN VARCHAR2 DEFAULT 'SYNC',
    dcat_con_id      IN VARCHAR2 DEFAULT NULL
);

Parâmetros

Parâmetro Descrição

synced_objects

Um objeto JSON que especifica os objetos a serem sincronizados, conforme descrito no procedimento RUN_SYNC.

error_semantics

(Opcional) Comportamento de erro, conforme especificado para RUN_SYNC. O padrão é SKIP_ERRORS.

log_level

(Opcional) Nível de log, conforme especificado para RUN_SYNC. O padrão é INFO.

repeat_interval

Repita o intervalo para o job, com a mesma semântica do parâmetro de intervalo de repetição do procedimento DBMS_SCHEDULER.CREATE_JOB. Para obter detalhes sobre o repeat_interval, consulte Visão Geral da Criação de Jobs.

force

(Opcional) Se TRUE, os jobs de sincronização existentes serão excluídos primeiro. Se FALSE, o procedimento CREATE_SYNC_JOB falhará se já existir um job de sincronização. O padrão é FALSE.

grant_read (Opcional) Lista de usuários/funções a serem concedidos READ nas tabelas externas sincronizadas, conforme descrito para o procedimento RUN_SYNC. Consulte DBMS_DCAT.RUN_SYNC Procedure.
sync_option (Opcional) Comportamento em relação às entidades que já foram sincronizadas por meio de uma operação RUN_SYNC anterior, conforme descrito para o procedimento RUN_SYNC. Consulte DBMS_DCAT.RUN_SYNC Procedure.
dcat_con_id Este parâmetro é o identificador de conexão exclusivo do serviço Data Catalog que foi especificado quando a conexão com o serviço Data Catalog foi criada. Consulte DBMS_DCAT SET_DATA_CATALOG_CONN Procedure. Este parâmetro identifica qual conexão é usada para sincronização e se torna parte do nome do esquema derivado. Consulte Mapeamento de Sincronização para obter uma descrição de como o nome do esquema é derivado. O parâmetro padrão é NULL.

DROP_SYNC_JOB Procedimento

Este procedimento elimina um job de sincronização existente para o identificador de conexão exclusivo fornecido.

Sintaxe

PROCEDURE DBMS_DCAT.DROP_SYNC_JOB (
    dcat_con_id IN VARCHAR2 DEFAULT NULL
  );

Parâmetros

Parâmetro Descrição
dcat_con_id O identificador de conexão exclusivo do serviço Data Catalog. O default é NULL.

DROP_SYNCED_SCHEMAS Procedimento

Este procedimento elimina todos os esquemas sincronizados anteriormente para o identificador de conexão exclusivo fornecido.

Sintaxe

PROCEDURE DBMS_DCAT.DROP_SYNCED_SCHEMAS (
    dcat_con_id IN VARCHAR2 DEFAULT NULL
  );

Parâmetros

Parâmetro Descrição
dcat_con_id O identificador de conexão exclusivo do serviço Data Catalog. O default é NULL.

Resumo de Views do Serviço Data Catalog

A integração do serviço Data Catalog com o Autonomous Database fornece várias tabelas e views.

Estas tabelas e views ajudam a compreender:

  • Ativos disponíveis do serviço Data Catalog. Obtenha informações sobre qualquer tipo de ativo do serviço Data Catalog - incluindo bancos de dados, armazenamentos de objetos e muito mais.
  • Informações sobre os ativos e entidades do serviço Data Catalog Object Storage que foram sincronizados com o Autonomous Database. Isso inclui detalhes sobre como os itens do serviço Data Catalog (ativos, pastas e entidades) são mapeados para objetos do Autonomous Database (ou seja, esquemas e tabelas externas).
  • Execuções de sincronização de metadados. Verifique os detalhes sobre jobs de sincronização, incluindo quaisquer problemas que possam ter ocorrido durante a sincronização.

Esta tabela lista as tabelas e views fornecidas pelo pacote DBMS_DCAT.

Exibir Descrição
ALL_CLOUD_CATALOG_DATABASES Exibição Exibir informações sobre ativos de dados do OCI Data Catalog e bancos de dados do AWS Glue Data Catalog
ALL_CLOUD_CATALOG_TABLES Exibição Usado para exibir informações sobre entidades de dados para Catálogos de Dados do OCI e tabelas do AWS Glue Data Catalogs
ALL_DCAT_ASSETS Exibição Listar ativos do catálogo de dados aos quais este banco de dados está autorizado a acessar
ALL_DCAT_ATTRIBUTES Exibição Listar atributos do catálogo de dados aos quais este banco de dados está autorizado a acessar
ALL_DCAT_CONNECTIONS Exibição Uma view que contém informações sobre os catálogos de dados conectados a esta instância
ALL_DCAT_ENTITIES Exibição

Lista entidades lógicas que este banco de dados está autorizado a acessar

ALL_DCAT_FOLDERS Exibição Listar metadados dos buckets do serviço Object Storage que contêm os arquivos de dados das Entidades Lógicas
ALL_DCAT_GLOBAL_ACCESSIBLE_CATALOGS Exibição Listar todos os catálogos acessíveis em todas as regiões, juntamente com o nível de privilégios de acesso para cada catálogo
ALL_DCAT_LOCAL_ACCESSIBLE_CATALOGS Exibição Listar todos os catálogos acessíveis na região atual, juntamente com o nível de privilégios de acesso para cada catálogo
ALL_GLUE_DATABASES Exibição Lista os bancos de dados do AWS Glue Data Catalog aos quais a credencial do catálogo de dados está autorizada a acessar
ALL_GLUE_TABLES Exibição Mostra todas as tabelas do AWS Glue Data Catalog às quais a credencial do catálogo de dados está autorizada a acessar
DCAT_ATTRIBUTES Exibição Listar o mapeamento de atributos de entidade lógica para colunas de tabela externa
DCAT_ENTITIES Exibição Descreve o mapeamento de entidades lógicas para tabelas externas
Visualização DBMS_DCAT$SYNC_LOG Fornece fácil acesso à tabela de log para a última operação de sincronização executada pelo usuário atual

ALL_CLOUD_CATALOG_DATABASES Exibição

Use a view ALL_CLOUD_CATALOG_DATABASES para exibir informações sobre ativos de dados do OCI Data Catalog e bancos de dados do AWS Glue Data Catalog.

Coluna Descrição
DCAT_CON_ID CON1
CATALOG_ID Identificador exclusivo do catálogo de dados.

Exemplo do OCI Data Catalog:

ocid1.datacatalog.oc1.ap-mumbai-1.….y35a

Exemplo de Catálogo de Dados de Colagem AWS:

NULL

579294766787

NAME Nome do ativo de dados (OCI)/banco de dados (AWS Glue).

Exemplo do OCI Data Catalog:

OBJECT_STORE_AT_ASHBURN

Exemplo de Catálogo de Dados de Colagem AWS:

OBJECT_STORE_AT_N_CALIFORNIA

DESCRIPTION Descrição do ativo de dados (OCI)/banco de dados (AWS Glue).

Exemplo do OCI Data Catalog:

Data stored in S3 (N. California)

Exemplo de Catálogo de Dados de Colagem AWS:

Data stored in S3 (N. California)
TIME_CREATED A data e a hora em que o ativo de dados (OCI) / os bancos de dados (AWS Glue) foram criados no catálogo de dados.

Exemplo do OCI Data Catalog:

26-SEP-22 10.56.01.395000 PM +00:00

Exemplo de Catálogo de Dados de Colagem AWS:

2022-06-15T09:45:35+01:00

DETAILS Documento JSON com metadados sobre cada entidade de dados (OCI) / banco de dados (AWS Glue).

Exemplo do OCI Data Catalog:

{
  "catalog-id": "ocid1.datacatalog.oc1.ap-mumbai-1.amaaa...",
  "description": null,
  "display-name": "OBJECT_STORE_AT_ASHBURN",
  "external-key": "https://swiftobjectstorage.us-ashburn-1....",
  "key": "bc95181c-3ac3-4959-9e5f-4e460d3fb82a",
  "lifecycle-state": "ACTIVE",
  "time-created": "2022-09-26T22:56:01.395000+00:00",
  "type-key": "3ea65bc5-f60d-477a-a591-f063665339f9",
  "uri": "/dcat/20190325/dataAssets/bc95181c-3ac3-4959-9e5f-4e460d3fb82a"
}

Exemplo de Catálogo de Dados de Colagem AWS:

{
    "Name": "dbmsdcatpoc",
    "Parameters": {
        "somekey": "somevalue"
    },
    "CreateTime": "2022-06-15T09:45:35+01:00",
    "CreateTableDefaultPermissions": [
        {
            "Principal": {
                "DataLakePrincipalIdentifier": "IAM_ALLOWED_PRINCIPALS"
            },
            "Permissions": [
                "ALL"
            ]
        }
    ],
    "CatalogId": "579294766787"
}

ALL_CLOUD_CATALOG_TABLES Exibição

O View ALL_CLOUD_CATALOG_TABLES é usado para exibir informações sobre entidades de dados para Catálogos de Dados do OCI e tabelas do AWS Glue Data Catalogs.

Coluna Descrição
DCAT_CON_ID Identificador exclusivo do catálogo de dados. O id da conexão.

Exemplo do OCI Data Catalog: CON1

Exemplo do AWS Glue Data Catalog: CON1

CATALOG_ID Identificador exclusivo do catálogo de dados.

Exemplo do OCI Data Catalog: ocid1.datacatalog.oc1.ap-mumbai-1.….y35a

Exemplo do AWS Glue Data Catalog: NULL

579294766787

DATABASE_NAME Nome do ativo de dados (OCI)/banco de dados (AWS Glue).

Exemplo do OCI Data Catalog: OBJECT_STORE_AT_ASHBURN

Exemplo do AWS Glue Data Catalog: OBJECT_STORE_AT_N_CALIFORNIA

NAME Nome da entidade de dados (OCI) / tabela (AWS Glue).

Exemplo do OCI Data Catalog: BIKES_TRIPS

Exemplo do AWS Glue Data Catalog: BIKES_TRIPS

DESCRIPTION Descrição da entidade de dados (OCI) / tabela (AWS Glue).

Exemplo do OCI Data Catalog: Table storing bike trips

Exemplo do AWS Glue Data Catalog: Table storing bike trips

TIME_CREATED A data e a hora em que a entidade de dados (OCI) / tabela (AWS Glue) foi criada no catálogo de dados.

Exemplo do OCI Data Catalog: 26-SEP-22 10.56.01.395000 PM +00:00

Exemplo do AWS Glue Data Catalog: 2022-06-15T09:45:35+01:00

TIME_UPDATED Última vez que uma alteração foi feita na entidade de dados (OCI) / tabela (AWS Glue).

Exemplo do OCI Data Catalog: 26-SEP-22 10.56.01.395000 PM +00:00

Exemplo do AWS Glue Data Catalog: 2022-06-15T09:45:35+01:00

DETAILS Documento JSON com metadados sobre cada entidade de dados (OCI)/tabela (AWS Glue)

Exemplo do OCI Data Catalog:

{  
  "business-name": null,
  "data-asset-key": "bc95181c-3ac3-4959-9e5f-...",
  "description": null,
  "display-name": "bikes_trips",
  "external-key": "LE: https://swiftobjectstorage.us-ashburn-1.oraclecloud.com/v1/..._trips",
  "folder-key": "9c4b542d-d6eb-4b83-bf59-...",
  "folder-name": "hive",
  "is-logical": true,
  "is-partition": false,
  "key": "fde30a69-a07c-478a-ab62-...",
  "lifecycle-state": "ACTIVE",
  "object-storage-url": "https://objectstorage.us-ashburn-1.oraclecloud.com/n/...",
  "path": "OBJECT_STORE_AT_ASHBURN/hive/hive",
  "pattern-key": "db21b3f1-1508-4045-aa80-...",
  "properties": {
    "default": {
      "CONTENT-LENGTH": "4310321",
      "LAST-MODIFIED": "Fri, 9 Oct 2020 20:16:52 UTC",
      "archivedPECount": "0",
      "dataEntityExpression": "{logicalEntity:[^/]+}.db/{logicalEntity:[^/]+}/.*",
      "harvestedFile": "bikes.db/trips/p_start_month=2019-09/000000_0",
      "patternName": "bikes_trips"
    },
    "harvestProps": {
      "characterset": "UTF8",
      "compression": "none",
      "type": "PARQUET"
    }
  },
  "realized-expression": "bikes.db/trips/.*",
  "time-created": "2022-09-26T22:56:35.063000+00:00",
  "time-updated": "2022-09-26T22:56:35.063000+00:00",
  "type-key": "6753c3af-7f88-44b9-be52-1d57bef462fb",
  "updated-by-id": "ocid1.user.oc1..r5l3tov7a",
  "uri": "/dcat/20190325/dataAssets/bc95181c-3ac3-4959-9e5f-..."
}

Exemplo de Catálogo de Dados de Colagem AWS:

{
    "Name": "bikes_trips",
    "DatabaseName": "dbmsdcatpoc",
    "Owner": "owner",
    "CreateTime": "2022-06-23T13:24:20+01:00",
    "UpdateTime": "2022-06-23T13:24:20+01:00",
    "LastAccessTime": "2022-06-23T13:24:20+01:00",
    "Retention": 0,
    "StorageDescriptor": {
        "Columns": [
            {
                "Name": "trip_duration",
                "Type": "int"
            },
            {
                "Name": "start_month",
                "Type": "string"
            }, ...
        ],
        "Location": "s3://dbmsdcatpoc/hive/bikes.db/trips/",
        "InputFormat": "org.apache.hadoop.hive.ql.io.parquet.MapredParquetInputFormat",
        "OutputFormat": "org.apache.hadoop.hive.ql.io.parquet.MapredParquetOutputFormat",
        "Compressed": false,
        "NumberOfBuckets": -1,
        "SerdeInfo":
 {            "SerializationLibrary": "org.apache.hadoop.hive.ql.io.parquet.serde.ParquetHiveSerDe",
            "Parameters": {
                "serialization.format": "1"
            }
        },
        "BucketColumns": [],
        "SortColumns": [],
        "Parameters": {
            "CrawlerSchemaDeserializerVersion": "1.0",
            "CrawlerSchemaSerializerVersion": "1.0",
            "UPDATED_BY_CRAWLER": "crawler-bikes",
            "averageRecordSize": "86",
            "classification": "parquet",
            "compressionType": "none",
            "objectCount": "12",
            "recordCount": "404947",
            "sizeKey": "35312159",
            "typeOfData": "file"
        },
        "StoredAsSubDirectories": false
    },
    "PartitionKeys": [
        {
            "Name": "p_start_month",
            "Type": "string"
        }
    ],
    "TableType": "EXTERNAL_TABLE",
    "Parameters": {
        "CrawlerSchemaDeserializerVersion": "1.0",
        "CrawlerSchemaSerializerVersion": "1.0",
        "UPDATED_BY_CRAWLER": "crawler-bikes",
        "averageRecordSize": "86",
        "classification": "parquet",
        "compressionType": "none",
        "objectCount": "12",
        "recordCount": "404947",
        "sizeKey": "35312159",
        "typeOfData": "file"
    },
    "CreatedBy": "arn:aws:sts::579294766787:assumed-role/AWSGlueServiceRole-dbmsdcat/AWS-Crawler",
    "IsRegisteredWithLakeFormation": false,
    "CatalogId": "579294766787",
    "VersionId": "0"
}

Exemplo

ALL_DCAT_ASSETS Exibição

Os ativos do serviço Data Catalog que este banco de dados está autorizado a acessar.

Coluna Tipo de Dados Descrição
DCAT_CON_ID VARCHAR2 (4000) Identificador de conexão exclusivo na instância

KEY

VARCHAR2(4000)

Chave de ativo

DISPLAY_NAME VARCHAR2(4000) Nome de exibição do ativo
DESCRIPTION VARCHAR2(4000) A descrição do ativo
CATALOG_ID VARCHAR2(4000) OCID do serviço Data Catalog que contém o ativo
EXTERNAL_KEY VARCHAR2(4000) URI do Object Storage Base para o ativo
URI VARCHAR2(4000) URI do Ativo para a API do Serviço Data Catalog
TIME_CREATED TIMESTAMP(6) WITH TIMEZONE A data e a hora em que o ativo de dados foi criado
TYPE_KEY VARCHAR2(4000) A chave do tipo de ativo de dados (no momento, só há suporte para ativos de dados do Object Storage). As chaves de tipo podem ser encontradas por meio do ponto final do serviço Data Catalog '/types'.
LIFECYCLE_STATE VARCHAR2(4000) O estado atual do ativo de dados. Para obter mais informações sobre possíveis estados do ciclo de vida, consulte a Referência DataAsset do serviço Data Catalog para obter uma lista de possíveis estados para lifecycleState.

ALL_DCAT_ATTRIBUTES Exibição

Os atributos do serviço Data Catalog que este banco de dados está autorizado a acessar.

Coluna Tipo de Dados Descrição
DCAT_CON_ID VARCHAR2 (4000) Identificador de conexão exclusivo na instância
KEY NUMBER Chave do atributo

DISPLAY_NAME

VARCHAR2(4000)

Nome de exibição do atributo

BUSINESS_NAME VARCHAR2(4000) Nome comercial do atributo
DESCRIPTION VARCHAR2(4000) Descrição do atributo
DATA_ASSET_KEY VARCHAR2(4000) Chave de ativo de dados
FOLDER_KEY VARCHAR2(4000) Chave da pasta
ENTITY_KEY VARCHAR2(4000) Chave da entidade
EXTERNAL_KEY VARCHAR2(4000) Chave externa exclusiva para o atributo
LENGTH NUMBER Tamanho máximo permitido do valor do atributo
PRECISION NUMBER Precisão do valor do atributo (geralmente se aplica ao tipo de dados flutuante)
SCALE NUMBER Escala do valor do atributo (geralmente se aplica ao tipo de dados flutuante)
IS_NULLABLE NUMBER Identifica se este atributo pode receber valores nulos
URI VARCHAR2(4000) URI para a instância do atributo na API do serviço Data Catalog
LIFECYCLE_STATE VARCHAR2(4000) O estado atual do atributo. Para obter mais informações sobre possíveis estados do ciclo de vida, consulte a Referência de Atributos do serviço Data Catalog para obter uma lista de possíveis estados para lifecycleState.
TIME_CREATED TIMESTAMP(6) WITH TIME ZONE A data e a hora em que o atributo foi criado
EXTERNAL_DATA_TYPE VARCHAR2(4000) Tipo de dados do atributo conforme definido no sistema externo
MIN_COLLECTION_COUNT NUMBER Número mínimo de elementos, se o tipo do atributo for um tipo de coleta
MAX_COLLECTION_COUNT NUMBER Número máximo de elementos, se o tipo do atributo for um tipo de coleta
DATATYPE_ENTITY_KEY VARCHAR2(4000) Chave de entidade que representa o tipo de dados deste atributo, aplicável se este atributo for um tipo complexo
EXTERNAL_DATATYPE_ENTITY_KEY VARCHAR2(4000) Chave de entidade externa que representa o tipo de dados deste atributo, aplicável se este atributo for um tipo complexo
PARENT_ATTRIBUTE_KEY VARCHAR2(4000) Chave de atributo que representa o atributo pai deste atributo, aplicável se o atributo pai for de um tipo de dados complexo
EXTERNAL_PARENT_ATTRIBUTE_KEY VARCHAR2(4000) Chave de atributo externo que representa o atributo pai deste atributo, aplicável se o atributo pai for do tipo complexo
PATH VARCHAR2(4000) Caminho completo do atributo

ALL_DCAT_CONNECTIONS Exibição

Uma view que contém informações sobre os catálogos de dados conectados a esta instância.

Coluna Tipo de Dados Descrição
DCAT_CON_ID VARCHAR2(4000) Identificador de conexão exclusivo na instância
COMPARTMENT_ID VARCHAR2(4000) OCID do compartimento no qual reside a instância do serviço Data Catalog
INSTANCE_ID VARCHAR2(4000)

OCID da instância do serviço Data Catalog

REGION

VARCHAR2(4000)

Região da instância do serviço Data Catalog

ENDPOINT VARCHAR2(4000) Ponto de extremidade da instância do serviço Data Catalog
CREATED TIMESTAMP Quando a instância do serviço Data Catalog foi criada
NAME VARCHAR2(4000) Nome da instância do serviço Data Catalog
LAST_UPDATED TIMESTAMP Timestamp da última atualização da conexão com a instância do serviço Data Catalog
LATEST_OPERATION_ID NUMBER O id da última operação de sincronização
DATA_CATALOG_CREDENTIAL VARCHAR2(128) Credencial usada para acessar o serviço Data Catalog
OBJECT_STORE_CREDENTIAL VARCHAR2(128) Credencial usada pelo driver da tabela externa para acessar o Object Store

ALL_DCAT_ENTITIES Exibição

As entidades lógicas do serviço Data Catalog que este banco de dados está autorizado a acessar.

Coluna Tipo de Dados Descrição
DCAT_CON_ID VARCHAR2(4000) Identificador de conexão exclusivo na instância
CATALOG_ID VARCHAR2(4000) OCID do serviço Data Catalog que contém o ativo

KEY

VARCHAR2(4000)

Chave da entidade

DISPLAY_NAME VARCHAR2(4000)

Nome para exibição da entidade

BUSINESS_NAME VARCHAR2(4000)

Nome comercial da entidade

DESCRIPTION VARCHAR2(4000)

Descrição da entidade lógica

DATA_ASSET_KEY

VARCHAR2(4000)

Chave de ativo

FOLDER_KEY

VARCHAR2(4000)

Chave exclusiva da pasta

FOLDER_NAME VARCHAR2(4000) Nome da pasta (bloco)
EXTERNAL_KEY VARCHAR2(4000) Chave externa para a entidade lógica
PATTERN_KEY VARCHAR2(4000) Chave do padrão associado da entidade lógica
REALIZED_EXPRESSION VARCHAR2(4000) A expressão regular usada para obter os arquivos desta entidade lógica
PATH VARCHAR2(4000) Caminho completo para a entidade lógica
TIME_CREATED TIMESTAMP(6) WITH TIME ZONE Data e hora em que a entidade foi criada
TIME_UPDATED TIMESTAMP(6) WITH TIME ZONE Última vez que uma alteração foi feita na entidade de dados
UPDATED_BY_ID VARCHAR2(4000) OCID do usuário que atualizou este objeto no serviço Data Catalog
URI VARCHAR2(4000) URI da instância da entidade na API
LIFECYCLE_STATE VARCHAR2(4000) O estado atual da entidade. Para obter mais informações sobre possíveis estados do ciclo de vida, consulte a Referência da Entidade do serviço Data Catalog para obter uma lista de possíveis estados para lifecycleState.

ALL_DCAT_FOLDERS Exibição

Metadados para os buckets do serviço Object Storage que contêm os arquivos de dados das Entidades Lógicas.

Coluna Tipo de Dados Descrição
DCAT_CON_ID VARCHAR2(4000) Identificador de conexão exclusivo na instância
CATALOG_ID VARCHAR2(4000) OCID do serviço Data Catalog que contém o ativo

KEY

VARCHAR2(4000)

Chave da pasta

DISPLAY_NAME

VARCHAR2(4000)

Nome para exibição da pasta

BUSINESS_NAME VARCHAR2(4000) Nome comercial da pasta
DESCRIPTION VARCHAR2(4000) Descrição da pasta
DATA_ASSET_KEY VARCHAR2(4000) Chave do ativo de dados que contém a pasta
PARENT_FOLDER_KEY VARCHAR2(4000) Chave para a pasta pai (no momento, esta é a chave do ativo de dados)
PATH VARCHAR2(4000) Caminho completo para a pasta
EXTERNAL_KEY VARCHAR2(4000) URI do serviço Object Storage para o bucket
TIME_EXTERNAL TIMESTAMP(6) WITH TIMEZONE O timestamp da última modificação desta pasta
TIME_CREATED TIMESTAMP(6) WITH TIMEZONE A data/hora em que a pasta foi criada
URI VARCHAR2(4000) URI para a instância da pasta na API do serviço Data Catalog.
LIFECYCLE_STATE VARCHAR2(4000) O estado atual da pasta. Para obter mais informações sobre possíveis estados do ciclo de vida, consulte a Referência de Pastas do serviço Data Catalog para obter uma lista de possíveis estados para lifecycleState.

ALL_DCAT_GLOBAL_ACCESSIBLE_CATALOGS Exibição

Esta view lista todos os catálogos acessíveis em todas as regiões, juntamente com o nível de privilégios de acesso para cada catálogo.

Coluna Tipo de Dados Descrição

CATALOG_ID

VARCHAR2(4000)

OCID do Catálogo

CATALOG_NAME VARCHAR2(4000) Nome do catálogo
CATALOG_REGION VARCHAR2(4000) Nome da região do catálogo
CATALOG_SCORE NUMBER A pontuação do catálogo é um valor numérico calculado com base nos privilégios configurados para a credencial de acesso do serviço Data Catalog. Uma pontuação de catálogo mais alta significa privilégios maiores, o que pode equivaler a uma probabilidade maior de que esse catálogo seja destinado ao uso com essa instância do Autonomous Database.

ALL_DCAT_LOCAL_ACCESSIBLE_CATALOGS Exibição

Esta exibição lista todos os catálogos acessíveis na região atual, juntamente com o nível de privilégios de acesso para cada catálogo.

Coluna Tipo de Dados Descrição

CATALOG_ID

VARCHAR2(4000)

OCID do Catálogo

CATALOG_NAME VARCHAR2(4000) Nome do catálogo
CATALOG_SCORE NUMBER A pontuação do catálogo é um valor numérico calculado com base nos privilégios configurados para a credencial de acesso do serviço Data Catalog. Uma pontuação de catálogo mais alta significa privilégios maiores, o que pode equivaler a uma probabilidade maior de que esse catálogo seja destinado ao uso com essa instância do Autonomous Database.

ALL_GLUE_DATABASES Exibição

Os bancos de dados do AWS Glue Data Catalog que a credencial do catálogo de dados está autorizada a acessar.

Coluna Tipo de dados Descrição
DCAT_CON_ID VARCHAR2(4000) Identificador exclusivo do id de conexão do catálogo de dados.
CATALOG_ID VARCHAR2(255) Identificador exclusivo do serviço Data Catalog.
NAME VARCHAR2(255) Nome do banco de dados.
DESCRIPTION VARCHAR2(2048) Descrição do banco de dados.
LOCATION_URI VARCHAR2(1024) O local do banco de dados.
CREATE_TIME TIMESTAMP O horário em que o banco de dados foi criado no catálogo de dados.
PARAMETERS CLOB Documento JSON com pares de chave/valor que definem parâmetros e propriedades do banco de dados.
TARGET_DATABASE VARCHAR2(4000) Documento JSON que descreve um banco de dados de destino para vinculação de recursos no AWS.

ALL_GLUE_TABLES Exibição

Esta exibição mostra todas as tabelas do AWS Glue Data Catalog que a credencial do catálogo de dados está autorizada a acessar.

Coluna Tipo de dados Descrição
DCAT_CON_ID VARCHAR2(4000) Identificador exclusivo do id de conexão do catálogo de dados.
CATALOG_ID VARCHAR2(255) Identificador do catálogo
DATABASE_NAME VARCHAR2(255) Nome do banco de dados
NAME VARCHAR2(255) Nome da tabela
TABLE_TYPE VARCHAR2(255) Tipo de tabela
CLASSIFICATION VARCHAR2(255)  
DESCRIPTION VARCHAR2(2048) Descrição da tabela
OWNER VARCHAR2(255) Proprietário da tabela
CREATED_BY VARCHAR2(255) Criador de tabela
CREATE_TIME TIMESTAMP A hora em que a tabela foi criada no catálogo de dados.
LAST_ANALYZED_TIME TIMESTAMP A última vez que as estatísticas de coluna foram calculadas para esta tabela.
LAST_ACCESS_TIME TIMESTAMP A última vez que a tabela foi acessada.
UPDATE_TIME TIMESTAMP A última vez que a tabela foi atualizada.
IS_REGISTERED_WITH_LAKE_FORMATION NUMBER Indica se a tabela está registrada com a formação do lake da AWS.
PARAMETERS CLOB Documento JSON com pares de chave/valor que definem propriedades da tabela.
PARTITION_KEYS CLOB Documento JSON com uma lista de colunas pela qual a tabela é particionada.
RETENTION NUMBER O tempo de retenção desta tabela.
STORAGE_DESCRIPTION CLOB Documento JSON com informações sobre o armazenamento físico de uma tabela.
TARGET_TABLE VARCHAR2(4000) Documento JSON que descreve uma tabela de destino usada para vinculação de recursos no AWS.
VERSION_ID VARCHAR2(255) O identificador da versão da tabela.
VIEW_EXPANDED_TEXT CLOB Introduzido pelo AWS Glue para compatibilidade com o Hive. Não usado pelo AWS Glue.
VIEW_ORIGINAL_TEXT CLOB Introduzido pelo AWS Glue para compatibilidade com o Hive. Não usado pelo AWS Glue.

DCAT_ATTRIBUTES Exibição

Lista o mapeamento de atributos de entidade lógica para colunas de tabela externa.

Coluna Tipo de Dados Descrição
DCAT_CON_ID VARCHAR2 (4000) Identificador de conexão exclusivo na instância
ASSET_KEY VARCHAR2(4000) Chave do ativo do serviço Data Catalog

ENTITY_KEY

VARCHAR2(4000)

Chave da entidade do serviço Data Catalog

ATTRIBUTE_KEY

VARCHAR2(4000)

Chave do atributo do serviço Data Catalog

ORACLE_COLUMN_NAME VARCHAR2(128) Nome da coluna mapeada

DCAT_ENTITIES Exibição

Descreve o mapeamento de entidades lógicas para tabelas externas.

Coluna Tipo de Dados Descrição
DCAT_CON_ID VARCHAR2(4000) Identificador de conexão exclusivo na instância
ASSET_KEY VARCHAR2(4000) Chave do ativo do serviço Data Catalog

ENTITY_KEY

VARCHAR2(4000)

Chave da entidade do serviço Data Catalog

FOLDER_KEY

VARCHAR2(4000)

Chave da pasta do Data Catalog

ORACLE_TABLE_NAME VARCHAR2(128) Nome da tabela mapeada
ORACLE_SCHEMA_NAME VARCHAR2(128) Nome do esquema mapeado
ENTITY_ORACLE_DB_SCHEMA VARCHAR2(4000) A propriedade personalizada oracle-db-schema da entidade usada para derivar o esquema
ASSET_ORACLE_DB_SCHEMA VARCHAR2(4000) A propriedade personalizada oracle-db-schema do ativo de dados usada para derivar o esquema
FOLDER_ORACLE_DB_SCHEMA VARCHAR2(4000) A propriedade personalizada oracle-db-schema da pasta usada para derivar o esquema

Visualização DBMS_DCAT$SYNC_LOG

A view DBMS_DCAT$SYNC_LOG fornece acesso fácil à tabela de logs para a última operação de sincronização executada pelo usuário atual.

Cada chamada para o procedimento RUN_SYNC é registrada em uma nova tabela de log, apontada pelo campo LOGFILE_TABLE de USER_LOAD_OPERATIONS. As tabelas de log são eliminadas automaticamente após 2 dias, e os usuários podem limpar todos os logs de sincronização usando o Procedimento DELETE_ALL_OPERATIONS em que o tipo é DCAT_SYNC.

A view DBMS_DCAT$SYNC_LOG identifica automaticamente a tabela de log mais recente. O esquema da view DBMS_DCAT$SYNC_LOG é descrito abaixo e as permissões de acesso são idênticas às das tabelas de log individuais. Por padrão, o READ é concedido à atribuição dbms_dcat e ao usuário ADMIN.

As tabelas de log têm o seguinte formato:

Coluna Tipo de Dados Descrição

LOG_TIMESTAMP

TIMESTAMP

Timestamp da entrada de log.

LOG_LEVEL

VARCHAR2(32)

O nível de log de entrada pode ter um dos seguintes valores: OFF, FATAL, ERROR, WARN, INFO, DEBUG, TRACE, ALL.

LOG_DETAILS VARCHAR2(32767) A mensagem de log.