DBMS_SHARE Constantes

Essas constantes são usadas pelo pacote DBMS_SHARE.

Arquivos Desanexados

Constantes usadas pelo Procedimento PURGE_DETACHED_FILES.

Nome Tipo Valor Descrição
PURGE_DROP PLS_INTEGER 1 Tentativa de eliminar os arquivos, usando a credencial especificada. Se o arquivo não puder ser eliminado, ele continuará sendo listado nas views *_SHARE_DETACHED_FILES.
PURGE_DROP_FORCE PLS_INTEGER 2 Tentativa de eliminar os arquivos, usando a credencial especificada. O arquivo é removido das views *_SHARE_DETACHED_FILES, mesmo que a tentativa de eliminar o arquivo falhe novamente.
PURGE_FORGET PLS_INTEGER 3 Remova as views *_SHARE_DETACHED_FILES dos arquivos sem tentar eliminá-las.

Nível de Log

Constantes usadas para definir o nível de informações coletadas no log. Esses níveis controlam o número de eventos que são conectados em ALL_SHARE_EVENTS e ALL_SHARE_RECIPIENTS.

Consulte Procedimento SET_SHARE_LOG_LEVEL e Procedimento SET_RECIPIENT_LOG_LEVEL.

Nome Tipo Valor Descrição
LOG_LEVEL_ERRORS_ONLY PLS_INTEGER 0 Registrar apenas erros.
LOG_LEVEL_BASIC PLS_INTEGER 1 Registrar erros e informações básicas.
LOG_LEVEL_DETAIL PLS_INTEGER 2 Registrar erros e detalhes adicionais.
LOG_LEVEL_DEBUG PLS_INTEGER 3 Registrar nível de informação de depuração.

Compartilhar Propriedades do Cargo

Propriedades usadas no Procedimento UPDATE_SHARE_JOB_PROPERTY.

Nome Tipo Valor Descrição
PROP_SHARE_JOB_DOP VARCHAR2(7) 'JOB_DOP' A propriedade JOB_DOP determina quantos jobs DBMS_SCHEDULER são usados para publicar o compartilhamento. Deve ser um número entre 1 e 5.
PROP_SHARE_JOB_CLASS VARCHAR2(9) 'JOB_CLASS' A propriedade JOB_CLASS determina a classe de job do scheduler que é usada para publicar o compartilhamento. Consulte ALL_SCHEDULER_JOB_CLASSES para obter uma lista de valores válidos. O valor padrão é DEFAULT_JOB_CLASS.
PROP_SHARE_JOB_PRIORITY VARCHAR2(12) 'JOB_PRIORITY' A propriedade JOB_PRIORITY determina a prioridade relativa quando dois ou mais compartilhamentos do mesmo usuário estão sendo publicados ao mesmo tempo. O valor deve ser um número, com 0 como padrão. As ações com prioridade mais alta serão processadas antes das ações com prioridade mais baixa. As ações com a mesma prioridade são processadas em uma base de primeiro a chegar e primeiro a ser atendido.
Valores padrão para prioridade do cargo:
SHARE_PRIORITY_LOW     CONSTANT NUMBER := 1;
SHARE_PRIORITY_DEFAULT CONSTANT NUMBER := 2;
SHARE_PRIORITY_HIGH    CONSTANT NUMBER := 3;

Compartilhar propriedades

Constantes usadas para indicar as propriedades de um compartilhamento.

Consulte Procedimento UPDATE_SHARE_PROPERTY, Procedimento UPDATE_DEFAULT_SHARE_PROPERTY e Função GET_SHARE_PROPERTY.

