Carga de Trabalho Data Warehouse com o Autonomous Database

O Autonomous Database configura e otimiza seu banco de dados para você, com base na sua carga de trabalho.

Características de um banco de dados com a carga de trabalho Data Warehouse:

  • Os tablespaces temporários e de dados padrão do banco de dados são configurados automaticamente. Não é permitido adicionar, remover ou modificar tablespaces. O Autonomous Database cria automaticamente um ou vários tablespaces, dependendo do tamanho do armazenamento.

  • O conjunto de caracteres do banco de dados é Unicode AL32UTF8. Consulte Selecionar um Conjunto de Caracteres para o Autonomous Database para obter mais informações.

  • A compactação é ativada por padrão. Por padrão, o Autonomous Database usa a compactação colunar híbrida para todas as tabelas. Você pode especificar diferentes métodos de compactação para suas tabelas usando a cláusula de compactação no comando CREATE TABLE ou ALTER TABLE.

  • O Cache de Resultados do Oracle Database é ativado por padrão para todas as instruções SQL.

Acessando um banco de dados:

  • Você não tem acesso direto ao nó de banco de dados. Você pode criar e eliminar diretórios com CREATE DIRECTORY e DROP DIRECTORY, conforme descrito em Criando e Gerenciando Diretórios no Autonomous Database.

    Você pode usar procedimentos DBMS_CLOUD como DBMS_CLOUD.DELETE_FILE, DBMS_CLOUD.GET_OBJECT e DBMS_CLOUD.PUT_OBJECT com arquivos e objetos. Você não tem acesso direto ao sistema de arquivos local.

Execução Paralela com a carga de trabalho Data Warehouse:

  • O paralelo é determinado pelo serviço de banco de dados. Consulte Nome do Serviço de Banco de Dados do Autonomous Database para obter mais informações. Para obter detalhes do suporte de paralelismo de cada serviço de banco de dados.

  • Quando você quiser desativar operações de DML paralelas em sua sessão, use o seguinte comando SQL:

    ALTER SESSION DISABLE PARALLEL DML;

    Consulte VLDB and Partitioning Guide para obter mais informações sobre operações de DML paralelas.

Gerenciar Desempenho e compactação de DML para cargas de trabalho Data Warehouse

Por padrão, o Autonomous Database com cargas de trabalho Data Warehouse usa compactação colunar híbrida para todas as tabelas. Isso oferece a melhor taxa de compactação e o desempenho ideal para operações de carga de caminho direto, como as cargas feitas usando o pacote DBMS_CLOUD. Se você executar operações de DML, como UPDATE e MERGE em suas tabelas, poderá causar a redução da taxa de compactação das linhas afetadas, levando a tamanhos de tabela maiores. Essas operações também podem ser executadas de forma mais lenta em comparação com as mesmas operações em uma tabela descompactada.

Para obter a melhor taxa de compactação e desempenho ideal, a Oracle recomenda o uso de operações em massa, como carregamentos de caminho direto e instruções CREATE TABLE AS SELECT. Mas, se sua carga de trabalho exigir operações de DML frequentes, como UPDATE e MERGE em partes grandes de uma tabela, você poderá criar essas tabelas como descompactadas para obter melhor desempenho de DML. Por exemplo, a seguinte instrução cria a tabela SALES como não compactada:

CREATE TABLE sales (
    prod_id             NUMBER          NOT NULL,
    cust_id             NUMBER          NOT NULL,
    time_id             DATE            NOT NULL,
    channel_id          NUMBER          NOT NULL,
    promo_id            NUMBER          NOT NULL,
    quantity_sold       NUMBER(10,2)    NOT NULL,
    amount_sold         NUMBER(10,2)    NOT NULL)
NOCOMPRESS;

A qualquer momento, você pode usar a instrução ALTER TABLE MOVE para compactar essas tabelas sem impactar as consultas que as acessam. Por exemplo, a instrução a seguir compacta a tabela SALES usando a Compressão Colunar Híbrida.

