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 centralizado de gerenciamento de metadados do OCI Data Catalog.

O serviço Data Catalog coleta metadados dos 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 as 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 com dados armazenados no Autonomous Database. Isso simplifica muito o processo de gerenciamento; há um único armazenamento de metadados gerenciado centralizado compartilhado entre vários serviços do OCI (incluindo o Autonomous Databases). Também há views de dicionário do Autonomous Database que permitem inspecionar o conteúdo do Data Catalog usando SQL e mostrar como essas entidades do 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 esse pacote.

Usuários do Serviço Data Catalog

  • Usuários/esquemas sincronizados

    As tabelas externas sincronizadas são organizadas em esquemas de banco de dados correspondentes a 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, para que não possam ser alterados pelos usuários locais (nem mesmo pelo 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 sem autenticação e 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 atribuição para poder usar a API para navegar no serviço Data Catalog e executar a sincronização.

Credenciais e Políticas do Serviço IAM Obrigatórias

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

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

Requisitos de política e credenciais do AWS Glue Data Catalog

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 os Catálogos de Dados do Amazon Web Services (AWS) Glue e ler no armazenamento de objetos S3:
  • É necessário um objeto de credencial com permissão para acessar um AWS Glue Data Catalog. Para obter informações sobre o gerenciamento de credenciais, consulte DBMS_CLOUD para Gerenciamento de Acesso.

    Para acessar um AWS Glue Data Catalog, são necessários os seguintes privilégios: 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 apontando 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. Não há suporte para as credenciais do AWS ARN (Amazon Resource Names).

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

Nesse 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 do armazenamento de objetos. Para obter mais detalhes, consulte Procedimento DBMS_DCAT SET_DATA_CATALOG_CREDENTIAL e Procedimento DBMS_DCAT 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 Procedimento DBMS_CLOUD CREATE_CREDENTIAL para obter uma descrição completa desse procedimento.

O credential_name é o nome do objeto de 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 para 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 esse 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.

Quando 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;
/
Após a criação do 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, é criado um grupo dinâmico que inclui membros de recursos apropriados, o grupo dinâmico tem permissão para gerenciar um serviço Data Catalog e, em seguida, o grupo dinâmico tem permissão para ler o 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 do 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 mycompartment.
    allow dynamic-group adb-grp-1 to read objects in compartment mycompartment

Exemplo: Usando Controladores de 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 em mycompartment e ler o armazenamento de objetos em mycompartment.

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

Resumo de Subprogramas de Gerenciamento de Conexões

Esta tabela lista os procedimentos do 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
Procedimento SET_DATA_CATALOG_CREDENTIAL Definir a credencial de acesso do catálogo de dados usada por uma conexão específica com o catálogo de dados
Procedimento SET_OBJECT_STORE_CREDENTIAL Definir a credencial usada pelo identificador de conexão exclusivo fornecido para acessar o Armazenamento de Objetos
UNSET_DATA_CATALOG_CONN Procedimento Remover uma conexão existente do serviço Data Catalog

Procedimento SET_DATA_CATALOG_CREDENTIAL

Esse procedimento define a credencial de acesso 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. Esta credencial é usada para a conexão identificada por dcat_con_id. O default é Nulo.

Uso

Essa credencial deve ter permissões de Gerenciamento do Serviço Data Catalog; 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.

Procedimento SET_OBJECT_STORE_CREDENTIAL

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 ao Armazenamento de Objetos altera todas as tabelas sincronizadas existentes para usar a nova.

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 Armazenamento de Objetos.

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

SET_DATA_CATALOG_CONN Procedimento

Esse procedimento cria uma conexão com o serviço Data Catalog 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 endpoint for especificado, region será opcional. Se endpoint e region forem fornecidos, o endpoint terá precedência. O padrão é NULL.

endpoint

O ponto final do serviço Data Catalog. Se region for especificado, endpoint será opcional. Se endpoint e region forem fornecidos, o 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. Ele é 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 NULL. As seguintes restrições são aplicáveis para dcat_con_id:
  • Ele deve ser exclusivo na instância do Autonomous Database.
  • Ela deve começar com uma letra.
  • Ela 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 do AWS Glue
  • NULL - O tipo de catálogo é detectado automaticamente na região ou ponto final fornecido.

Uso

Você só precisa chamar esse 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 podem ser acessíveis aos usuários do serviço Data Catalog e permitem substituir 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 Consulta com o AWS Glue Data Catalog para Catálogos de Dados do AWS Glue.

Exemplo: Conectando com um OCID conhecido

Nesse 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 Catálogo de Dados é 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

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 poderá sincronizar 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 do AWS Glue.

Nesse exemplo, o Autonomous Database está se conectando a um AWS Glue Data Catalog 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

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

Sintaxe

Observação

A chamada desse procedimento elimina todos os esquemas protegidos e tabelas externas que foram criados como parte das sincronizações anteriores. Não há impacto nos metadados do 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 criar novamente os jobs de sincronização programados. Consulte Procedimento DBMS_DCAT.DROP_SYNC_JOB e Procedimento DBMS_DCAT.CREATE_SYNC_JOB.
Subprograma Descrição
CREATE_SYNC_JOB Procedimento Criar 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

Esse procedimento executa uma operação de sincronização e é o ponto de entrada para a sincronização. Como entrada, ele obtém listas de ativos, pastas e entidades do catálogo de dados selecionados e os materializa 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 sobre 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 da última operação de sincronização executada pelo usuário atual. Para obter mais detalhes, consulte DBMS_DCAT$SYNC_LOG View e Monitorando e Solucionando 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 criar novamente os jobs de sincronização programados. Consulte Procedimento DBMS_DCAT.DROP_SYNC_JOB e Procedimento DBMS_DCAT.CREATE_SYNC_JOB.

sincronização de entidades lógicas particionadas ou tabelas de colagem

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

  1. A entidade lógica do catálogo de dados do OCI ou a tabela de colagem 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 é baseada em dados particionados que seguem o formato de pasta no estilo hive ou não. Não há suporte para entidades lógicas baseadas em dados particionados que seguem o formato no estilo não hive usando nomes de objeto.
    • Exemplo 1 Entidade lógica baseada em objetos coletados que seguem o formato de partição no estilo 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 para atributos particionados é Partition enquanto o tipo para atributos não particionados é Primitive.

    • Exemplo 2. Entidades lógicas baseadas em objetos coletados que seguem o formato de partição no 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 como sincronizar entidades lógicas particionadas, consulte Exemplo: Um Cenário de Dados Particionados.

Sincronização incremental de entidades lógicas particionadas/tabelas de colagem

Cada chamada para o 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 uma tabela de Colagem está presente em duas chamadas RUN_SYNC, a segunda chamada preserva e possivelmente altera as tabelas externas existentes. A tabela a seguir mostra que entidade lógica ou alterações de tabela de cola são suportadas quando a entidade lógica ou a tabela de cola é particionada:

Alteração de Entidade Lógica ou de 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 a adição de uma coluna particionada a uma tabela particionada externa. Uma exceção é gerada.

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. Uma exceção é gerada.

Renomeação de um atributo particionado

Não há suporte para renomear uma coluna particionada em uma tabela particionada externa. Uma exceção é gerada.

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

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

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

Para o AWS Glue Data Catalogs, o documento JSON especifica uma lista de tabelas em várias granularidades: bancos de dados, tabelas. O documento especifica uma lista de bancos de dados. Os usuários podem restringir o conjunto de tabelas a ser sincronizado 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 uma tabela de Colagem 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 sobre o escopo synced_objects:
    • Adicionar 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 - Exclua tabelas dentro do escopo synced_objects.
  • REPLACE - Substitui todos os objetos sincronizados no momento pelos objetos dentro do escopo synced_objects.

error_semantics

(Opcional) Esse 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 no 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/atribuições que recebem privilégios READ automaticamente em todas as tabelas externas processadas por essa chamada de RUN_SYNC. Todos os usuários/atribuiçõ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 privilégios já concedidos em tabelas externas sincronizadas.

operation_id

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

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 USER_LOAD_OPERATIONS em busca da 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 Procedimento SET_DATA_CATALOG_CONN. 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 padrão do parâmetro é 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 (Armazenamento de Objetos) no serviço Data Catalog.

{"asset_list" : ["*"]}

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

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

Veja a seguir um exemplo de parâmetro synced_objects para sincronizar duas entidades dentro do 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

Veja a seguir um exemplo de 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

Veja a seguir um exemplo de 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

Veja a seguir um exemplo de 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

Veja a seguir um exemplo de 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

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

Ele assume 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 Procedimento RUN_SYNC para obter mais detalhes sobre como a sincronização funciona.

Só pode haver um 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 esteja definido como TRUE. Se definido como TRUE, o job anterior será eliminado.

Se um job do scheduler tentar ser executado enquanto outra sincronização estiver em andamento, esse job 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 criar novamente os jobs de sincronização programados. Consulte Procedimento DBMS_DCAT.DROP_SYNC_JOB e Procedimento DBMS_DCAT.CREATE_SYNC_JOB.

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 especificando os objetos a serem sincronizados, conforme descrito no procedimento RUN_SYNC.

error_semantics

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

log_level

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

repeat_interval

Intervalo de repetição 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 um job de sincronização já existir. O padrão é FALSE.

grant_read (Opcional) Lista de usuários/atribuições a serem concedidos READ nas tabelas externas sincronizadas, conforme descrito para o procedimento RUN_SYNC. Consulte Procedimento DBMS_DCAT.RUN_SYNC.
sync_option (Opcional) Comportamento em relação a entidades que já foram sincronizadas por meio de uma operação RUN_SYNC anterior, conforme descrito para o procedimento RUN_SYNC. Consulte Procedimento DBMS_DCAT.RUN_SYNC.
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 Procedimento SET_DATA_CATALOG_CONN. 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 padrão do parâmetro é NULL.

DROP_SYNC_JOB Procedimento

Esse 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

Esse 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 das Views do Serviço Data Catalog

A integração do Data Catalog com o Autonomous Database fornece inúmeras tabelas e views.

Essas tabelas e views ajudam a entender:

  • Ativos do serviço Data Catalog disponíveis. Obtenha informações sobre qualquer tipo de ativo do serviço Data Catalog - incluindo bancos de dados, armazenamentos de objetos e mais.
  • Informações sobre ativos e entidades de Armazenamento de Objetos do serviço Data Catalog 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 (isto é, 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 Exibir Exibir informações sobre ativos de dados do OCI Data Catalog e bancos de dados do AWS Glue Data Catalog
ALL_CLOUD_CATALOG_TABLES Exibir Usado para exibir informações sobre entidades de dados para Catálogos de Dados do OCI e tabelas para Catálogos de Dados do AWS Glue
ALL_DCAT_ASSETS Exibir Listar os ativos do catálogo de dados que esse banco de dados está autorizado a acessar
ALL_DCAT_ATTRIBUTES Exibir Listar os atributos do catálogo de dados que este banco de dados está autorizado a acessar
ALL_DCAT_CONNECTIONS Exibir Uma view que contém informações sobre o ou os catálogos de dados conectados a essa instância
ALL_DCAT_ENTITIES Exibir

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

ALL_DCAT_FOLDERS Exibir Listar metadados dos buckets do Armazenamento de Objetos que contêm os arquivos de dados das entidades lógicas
ALL_DCAT_GLOBAL_ACCESSIBLE_CATALOGS Exibir Listar todos os catálogos acessíveis em todas as regiões, com o nível de privilégios de acesso para cada catálogo
ALL_DCAT_LOCAL_ACCESSIBLE_CATALOGS Exibir Listar todos os catálogos acessíveis na região atual, com o nível de privilégios de acesso para cada catálogo
ALL_GLUE_DATABASES Exibir 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 Exibir Mostra todas as tabelas do AWS Glue Data Catalog que a credencial do catálogo de dados está autorizada a acessar
DCAT_ATTRIBUTES Exibir Listar o mapeamento de atributos de entidade lógica para colunas de tabela externa
DCAT_ENTITIES Exibir Descreve o mapeamento de entidades lógicas para tabelas externas
DBMS_DCATExibição em $SYNC_LOG Fornece acesso fácil à tabela de log para a última operação de sincronização executada pelo usuário atual

ALL_CLOUD_CATALOG_DATABASES Exibir

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 AWS Glue Data Catalog:

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 AWS Glue Data Catalog:

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 AWS Glue Data Catalog:

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

Exemplo do OCI Data Catalog:

26-SEP-22 10.56.01.395000 PM +00:00

Exemplo de AWS Glue Data Catalog:

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 AWS Glue Data Catalog:

{
    "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 Exibir

A view ALL_CLOUD_CATALOG_TABLES é usada para exibir informações sobre entidades de dados para Catálogos de Dados do OCI e tabelas para Catálogos de Dados do AWS Glue.

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

Exemplo do OCI Data Catalog: CON1

Exemplo de 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 de 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 de 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 de 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 de 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 de 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 de 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 AWS Glue Data Catalog:

{
    "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 Exibir

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

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

KEY

VARCHAR2(4000)

Chave de ativo

DISPLAY_NAME VARCHAR2(4000) Nome para 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 Armazenamento de Objetos Base do ativo
URI VARCHAR2(4000) URI do Ativo para a API do Data Catalog
TIME_CREATED TIMESTAMP(6) WITH TIMEZONE A data e a hora de criação do ativo de dados
TYPE_KEY VARCHAR2(4000) A chave do tipo de ativo de dados (atualmente, só são suportados ativos de dados do Armazenamento de Objetos). As chaves de tipo podem ser encontradas por meio do ponto final '/types' do serviço Data Catalog.
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 DataAsset Reference do serviço Data Catalog para obter uma lista de possíveis estados para lifecycleState.

ALL_DCAT_ATTRIBUTES Exibir

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

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

DISPLAY_NAME

VARCHAR2(4000)

Nome para 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 float)
SCALE NUMBER Escala do valor do atributo ( geralmente se aplica ao tipo de dados float)
IS_NULLABLE NUMBER Identifica se esse 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 Atributo 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 de criação do atributo
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 de coleção
MAX_COLLECTION_COUNT NUMBER Número máximo de elementos, se o tipo do atributo for de coleção
DATATYPE_ENTITY_KEY VARCHAR2(4000) Chave de entidade que representa o tipo de dados desse atributo, aplicável se esse atributo for um tipo complexo
EXTERNAL_DATATYPE_ENTITY_KEY VARCHAR2(4000) Chave de entidade externa que representa o tipo de dados desse atributo, aplicável se o atributo for um tipo complexo
PARENT_ATTRIBUTE_KEY VARCHAR2(4000) Chave de atributo que representa o atributo principal desse atributo, aplicável se o atributo principal for do tipo de dados complexo
EXTERNAL_PARENT_ATTRIBUTE_KEY VARCHAR2(4000) Chave de atributo externo que representa o atributo principal desse atributo, aplicável se o atributo principal for do tipo complexo
PATH VARCHAR2(4000) Caminho completo do arquivo

ALL_DCAT_CONNECTIONS Exibir

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

Coluna Tipo de dados Descrição
DCAT_CON_ID VARCHAR2(4000) Identificador de conexão que é exclusivo na instância
COMPARTMENT_ID VARCHAR2(4000) OCID do compartimento no qual a instância do serviço Data Catalog reside
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 final 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 de tabela externa para acessar o Armazenamento de Objetos

ALL_DCAT_ENTITIES Exibir

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

Coluna Tipo de dados Descrição
DCAT_CON_ID VARCHAR2(4000) Identificador de conexão que é 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 (bucket)
EXTERNAL_KEY VARCHAR2(4000) Chave externa da 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 dessa entidade lógica
PATH VARCHAR2(4000) Caminho completo da entidade lógica
TIME_CREATED TIMESTAMP(6) WITH TIME ZONE Data e hora de criação da entidade.
TIME_UPDATED TIMESTAMP(6) WITH TIME ZONE Última vez uma alteração foi feita na entidade de dados
UPDATED_BY_ID VARCHAR2(4000) OCID do usuário que atualizou esse 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 de Entidade do serviço Data Catalog para obter uma lista de possíveis estados para lifecycleState.

ALL_DCAT_FOLDERS Exibir

Metadados dos buckets do Armazenamento de Objetos 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 que é exclusivo na instância
CATALOG_ID VARCHAR2(4000) OCID do 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 para o ativo de dados que contém a pasta
PARENT_FOLDER_KEY VARCHAR2(4000) Chave para a pasta principal (atualmente, é a chave do ativo de dados)
PATH VARCHAR2(4000) Caminho completo da pasta
EXTERNAL_KEY VARCHAR2(4000) URI do Armazenamento de Objetos para o bucket
TIME_EXTERNAL TIMESTAMP(6) WITH TIMEZONE O timestamp da última modificação dessa pasta
TIME_CREATED TIMESTAMP(6) WITH TIMEZONE A data/hora de criação da pasta
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 Pasta do serviço Data Catalog para obter uma lista de possíveis estados para lifecycleState.

ALL_DCAT_GLOBAL_ACCESSIBLE_CATALOGS Exibir

Essa view lista todos os catálogos acessíveis em todas as regiões, 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 se destine ao uso com essa instância do Autonomous Database.

ALL_DCAT_LOCAL_ACCESSIBLE_CATALOGS Exibir

Essa view lista todos os catálogos acessíveis na região atual, 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 se destine ao uso com essa instância do Autonomous Database.

ALL_GLUE_DATABASES Exibir

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 A hora 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 na AWS.

ALL_GLUE_TABLES Exibir

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 da 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 da coluna foram calculadas para esta tabela.
LAST_ACCESS_TIME TIMESTAMP A última vez que a tabela foi acessada.
UPDATE_TIME TIMESTAMP A última vez em que a tabela foi atualizada.
IS_REGISTERED_WITH_LAKE_FORMATION NUMBER Indica se a tabela está registrada na formação do AWS lake.
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 descrevendo uma tabela de destino usada para vinculação de recursos na 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 Exibir

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 que é exclusivo na instância
ASSET_KEY VARCHAR2(4000) Chave de ativo do serviço Data Catalog

ENTITY_KEY

VARCHAR2(4000)

Chave de entidade do Data Catalog

ATTRIBUTE_KEY

VARCHAR2(4000)

Chave de atributo do serviço Data Catalog

ORACLE_COLUMN_NAME VARCHAR2(128) Nome da coluna mapeada

DCAT_ENTITIES Exibir

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 que é exclusivo na instância
ASSET_KEY VARCHAR2(4000) Chave de ativo do serviço Data Catalog

ENTITY_KEY

VARCHAR2(4000)

Chave de entidade do Data Catalog

FOLDER_KEY

VARCHAR2(4000)

Chave de pasta do serviço 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

DBMS_DCATExibição em $SYNC_LOG

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

Cada chamada ao 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 do 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, 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 do registro.

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.