Nome Tipo Valor Descrição
PROP_SHARE_DESC VARCHAR2(11) 'DESCRIPTION' Uma descrição localmente visível do compartilhamento.
PROP_SHARE_PUBLIC_DESC VARCHAR2(18) 'PUBLIC_DESCRIPTION' Uma descrição externamente visível do compartilhamento.
PROP_SHARE_SPLIT_SIZE VARCHAR2(10) 'SPLIT_SIZE' A propriedade SPLIT_SIZE determina o tamanho dos arquivos parquet gerados. O algoritmo funciona da seguinte forma:
  1. O Otimizador SQL estima o tamanho em bytes de um determinado segmento (por exemplo, uma partição de uma tabela ou os resultados de uma view).
  2. O número de bytes é dividido pelo SPLIT_SIZE e arredondado para cima para produzir o "número de divisões".
  3. Em seguida, os dados no segmento são divididos nesse "número de divisões" usando algum método (por exemplo, ROWID, colunas de índice, colunas especificadas etc.).
  4. Cada pedaço de dados é então convertido em um arquivo parquet.

Observe que o arquivo parquet geralmente será menor que o SPLIT_SIZE devido à compactação. Especificamente, SPLIT_SIZE determina a quantidade de dados antes da compactação.

PROP_SHARE_LOG_LEVEL VARCHAR2(9) 'LOG_LEVEL' A propriedade LOG_LEVEL determina a quantidade de informações que serão registradas no log ALL_SHARE_EVENTS.
PROP_SHARE_VERSION_ACCESS VARCHAR2(14) 'VERSION_ACCESS' As versões de um compartilhamento publicado que um destinatário pode ver.

Compartilhar Tipo PAR do Destinatário

Essas constantes são os valores válidos para a propriedade PROP_RECIPIENT_PAR_TYPE em Procedimento UPDATE_RECIPIENT_PROPERTY e GET_RECIPIENT_PROPERTY.

Nome Tipo Valor Descrição
PAR_TYPE_FOLDER PLS_INTEGER 1 PARs dá acesso a toda a pasta.
PAR_TYPE_FILE PLS_INTEGER 2 PARs dá acesso a um arquivo de cada vez.

Propriedades do Destinatário de Compartilhamento

Essas constantes são usadas em Função GET_SHARE_PROPERTY, Procedimento UPDATE_DEFAULT_SHARE_PROPERTY e Procedimento UPDATE_SHARE_PROPERTY.

Nome Tipo Valor Descrição
PROP_RECIPIENT_PAR_LIFETIME VARCHAR2(12) 'PAR_LIFETIME' O tempo de vida dos URLs de Solicitação Pré-autenticada enviados ao destinatário por meio da API de compartilhamento delta. O padrão é três horas: '00 03:00:00'
PROP_RECIPIENT_MIN_PAR_LIFETIME VARCHAR2(16) 'MIN_PAR_LIFETIME' O tempo de vida mínimo garantido de um URL de Solicitação Pré-autenticada enviado ao destinatário por meio da API de compartilhamento delta. Se houver uma PAR existente para o mesmo arquivo de parquet, ela só será reutilizada se a vida útil restante exceder esse valor mínimo. O default é 2 1/2 horas: '00 02:30:00'
PROP_RECIPIENT_MAX_PAR_LIFETIME VARCHAR2(16) 'MAX_PAR_LIFETIME' Uma configuração de administrador que define a vida útil máxima permitida para qualquer destinatário. O padrão é 1 dia: '01 00:00'
PROP_RECIPIENT_TOKEN_LIFETIME VARCHAR2(14) 'TOKEN_LIFETIME' Uma string, no formato INTERVAL DAY TO SECOND, que representa o tempo de vida de um token de portador de compartilhamento delta. O padrão é uma hora: '01 00:00:00'.
PROP_RECIPIENT_MAX_TOKEN_LIFETIME VARCHAR2(18) 'MAX_TOKEN_LIFETIME' Uma configuração de administrador que define a vida útil máxima permitida do token do portador para qualquer destinatário. O padrão são 90 dias: '90 00:00'
PROP_RECIPIENT_EMAIL VARCHAR2(5) 'EMAIL' O e-mail do destinatário. Isso só é obrigatório para destinatários de compartilhamento delta.
PROP_RECIPIENT_DESCRIPTION VARCHAR2(11) 'DESCRIPTION' Uma descrição de texto do destinatário.
PROP_RECIPIENT_LOG_LEVEL VARCHAR2(9) 'LOG_LEVEL' O nível de log do destinatário. Isso controla o que é conectado em USER_SHARE_RECIPIENT_EVENTS. O valor deve ser uma das constantes LOG_LEVEL_*.
PROP_RECIPIENT_SHARING_ID VARCHAR2(10) 'SHARING_ID' O ID de compartilhamento do destinatário. Isso só é necessário para destinatários do Autonomous Database.
PROP_RECIPIENT_PAR_TYPE VARCHAR2(8) 'PAR_TYPE' O tipo de solicitação pré-autenticada a ser criada. Deve ser PAR_TYPE_FOLDER (o padrão) ou PAR_TYPE_FILE.
PROP_RECIPIENT_VERSION_ACCESS VARCHAR2(14) 'VERSION_ACCESS' Especifica quais versões de compartilhamentos publicados um destinatário pode ver. Um de VERSION_ACCESS_CURRENT ou VERSION_ACCESS_ANY.

