export/import

Compatibilidade do formato binário entre HPL, ONUNLOAD e EXTERNAL TABLES

As três melhores ferramentas em termos de performance para movimentar dados no Informix são o HPL, ONUNLOAD e EXTERNAL TABLES.
As três trabalham com formatos binários de arquivos, que é onde normalmente se consegue obter melhor performance.
Bom, mas são compatíveis entre elas?

Importanto,Lendo,Exportando dados via EXTERNAL TABLES

O recurso de EXTERNAL TABLES já existia no Informix XPS , que é uma versão antiga e especifica do Informix para Data Warehouse. Existem vários recursos interessante nesta versão (XPS) que nunca haviam sido implementadas na versão IDS.
Na versão IDS a utilização não é 100% igual ao do XPS mas é bem próximo e traz inumeras vantagens

Como exportar/importar dados com HPL - High Performance Loader

No Informix temos inumeros meios nativos de exportar e importar dados do banco para arquivo. Já demonstrei em outros artigos como trabalhar com o unload/load/dbload , dbexport/dbimport, onunload/onload , External Tables.
Com o HPL você pode utiliza-lo para jobs de execução diárias ou para processos de migração.
A partir da versão 11.50 xC6 passamos a ter como alternativa as EXTERNAL TABLES, considere sua utilização, ela tem se apresentado bem mais fácil de trabalhar além de ter melhor performance.

Exportando / Importando dados com onunload / onload

A exportação e importação de dados com o onunload e onload é pouco popular no Informix.
Porém nunca despreze sua utilidade!
Estes comandos exportam / importam os dados do banco para um arquivo ou fita em formato binário, ou seja, eles realizam um "dump" das paginas de dados.

Como exportar / importar dados com dbexport / dbimport

Os comandos dbexport e dbimport são utilitários para exportação/importação completa de um banco de dados e são extremamente facil de trabalhar.
Eles possuem caracteristicas muito similares ao LOAD / UNLOAD / dbload , porém é praticamente um processo automatizado para todo o banco de dados.

Como exportar/importar dados com UNLOAD/LOAD/DBLOAD

No informix há várias maneiras de exportar/importar dados. E com a maioria deles é muito facil trabalhar.

O modo mais simples e básico é utilizar os comandos UNLOAD / LOAD / dbload.

Como carregar através do HPL um arquivo em que o delimitador seja diferente de "|" , por exemplo "@"?

Exemplo prático

  1. $ onpladm create job TEST1 -d tst.unl -D dbTEST -t table_test1 -fl -zD
  2. $ onpladm list format
    Exibe os formatos, devera existir um chamado TEST1.

Recomendações para carga de dados

  • Sempre que possível, trabalhe com RAW devices, o I/O fica bem mais rápido , porém no linux para isso é necessário ter kernel >2.6
  • Uma alternativa ao RAW device é trabalhar com DIRECT_IO.
  • Se estiver em ambiente HP-UX e esteja utilizando RAW devices, tenha certeza de ter a variavel KAIOON=1, caso contrário o KAIO não será utilizado.
  • Se estiver trabalhando com a versão 11.50 x

Parâmetros de configuração do HPL

HPL - High Performance Load