IMPORT /EXPORT
EXAloader
Der EXAloader ist der Bulk-Loader von EXASolution. Die Dateiformate CSV (Comma-Separated Values) und FBV (FixBlock Values) sowie das Datenbanksystem Oracle werden nativ unterstützt.
EXAloader dient der Übertragung von Daten zwischen 2 Systemen und stellt kein komplexes Ladetool dar. Wenn möglich, werden die Daten parallel geladen, d.h. gleichzeitig über mehrere Verbindungen zwischen Datenquelle und -ziel.
Der EXAloader wird über SQL-Befehle IMPORT und EXPORT gesteuert, daher lässt er sich bequem in beliebige Werkzeuge integrieren, die über eine Standard oder eine native Schnittstelle an EXASolution angebunden sind.
Die IMPORT/EXPORT-Schnittstellen vereinen Flexibilität und Bedienkomfort:
- Steuerung über SQL-Befehle
- Volle Integration in das Transaktionskonzept der Datenbank
- Laden der Daten aus SELECT-Befehlen
- Definition des Insert-Statements
- Änderung der Quell- und Zielspalten
- Ladefortschritt wird in Systemtabellen angezeigt
Importieren von Daten in EXASolution
-
- IMPORT INTO <target> FROM <source>;
Daten werden immer in eine bereits existierende Tabelle <target> eingefügt. Sollte die Tabelle vorher geleert oder neu erstellt werden, soll dies mit Hilfe regulärer Befehle (TRUNCATE TABLE oder CREATE OR REPLACE TABLE) erledigt werden. Da alle diese Befehle dem Transaktionskonzept von EXASolution unterliegen, entstehen dabei keine Konflikte mit anderen Prozessen.
Als Quelle <source> kann eine Tabelle, eine View oder ein Ergebnis eines SELECT-Befehls in einem anderen DBMS (Oracle oder EXASolution) sowie eine Datei (CSV oder FBV) dienen.
-
- IMPORT INTO s1.t1(c1,c2)
- FROM CSV
- AT ‘ftp://srv‘ USER ‘usr‘ IDENTIFIED BY ‘pwd‘
- FILE ‘DATA.CSV‘(1,3 FORMAT=‘YYYYMMDD‘)
- ENCODING=‘Latin-1‘
- COLUMN SEPARATOR=‘;‘
- ROW SEPARATOR=‘CRLF‘
- SKIP=1;
Exportieren von Daten aus EXASolution
-
- EXPORT <source> INTO <target>;
Als Quelle <source> kann eine Tabelle, eine View oder ein SELECT-Befehl dienen, als Ziel - eine Tabelle in einem anderen RDBMS (Oracle oder EXASolution) oder eine Datei (CSV oder FBV).
Da für andere Datenbanken es nicht möglich ist, Transaktionssicherheit immer zu gewährleisten, werden mehrere Schreibmodi unterstützt:
- Append or Create (Standardeinstellung)
Daten werden in eine existierende Tabelle eingefügt. Falls eine entsprechende Tabelle nicht existiert, wird diese angelegt. - Truncate
Daten werden in eine existierende Tabelle eingefügt. Davor wird die Tabelle geleert. - Replace
Die Tabelle wird neu erstellt und mit den Daten gefüllt. Dies ist nützlich, wenn sich die Tabellendefinition geändert hat.
Es ist auch möglich ein CREATE-Statement anzugeben, um die Tabelle mit spezifischen Datentypen und Spaltennamen anzulegen.
-
- EXPORT
- (SELECT c1, c3 FROM t1 WHERE c2<CURRENT_DATE)
- INTO ORA AT oracle1
- STATEMENT 'insert into t values(:1,:2,sysdate)';
- EXPORT s1.t1
- INTO ORA AT oracle1
- TABLE t(c1,c2)
- CREATED BY 'create table t (c1 varchar2(20), c2 number)';
Verbindungen
Um Verbindungsinformationen zu kapsen und besser verwalten zu können, wurden CONNECTION-Objekte in der Datenbank eingeführt und in das Rechteverwaltungskonzept integriert.
-
- CREATE CONNECTION ftp1 TO ‘ftp://srv1‘ USER ‘usr1‘ IDENTIFIED BY ‘pwd‘;
