Propriedades da Tabela de Compartilhamento

Constantes usadas para indicar propriedades da tabela de compartilhamento. Eles são usados pela Função GET_SHARE_TABLE_PROPERTY e pelo Procedimento UPDATE_SHARE_TABLE_PROPERTY.

Nome Tipo Valor Descrição
PROP_SHARE_TABLE_SPLIT_METHOD VARCHAR2(12) 'SPLIT_METHOD' Especifica como um segmento deve ser dividido em arquivos diferentes.
SPLIT_METHOD_AUTO VARCHAR2(4) 'AUTO' O Autonomous Database determina a maneira como os segmentos são divididos.
SPLIT_METHOD_RANGE VARCHAR2(5) 'RANGE' Divida segmentos com base nos intervalos de valores. Os intervalos exatos são determinados pela análise dos histogramas de dados. Este método requer que um ou mais split_columns sejam especificados.
SPLIT_METHOD_ROWID VARCHAR2(5) 'ROWID' Divida segmentos com base em ROWID.
SPLIT_METHOD_HASH VARCHAR2(4) 'HASH' Dividir segmentos com base em valores HASH. Este método requer que um ou mais split_columns sejam especificados.
SPLIT_METHOD_VALUE VARCHAR2(5) 'VALUE' Divida segmentos com base em valores distintos. Este método requer que um ou mais split_columns sejam especificados.
PROP_SHARE_TABLE_SPLIT_COLUMNS VARCHAR2(13) 'SPLIT_COLUMNS' Especifica quais colunas são usadas para divisão. Eles são necessários para os métodos RANGE, VALUE e HASH. O valor deve ser um conjunto delimitado por vírgulas de colunas compartilhadas (por exemplo, 'STATE,CITY' ou '"STATE","CITY"').
PROP_SHARE_TABLE_ORDER_COLUMNS VARCHAR2(13) 'ORDER_COLUMNS' Especifica quais colunas são usadas para ordenação ao coletar parquet. O valor deve ser um conjunto delimitado por vírgulas de colunas compartilhadas (por exemplo, 'STATE,CITY' ou '"STATE","CITY"').
PROP_SHARE_TABLE_SHARE_COLUMNS VARCHAR2(13) 'SHARE_COLUMNS' Especifica quais colunas são compartilhadas. O valor é um conjunto delimitado por vírgulas de colunas compartilhadas. Por exemplo, 'STATE,CITY' ou '"STATE","CITY"'.
PROP_SHARE_TABLE_SPLIT_SIZE VARCHAR2(10) 'SPLIT_SIZE' Substitua o nível de compartilhamento split_size para uma tabela específica. O valor é um número.
PROP_SHARE_TABLE_GATHER_STATS VARCHAR2(12) 'GATHER_STATS' Se o Autonomous Database coletar estatísticas, o valor de 'GATHER_STATS' será 'YES'. Caso contrário, o valor será 'NO'.
PROP_SHARE_TABLE_SPLIT_ROWS VARCHAR2(10) 'SPLIT_ROWS' A propriedade SPLIT_ROWS é uma maneira alternativa de especificar a quantidade de dados a serem armazenados em cada arquivo parquet.
  1. O Autonomous Database calcula o número de linhas em um determinado segmento (por exemplo, uma partição de uma tabela ou os resultados de uma view).
  2. O número de linhas é dividido pelo SPLIT_ROWS e arredondado para cima para produzir o "número de divisões".
  3. Em seguida, os dados no segmento são divididos nesse número de divisões usando algum método (por exemplo, ROWID, colunas de índice, colunas especificadas etc.)
  4. Cada pedaço de dados é então convertido em um arquivo parquet.