ALTER TABLE sales MOVE COLUMN STORE COMPRESS FOR QUERY HIGH;

Criar tabelas intermediárias para cargas de trabalho do Data Warehouse

O Autonomous Database suporta tabelas intermediárias otimizadas para carregar dados em um data warehouse.

Uma tabela intermediária é aquela com o conjunto de propriedades STAGING. As seguintes características são aplicadas:

  • Qualquer forma de compactação é explicitamente desativada e não permitida em uma tabela intermediária para qualquer carga de dados. O comando ALTER TABLE COMPRESS não é permitido.

  • A definição da propriedade STAGING em uma tabela existente não afeta o armazenamento de dados existentes, mas afeta as futuras cargas de dados.

  • O Autonomous Database usa amostragem dinâmica para estatísticas de tabelas com o conjunto de propriedades intermediário e não coleta estatísticas em tabelas intermediárias.

  • A eliminação das tabelas intermediárias remove imediatamente a tabela, ignorando a lixeira. A definição do parâmetro de inicialização recyclebin com o valor ON não ativa a lixeira.

As características das tabelas intermediárias particionadas do Autonomous Database incluem as opções anteriores, além das seguintes:

  • Qualquer forma de compactação está explicitamente desativada e não é permitida em todas as partições e subpartições da tabela.

  • Não é possível alterar os atributos padrão da tabela para usar a compactação com ALTER TABLE MODIFY DEFAULT ATTRIBUTES.

  • Não é possível executar operações de manutenção de partição que movem dados e compactam os dados. Por exemplo, o seguinte não é permitido quando você tenta aplicar a compactação: ALTER TABLE com MOVE PARTITION, MERGE PARTITIONS, SPLIT PARTITION ou SPLIT SUBPARTITION.

  • Não é possível reparticionar uma tabela com ALTER TABLE MODIFY PARTITION e especificar qualquer partição resultante a ser compactada.

Defina as tabelas intermediárias ao criar uma tabela ou alterando uma tabela existente da seguinte forma:

  1. Crie uma tabela com a propriedade STAGING.

    Por exemplo:

    CREATE TABLE staging_table (col1 number, col2 varchar2(100)) FOR STAGING;
    
    CREATE TABLE part_staging_table (col1 number, col2 varchar2(100))
        PARTITION BYRANGE (col1)
              (PARTITION p1 VALUESLESS THAN (100), 
               PARTITION pmax VALUESLESS THAN (MAXVALUE)) FOR STAGING;
  2. Altere uma tabela existente para definir a propriedade STAGING.

    Por exemplo:

    ALTER TABLE staging_table FOR STAGING;
  3. Você pode verificar a propriedade STAGING de uma tabela usando uma das seguintes views: USER_TABLES, ALL_TABLES ou DBA_TABLES.

    Nessas views, a coluna STAGING indica a propriedade da tabela intermediária; um valor YES indica uma tabela STAGING; um valor NO é mostrado para todas as outras tabelas.

Você pode alterar uma tabela para remover a propriedade STAGING. Por exemplo:

ALTER TABLE staging_table NOT FOR STAGING;

Para alterar uma tabela com NOT FOR STAGING, faça o seguinte:

  • Depois que você altera uma tabela com NOT FOR STAGING, o atributo de compactação e os dados existentes não são afetados e são mantidos como descompactados até que você altere explicitamente a tabela e especifique a compactação. Você pode alterar a compactação da tabela e ALTER TABLE COMPRESS é permitido.

  • A alteração de uma tabela com NOT FOR STAGING não aciona a coleta de estatísticas. Após a alteração da propriedade da tabela com NOT FOR STAGING, você poderá coletar estatísticas, de forma manual ou automática.

  • Após você alterar uma tabela com NOT FOR STAGING, quando a lixeira estiver ativada, a eliminação da tabela colocará a tabela na lixeira.