Artigo no estilo Mentoring
Sempre que se fala em carga massiva de dados há uma grande preocupação em como executá-la com alto índice de desempenho e baixo índice de consumo de recursos. É uma preocupação legítima e também um grande desafio. Esta situação ocorre, por exemplo, com cargas de dados diárias em ambientes OLAP (Online Analytical Processing) ou mesmo cargas em bancos de dados tipicamente OLTPs (Online Transaction Processing) que costumam receber arquivos do tipo texto (os famosos flat files).
O processamento analítico on-line, ou OLAP, é uma abordagem para responder rapidamente a consultas multidimensionais analíticas. OLAP é parte da categoria mais ampla de BI - Business Inteligence, que engloba também relatórios relacionais e mineração de dados. Aplicações típicas de OLAP incluem relatórios de negócios para vendas, marketing, comunicação, gestão de processos de negócios, orçamento e previsão, e relatórios financeiros.
Ferramentas OLAP permitem aos usuários analisar de forma interativa dados multidimensionais. Os bancos de dados configurados para ambientes OLAP usam um modelo de dados multidimensional, permitindo consultas analíticas complexas e ad-hoc com um tempo de execução rápido.
O processamento de transações on-line, ou OLTP, refere-se a uma classe de sistemas que facilitam a operação e gerenciamento de aplicações orientadas, normalmente, a entrada de dados e processamento de transações de consultas. O OLTP também tem sido usado para se referir a processamento no qual o sistema responde imediatamente a pedidos do usuário. Um caixa eletrônico para um banco é um exemplo de uma aplicação comercial de processamento de transações on-line.
Em aplicações de grande porte, a eficiência de um sistema OLTP pode depender de um sofisticado software de gerenciamento de transações e/ou táticas de otimização de banco de dados para facilitar o processamento de um grande número de atualizações simultâneas para um banco de dados OLTP.
Para sistemas de banco de dados descentralizado, programas intermediários de OLTP podem distribuir o processamento de transações entre vários computadores em uma rede. O OLTP é muitas vezes integrado a uma arquitetura orientada a serviços (SOA) e Web Services.
Sendo assim, é essencial que a carga de dados seja feita da maneira mais rápida possível com o menor consumo de recursos.
Quando falamos do banco de dados Oracle, a primeira coisa que deve vir a cabeça é o uso do utilitário SQL*Loader. Ele foi projetado especificamente para este tipo de tarefa. No entanto, nem todos o utilizam da melhor maneira e alguns recursos acabam sendo utilizados sem que realmente haja necessidade.
O SQL*Loader é o principal método para popular rapidamente tabelas com dados de arquivos externos. Ele tem um poderoso mecanismo de análise de dados que permite que praticamente não haja limitação em relação ao formato dos dados no arquivo externo. O SQL*Loader pode ser executado através de linha de comando (sqlldr) ou através da interface gráfica do Enterprise Manager.
O SQL*Loader está disponível em todas as configurações do banco de dados Oracle (Standar ...