Pacote DBMS_CATALOG

O pacote DBMS_CATALOG inclui uma ampla gama de subprogramas para gerenciamento de catálogo, agrupados por funcionalidade.

  • Montagem e Desmontagem do Catálogo:

    Você pode adicionar um novo catálogo ao seu Autonomous AI Database, montando uma conexão existente (por exemplo, um link de banco de dados existente a um banco de dados) ou adicionando uma nova conexão e registrando o sistema externo como um novo catálogo.

    Você pode ativar ou desativar um catálogo.
    Observação

    Os catálogos desativados mantêm detalhes da conexão e quaisquer metadados atuais, mas não são atualizados e não podem ser acessados por UIs ou APIs.

    Remova ou desanexe um catálogo do Autonomous AI Database.

  • Gerenciamento de Propriedades do Catálogo:
    Os subprogramas mencionados aqui permitem recuperar e atualizar várias propriedades de catálogos, esquemas e tabelas dentro do sistema. Especificamente, ele fornece funções para:
    • Obtenha o valor de uma propriedade para um catálogo, esquema ou tabela, incluindo opções para tratar valores de texto grandes por meio do formato CLOB.

    • Atualize o valor de propriedades para catálogos, esquemas ou tabelas, com suporte para tipos de dados regulares e CLOB.

  • Gerenciamento de Credenciais:
    Um catálogo montado terá zero ou mais credenciais necessárias. Essas são credenciais que precisam ser especificadas para que o catálogo possa ser usado. Os catálogos do Iceberg, por exemplo, geralmente têm duas credenciais obrigatórias.
    • ICEBERG_CREDENTIAL: Uma credencial usada para chamar os pontos finais do Catálogo REST Iceberg. Geralmente, essa é uma credencial de token do portador.
    • DATA_STORAGE_CREDENTIAL: Uma credencial usada para acessar os arquivos Iceberg no bucket.
    Você pode considerar a credencial obrigatória como um parâmetro que precisa ser especificado. Uma credencial local é um objeto CREDENTIAL real no esquema do usuário que desempenha a função de uma das credenciais necessárias. Você pode especificar as credenciais locaisao montar o catálogo, usando argumentos como catalog_credential e data_storage_credential em DBMS_CATALOG.MOUNT_ICEBERG. Você também pode especificá-los posteriormente chamando SET_LOCAL_CREDENTIAL.
    BEGIN
      -- Create a new credential
      DBMS_CLOUD.CREATE_CREDENTIAL('BUCKET_CREDENTIAL', ...);
    
      -- Make the new credential play the role of the required 'DATA_STORAGE_CREDENTIAL'
      DBMS_CATALOG.SET_LOCAL_CREDENTIAL(
        catalog_name => 'iceberg_cat',
        required_credential => 'DATA_STORAGE_CREDENTIAL',
        local_credential => 'BUCKET_CREDENTIAL');
    END;    
    Você pode ver o mapeamento atual entre as credenciais obrigatórias e locais com a função GET_LOCAL_CREDENTIAL_MAP.
    SELECT
       JSON_QUERY(dbms_catalog.get_local_credential_map('iceberg_cat'), '$' PRETTY)
    FROM dual;
      2    3  
    JSON_QUERY(DBMS_CATALOG.GET_LOCAL_CREDENTIAL_MAP('ICEBERG_CAT'),'$'PRETTY)
    ------------------------------------------------------------------------------------------------------------------------
    {
      "DATA_STORAGE_CREDENTIAL" : "BUCKET_CREDENTIAL",
      "ICEBERG_CREDENTIAL" : "UNITY_CRED"
    }
  • Gerenciamento de Entidade de Catálogo:
    Os subprogramas listados aqui se referem ao gerenciamento de várias entidades dentro de um catálogo, incluindo criação, recuperação e exclusão de links de armazenamento, esquemas, tabelas e outros objetos de catálogo. Ele fornece funções para:
    • Criar e eliminar links de armazenamento em nuvem vinculados a catálogos.

    • Criar e eliminar tabelas externas em catálogos.

    • Criar e eliminar esquemas e seu conteúdo.

    • Recupera listas de tabelas, esquemas e outros objetos de catálogo com filtragem opcional.

  • Acesso e Armazenamento em Cache de Dados:
    Esta seção abrange funções que lidam com consulta de dados, gerenciamento de cursores de resultados e controle de armazenamento em cache de metadados nos catálogos. Ela inclui recursos para:
    • Gere instruções SELECT para tabelas lógicas com opções personalizáveis.

    • Abra cursores para extrair dados de tabelas lógicas.

    • Descarregue e preencha previamente o cache de metadados dos catálogos para manter os dados atualizados.

  • Sincronização e Compartilhamento:
    Esta seção lista subprogramas que descrevem recursos que permitem o gerenciamento e a manutenção de catálogos e esquemas consistentes e atualizados em diferentes sistemas ou ambientes. Ele oferece as seguintes funcionalidades:
    • CREATE_SYNCHRONIZED_SCHEMAS: Cria esquemas locais no banco de dados que são sincronizados com definições de catálogo remoto, garantindo que o ambiente local reflita a origem remota.
    • DROP_SYNCHRONIZED_SCHEMAS: Remove um ou mais esquemas que foram sincronizados anteriormente.
    • UPDATE_SYNCHRONIZED_SCHEMA_PROPERTY: Modifica propriedades de esquemas sincronizados, como rastreamento de alterações ou comportamento de sincronização, atualizando propriedades com novos valores no formato CLOB.
    • GRANT_TO_RECIPIENT & REVOKE_FROM_RECIPIENT: Gerencia permissões de acesso concedendo ou revogando o acesso a catálogos para destinatários de compartilhamento específicos, controlando quem pode exibir ou modificar os dados do catálogo.