É recomendável usar a propriedade SPLIT_SIZE para controlar o número de divisões, pois isso reflete a quantidade de dados em cada linha. Uma linha com 900 colunas de VARCHAR2(4000), por exemplo, é muito maior que uma linha com uma única coluna do tipo NUMBER(1).

Só use SPLIT_ROWS se tiver contabilizado a quantidade média de dados em cada linha.

PROP_SHARE_TABLE_FLASHBACK VARCHAR2(9) 'FLASHBACK' A propriedade FLASHBACK determina se a tabela será publicada usando consultas de FLASHBACK para garantir a consistência de leitura entre os diferentes arquivos de exportação. O valor deve ser YES, NO ou AUTO.

A definição AUTO usará flashback se estiver disponível.

A definição YES fará com que a publicação falhe se o flashback não for possível na tabela ou na view.

A definição NO não usará flashback, o que significa que os arquivos parquet podem representar diferentes snapshots dos dados.

Tipos Compartilhados

Constantes usadas durante a criação do compartilhamento para identificar o tipo de compartilhamento.

Consulte Procedimento CREATE_SHARE.

Nome Tipo Valor Descrição
SHARE_TYPE_VERSIONED DBMS_ID 'VERSIONED' O compartilhamento é usado para compartilhar dados com controle de versão.
SHARE_TYPE_LIVE DBMS_ID 'LIVE' O compartilhamento é usado para compartilhar dados ao vivo.

Tipo de ID do Compartilhamento

Usado em ASSERT_SHARING_ID e GET_SHARING_ID.

Nome Tipo Valor Descrição
SHARING_ID_TYPE_TENANCY VARCHAR2(7) 'TENANCY' O ID de compartilhamento representa uma Tenancy do OCI.
SHARING_ID_TYPE_COMPARTMENT VARCHAR2(11) 'COMPARTMENT' O ID de compartilhamento representa um Compartimento do OCI.
SHARING_ID_TYPE_DATABASE VARCHAR2(8) 'DATABASE' O ID de compartilhamento representa um OCI Autonomous Database.
SHARING_ID_TYPE_REGION VARCHAR2(6) 'REGION' O ID de compartilhamento representa uma Região do OCI.

Acesso à Versão

Valores possíveis para a propriedade de compartilhamento VERSION_ACCESS. Isso é usado para implementar delta "viagem no tempo". Esses são os valores válidos associados a PROP_SHARE_VERSION_ACCESS e PROP_RECIPIENT_VERSION_ACCESS.

Eles podem ser usados para ativar a propriedade "versão" no ponto final da consulta de compartilhamento delta, que permite que os destinatários selecionem versões específicas dos dados em vez de sempre receberem a versão ATUAL. Você precisa ativar isso no compartilhamento e no destinatário.

Por exemplo:
UPDATE_SHARE_PROPERTY(
          share_name => '...',
          share_property => DBMS_SHARE.PROP_SHARE_VERSION_ACCESS,
          new_value => DBMS_SHARE.VERSION_ACCESS_ANY);

UPDATE_SHARE_PROPERTY(
          share_name => '...',
          share_property => DBMS_SHARE.PROP_RECIPIENT_VERSION_ACCESS,
          new_value => DBMS_SHARE.VERSION_ACCESS_ANY);
Nome Tipo Valor Descrição
VERSION_ACCESS_CURRENT PLS_INTEGER 1 Um destinatário só pode ver a versão ATUAL. (Padrão)
VERSION_ACCESS_ANY PLS_INTEGER 2 Um destinatário pode escolher qualquer versão ATUAL ou RETIRADA.