No Oracle, uma tabela de espaço é um tipo especializado de tabela usado para otimizar o armazenamento e a recuperação de objetos grandes (LOBs). LOBs são coleções de dados binários que excedem o limite máximo de tamanho de uma coluna regular no Oracle, que é de 4 GB.
As tabelas espaciais são implementadas usando o tipo de armazenamento "lobspace", que divide os dados LOB em pedaços menores chamados extensões. Cada extensão é armazenada em um arquivo separado e as extensões são gerenciadas de forma transparente pela Oracle. Esse design melhora o desempenho das operações LOB, principalmente ao trabalhar com grandes quantidades de dados LOB.
Por padrão, o Oracle cria um lobspace padrão chamado SYSTEM para armazenar LOBs. No entanto, você também pode criar tabelas lobspace personalizadas para organizar e gerenciar melhor os dados LOB. Tabelas lobspace personalizadas podem ser criadas com várias configurações, como:
*
lob_storage: Especifica o local do arquivo para armazenar as extensões LOB.
*
lob_block_size: Define o tamanho de cada extensão.
*
tamanho_do_pedaço: Determina o tamanho máximo de cada segmento LOB em uma extensão.
*
pctfree: Configura a porcentagem de espaço livre a ser mantida em cada extensão.
*
pctused: Especifica a porcentagem de espaço usado antes que o Oracle expanda uma extensão.
Ao usar tabelas de espaço, os LOBs são armazenados como ponteiros para as extensões na tabela lobspace associada. Essa dissociação dos dados LOB da tabela principal reduz a sobrecarga e melhora o desempenho geral de consultas e atualizações envolvendo colunas LOB.
As tabelas de espaço são particularmente benéficas em aplicações que trabalham com grandes quantidades de dados BLOB, como imagens, vídeos, áudio e documentos. Ao aproveitar as tabelas de espaço, a Oracle otimiza o armazenamento e o acesso eficiente aos dados LOB, melhorando o desempenho e a escalabilidade geral do aplicativo.