Como comprimir dados no Oracle 12c

Os administradores de banco de dados (DBAs) gastar muito do seu tempo e esforço compressão de dados para retenção e arquivamento. Em bancos de dados da Oracle 12c, compression

é o ato de tomar os dados em seu banco de dados e aplicação de processos que reduzem a sua pegada de armazenamento.

Como cada ano que passa resulta em mais e mais dados em seu banco de dados, sem processos específicos no local, um banco de dados pode crescer rapidamente fora de controle, consumindo todos os tipos de recursos e dificultando o desempenho. Como um banco de dados de primeira classe, a Oracle dá as ferramentas de compressão DBA para fazer os trabalhos de dados remoção (purga) e dados de manutenção (conservação e arquivamento) mais rápido e mais eficiente.

Como usar compressão de base no Oracle 12c

compressão básica no banco de dados tem sido em torno desde que a Oracle 9i. É chamada compressão básica porque é muito simples em que ele faz. No entanto, também é limitada nas suas utilizações. compressão básico funciona como se estivesse usando uma ferramenta fechando para compactar um arquivo em seu sistema operacional. Na base de dados, os objectos podem ser comprimidos.

Utilização de compressão básica para reduzir seus tamanhos de mesa pode permitir-lhe a eficiência na utilização do espaço (obviamente), CPU (digitalização de mesa), e memória (uso de cache buffer). A maior eficiência significa que os espaços de tabela e backups ocupam menos espaço. Backups executar mais rapidamente também.

Esteja ciente, porém, que a compressão básica é recomendado principalmente para objetos com uma baixa frequência de linguagem de manipulação de dados (DML). Prefere-se que os objectos são praticamente só de leitura. Você pode dizer praticamente porque alguns dados não é 100 por cento preto e branco.

Por exemplo, o nome de uma pessoa raramente muda, então uma lista de nomes de funcionários é praticamente só de leitura. Uma mudança pode ocorrer de vez em quando, mas, é tão pouco frequente que comprimir os dados e incorrer a sobrecarga de uma mudança é insignificante.

Pense nisso desta maneira, se você deseja editar um arquivo compactado em seu sistema operacional, o que você tem que fazer primeiro? Você tem que descompactá-lo. O mesmo acontece com a Oracle compressão básica. DML em arquivos compactados sofre em termos de desempenho.

Aqui está um exemplo de compressão.

  1. Entrar e SQL * Plus como o usuário HR e fazer uma cópia dos empregados de mesa demo chamada emp digitando

  2. Verifique o tamanho desta tabela, digitando

    lt; selecione segment_name, bytesfrom user_segmentswhere segment_name = 'EMP' ->

    Você vê algo como isto:

    SEGMENT_NAME BYTES -------------- -------------------- EMP 65.536
  3. Inserir linhas em emp executando a seguinte declaração até ver # 147-109568 linhas criado # 148-:

    lt; inserir em emp select * from emp->
  4. Verifique o tamanho da tabela emp novamente, digitando

    lt; selecione segment_name, bytesfrom user_segmentswhere segment_name = 'EMP' ->

    Você vê algo como isto:

    SEGMENT_NAME BYTES -------------- -------------------- EMP 18874368
  5. Compactar as linhas, digitando

    Você vê isso:

    Tabela alterada.
  6. Verifique o tamanho mais uma vez, digitando

    lt; selecione segment_name, bytesfrom user_segmentswhere segment_name = 'EMP' ->

    Você vê algo como isto:

SEGMENT_NAME BYTES -------------- -------------------- EMP9,437,184

Como você pode ver, a tabela tem reduzido a cerca de 50 por cento do tamanho original. Dependendo do tipo e da organização de seus dados, você pode ver vários graus de compressão.

Para ver as tabelas de detalhes de compressão no dicionário de dados, o tipo

Você vê algo como isto:

TABLE_NAME COMPRESS COMPRESS_FOR ------------------------------ -------- --------- --- EMP básica habilitada

Para remover a compactação de uma tabela em caso de necessidade de atualizar um monte de dados, tipo

Você vê isso:

Tabela alterada.

Como usar compressão avançada no Oracle 12c

A primeira coisa a entender sobre compressão avançada é que ele usa algoritmos de compressão mais desenvolvidos e políticas de acesso de dados para que a sobrecarga de emissão DML contra seus objetos comprimido é totalmente eliminada. Bem, a outra coisa importante que você precisa estar ciente de que a compressão avançada é um recurso licenciado.

Sim, isso significa que você deve pagar mais por isso. O seu representante de vendas da Oracle podem ajudar você a descobrir o que vai custar. Uma coisa que você deve considerar, porém, é o retorno sobre o investimento que você pode começar a partir de compressão avançada. Você vai exigir menos espaço de armazenamento, e muitas operações será melhorada. Cálculo desses retornos serão uma parte importante do seu processo de decisão.

Usando compressão avançada é muito simples. Se você seguiu a demo antes, você tem uma tabela emp em formato noncompressed. Você usa essa tabela emp nas etapas a seguir para aplicar compressão avançada:

  1. Para comprimir a tabela emp com compressão avançada, tipo

    Você vê algo como isto:

    Tabela alterada.
  2. Para verificar o novo tamanho de sua tabela emp, tipo

    Você vê algo como isto:

    SEGMENT_NAME BYTES -------------- -------------------- EMP9,437,184
  3. Verifique os detalhes de compressão no dicionário de dados, digitando

    Você vê algo como isto:

    TABLE_NAME COMPRESS COMPRESS_FOR ------------------------------ -------- --------- --- EMP HABILITADO ADVANCED.

    Sua tabela está habilitado para todas as operações, incluindo DML com a perda de desempenho mínimo.

Você deve ter notado nos exemplos tanto para compressão básico e avançado a palavra-chave MOVIMENTO é usado nos comandos. Se você não usar a palavra-chave MOVIMENTO, a tabela não é comprimido, mas todos os dados futuros inseridos na tabela será comprimido.

Se você usar a palavra-chave MOVE e existem índices na tabela, esses índices se tornará corrupto. Essa corrupção ocorre porque você está mudando o local da linha na tabela quando você compactar proativamente os dados.

Para corrigir esse problema, depois de uma acção de compressão MOVIMENTO, reconstruir os índices. Esta é uma razão que você pode escolher para comprimir os dados para futuras operações agora e, em seguida, movê-lo mais tarde, quando você pode incorrer em tempo de inatividade para reconstruir os índices.

menu