© Thales IS GmbH 2002 Oracle's Data Warehousing Features 1 Thales Information Systems GmbH Im Team für Ihren Erfolg DOAG - Regionaltreffen Hannover Donnerstag,

Slides:



Advertisements
Ähnliche Präsentationen
Support.ebsco.com Lernprogramm zum Erstellen einer lokalen Sammlung.
Advertisements

Vorlesung Datenbank-programmierung
PL/SQL - Einführung. © Prof. T. Kudraß, HTWK Leipzig Vorteile Application Other DBMSs Application Oracle with PL/SQL SQL SQL SQL SQL SQLIF...THENSQLELSESQL.
Folien 2-5, 7-8 © Prof. Dr. Manfred Rössle (FH Aalen)
PL/SQL - Kurze Einführung -.
Objekt – Relationales – Modell Tomasz Makowski IN
System J – Compiler – Praktikum: Datenbanksystementwicklung Knut Stolze
MySQL.
Allgemeine Technologien II
Systemüberblick Beispiele: Microsoft Access Oracle Ingres Informix
FH-Hof SQLJ Richard Göbel. FH-Hof SQLJ - Idee Erweiterung von Java um SQL Die Verwendung von SQL-Anweisungen innerhalb einer Programmiersprache wird vereinfacht.
SQL als Abfragesprache
Datensicherheit in DBMS
IS: Datenbanken, © Till Hänisch 2000 CREATE TABLE Syntax: CREATE TABLE name ( coldef [, coldef] [, tableconstraints] ) coldef := name type [länge], [[NOT]NULL],
PL/SQL – Die prozedurale Erweiterungssprache Zu SQL
Oracle PL/SQL Server Pages (PSP). © Prof. T. Kudraß, HTWK Leipzig Grundidee: PSP – Internet-Seiten mit dynamischer Präsentation von Inhalten durch Einsatz.
Open Database Connectivity (ODBC). © Prof. T. Kudraß, HTWK Leipzig Open Database Connectivity (ODBC) Idee: – API für eine DBMS, das ein Call-Level-Interface.
PL/SQL - Programmierung von Programmeinheiten. © Prof. T. Kudraß, HTWK Leipzig Gespeicherte Prozeduren – Eine Prozedur ist ein benannter PL/SQL Block,
Text-Retrieval mit Oracle Vortrag von Andreas Mück & David Diestel.
Otto-von-Guericke-Universität Magdeburg Gamal Kassem 1 Tabellenzeile mit READ lesen READ TABLE itab INDEX idx READ TABLE itab WITH KEY comp1 = f1.... Compn.
Otto-von-Guericke-Universität MagdeburgGamal Kassem Übung 7 Reports mit Datenbankzugriff.
Oracle interMedia Image
JDBC -Java Database Connectivity-. 15./22. April 2004JDBC2 JDBC.... verbindet Java-Programme mit SQL-basierten Datenbanken.. liefert eine generische SQL-API.
Datenbanken 10: Einfügen, Ändern, Löschen
Einführung MySQL mit PHP
2.2 Definition eines Datenbankschemas (SQL-DDL)
SQL in Visual FoxPro. © 1999 TMN-Systemberatung GmbH SQL Historie n SQL - Structured Query Language n In den 70er Jahren von IBM entwickelt n 1986 zum.
objekt-relationale Datenbanken
Datenbankentwicklung IV-LK
SQL PHP und MySQL Referat von Katharina Stracke und Carina Berning
Betrieb von Datenbanken Marco Skulschus & Marcus Wiederstein Datenmanipulation Lehrbuch, Kapitel 4.
WS 2011/12 Datenbanksysteme Mi 15:15 – 16:45 R Vorlesung #9 Physische Datenorganisation.
WS 2013/14 Datenbanksysteme Do 17:00 – 18:30 R Vorlesung #7 SQL (Teil 4)
SS 2004 Datenbanken 4W Mi 13:30 – 15:00 G 2.30 Vorlesung #9 SQL (Teil 4)
WS 2009/10 Datenbanksysteme Fr 15:15 – 16:45 R Vorlesung #7 SQL (Teil 4)
Datenbanksysteme für hörer anderer Fachrichtungen
Copyright Oracle Corporation, All rights reserved. 6 Unteranfragen (Subqueries)
Vorlesung #10 Physische Datenorganisation
PL/SQL - Kurze Einführung April 2003Übung Data Warehousing: PL/SQL 2 PL/SQL.. ist eine Oracle-eigene, prozedurale Programmiersprache Sämtliche.
SQLite und XML in PHP 5.
ADAT©2004 Dipl. - Ing. Walter SabinSeite: 19 Version 1.0a Programme - Zusatzsoftware Oracle: –Forms –Reports –Designer –Jdeveloper –APEX (Application Express)
Structured Query Language
8 Erzeugen und Verwalten von Tabellen Ziele Kennenlernen der wichtigsten Datenbankobjekte Anlegen von Tabellen Datentypen zur Definition von Spalten.
Integritätsbedingungen (Constraints)
7 Verändern von Daten. 9-2 Ziele Beschreibe jeden DML Befehl Einfügen von Zeilen in eine Tabelle Ändern von Zeilen in einer Tabelle Löschen von Zeilen.
11 Verwaltung von Abhängigkeiten. Ziele Am Ende dieser Lektion verfügen Sie über die folgenden Kenntnisse: Überwachen prozeduraler Abhängigkeiten Effekte.
TypoScript.
WS 2013/14 Datenbanksysteme Do 17:00 – 18:30 R Vorlesung #8 SQL (Teil 5)
11 Zugriffskontrolle (Access Control) Ziele Privilegien Rollen GRANT und REVOKE Befehl Privilegien Rollen GRANT und REVOKE Befehl.
Einfache SQL-Befehle Schedule: Timing Topic 40 minutes Lecture
Datenbank für Skriptenverkauf
WS 2014/15 Datenbanksysteme Do 17:00 – 18:30 R Vorlesung #9 SQL Zusammenfassung.
Datenbanken abfragen mit SQL
Exotisches SQL Author: Sven Weller.
© 2003, Rudolf Jansen Einsatz der XML-Features der Oracle 9i DB zur Systemintegration Rudolf Jansen Freiberuflicher Entwickler und Autor
DOAG Regionaltreffen NRW 10. Juni 2003 TDS Deutschland AG & Co. oHG PIPELINED FUNCTIONS Autor: Karl-Otto Spiecker Vortrag: Bernd Löschner.
DB2 UDB im z/VSE Heinz Peter Maassen – Lattwein GmbH COURSE Tagung Bad Hersfeld 2008.
© CSP GmbH & Co. KG 2005 Einleitung HerausforderungenLösung Architektur Demonstration Langzeitarchivierung für Oracle Datenbanken Stefan Brandl, Dipl.-Inf.,
1 © Thales IS GmbH 2002 Thales Information Systems GmbH Im Team für Ihren Erfolg DOAG - Regionaltreffen Hannover Donnerstag, Oracle 9i XML Datenbank.
1DOAG Regionalmeeting bei DEICHMANN Juni 2004 Advanced Queuing Anwendung in der DEICHMANN Bestandsführung.
Making Global Knowledge Leaders Thomas Kemmann, PROMATIS AG Oracle eBusiness Suite Datenübernahme.
SQL Basics Schulung –
Standby Database Autor:
Sprachumfang von SQL Vier Kategorien DDL (Data Definition Language)
Vorlesung #4 Relationales Kalkül und SQL (Teil 1)
Abfragesprache SQL in ORACLE
Sichten.
Funktionen, GROUP BY, HAVING Views anlegen und verwenden
Indexierung Oracle: indexes Indexierung.
Oracle Statistiken im HORIZON-Umfeld
 Präsentation transkript:

© Thales IS GmbH 2002 Oracle's Data Warehousing Features 1 Thales Information Systems GmbH Im Team für Ihren Erfolg DOAG - Regionaltreffen Hannover Donnerstag, Oracle 9i Data Warehousing Features External Tables Forall- und Bulk-Collect Henrik Rünger Thales-IS

Oracle's Data Warehousing Features 2 © Thales IS GmbH 2002 Thales Information Systems GmbH Im Team für Ihren Erfolg Agenda EXTERNAL TABLES Was sind external Tables? Beispiele technischer Aufbau Einschränkungen beim Gebrauch Performance Hints Vergleich SQL*Loader und external Tables Ausblick

Oracle's Data Warehousing Features 3 © Thales IS GmbH 2002 Thales Information Systems GmbH Im Team für Ihren Erfolg Was sind external Tables? Pendant zum SQL*Loader Datei befindet sich physisch im Filesystem Aussehen z.B. CSV Dateien Die Dateien werden innerhalb der DB durch ein logisches Verzeichnis erkannt Tabellen können abgefragt und gejoined werden (auch parallel Benutzung mit SQL)

Oracle's Data Warehousing Features 4 © Thales IS GmbH 2002 Thales Information Systems GmbH Im Team für Ihren Erfolg Anwendungsgebiete Alternative zum konventionellen Datenladen > da Datenzugriff ohne langwierige Ladeprogramme > Änderung der Daten ohne Commit/Rollback abwarten zu müssen Data Warehouses > grosse Datenlieferungen > viele Schnittstellen

Oracle's Data Warehousing Features 5 © Thales IS GmbH 2002 Thales Information Systems GmbH Im Team für Ihren Erfolg Beispiele _traditionell

Oracle's Data Warehousing Features 6 © Thales IS GmbH 2002 Thales Information Systems GmbH Im Team für Ihren Erfolg Traditionelles Laden Verarbeitungstabellen Arbeitstabellen SQL*Loader Konfigurationen Ladescripte z.B. PL/SQL LOAD DATA INFILE sh_sales.dat APPEND INTO TABLE sales FIELDS TERMINATED BY "|" ( PROD_ID, CUST_ID, TIME_ID, CHANNEL_ID, PROMO_ID, QUANTITY_SOLD, AMOUNT_SOLD) $ sqlldr sh/sh control=sh_sales.ctl direct=true

Oracle's Data Warehousing Features 7 © Thales IS GmbH 2002 Thales Information Systems GmbH Im Team für Ihren Erfolg Beispiel _als external Table

Oracle's Data Warehousing Features 8 © Thales IS GmbH 2002 Thales Information Systems GmbH Im Team für Ihren Erfolg Laden als external Tabelle Flat-Files == Verarbeitungstabellen Datensatzdefinitionen werden auf Minimum reduziert Zwischenschritte bei der Verarbeitung entfallen Pflegeaufwand wird weitaus geringer CREATE TABLE sales_transactions_ext ( PROD_ID NUMBER(6), CUST_ID NUMBER, TIME_ID DATE, CHANNEL_ID CHAR(1), PROMO_ID NUMBER(6), QUANTITY_SOLD NUMBER(3), AMOUNT_SOLD NUMBER(10,2), UNIT_COST NUMBER(10,2), UNIT_PRICE NUMBER(10,2) ) ORGANIZATION external ( TYPE oracle_loader DEFAULT DIRECTORY data_file_dir ACCESS PARAMETERS ( RECORDS DELIMITED BY NEWLINE CHARACTERSET US7ASCII BADFILE log_file_dir:'sh_sales.bad_xt' LOGFILE log_file_dir:'sh_sales.log_xt' FIELDS TERMINATED BY "|" LDRTRIM ) location ( 'sh_sales.dat' ) )REJECT LIMIT UNLIMITED; INSERT /*+ APPEND */ INTO COSTS ( TIME_ID, PROD_ID, UNIT_COST, UNIT_PRICE ) SELECT TIME_ID, PROD_ID, SUM(UNIT_COST), SUM(UNIT_PRICE) FROM sales_transactions_ext GROUP BY time_id, prod_id;

Oracle's Data Warehousing Features 9 © Thales IS GmbH 2002 Thales Information Systems GmbH Im Team für Ihren Erfolg technischer Aufbau CREATE TABLE sales_transactions_ext ( PROD_ID NUMBER(6), CUST_ID NUMBER, TIME_ID DATE, CHANNEL_ID CHAR(1), PROMO_ID NUMBER(6), QUANTITY_SOLD NUMBER(3), AMOUNT_SOLD NUMBER(10,2), UNIT_COST NUMBER(10,2), UNIT_PRICE NUMBER(10,2) ) ORGANIZATION external ( TYPE oracle_loader DEFAULT DIRECTORY data_file_dir ACCESS PARAMETERS ( RECORDS DELIMITED BY NEWLINE CHARACTERSET US7ASCII BADFILE log_file_dir:'sh_sales.bad_xt' LOGFILE log_file_dir:'sh_sales.log_xt' FIELDS TERMINATED BY "|" LDRTRIM ) location ( 'sh_sales.dat' ) )REJECT LIMIT UNLIMITED;

Oracle's Data Warehousing Features 10 © Thales IS GmbH 2002 Thales Information Systems GmbH Im Team für Ihren Erfolg technischer Aufbau Zusätzlich lässt sich beim Insert 9i MERGE verwenden Unterschiede zwischen Definition und Daten erlaubt geklärt sein muss: > Datei Format der Quell-Datei > Datenformat innerhalb dieser Datei Unterschiede zwischen Definition und Daten werden über AccessDriver ausgeglichen versucht

Oracle's Data Warehousing Features 11 © Thales IS GmbH 2002 Thales Information Systems GmbH Im Team für Ihren Erfolg Einschränkungen beim Gebrauch Read-Only (kein DML) Column processing Indexe sind nicht möglich > Schnelligkeit durch Betriebssystem (RAID, caching) keine Constraints möglich

Oracle's Data Warehousing Features 12 © Thales IS GmbH 2002 Thales Information Systems GmbH Im Team für Ihren Erfolg Performance Hints vorgegebene Längen in Datensätzen werden schneller verarbeitet Joins und Unions sind möglich Datentyp-Konvertierung erfordert mehr Zeit Condition Clauses (WHEN,NULLIF,DEFAULTIF) vermindert Ausführungsgeschwindigkeit insert as select ist möglich  parallel load

Oracle's Data Warehousing Features 13 © Thales IS GmbH 2002 Thales Information Systems GmbH Im Team für Ihren Erfolg Vergleich SQL*Loader und external Tables Discard; Bad File für jedes DatenfileFür alle Datendateien zusammen nur jeweils eins  Achtung! Parallel Load Client NLS UmgebungServer NLS Umgebung 1/3/5 Sequence 1/2/3 laufende Rejected Auflistung ContinueIF ConcatenateWerden nicht unterstützt Graphic, Graphic external, VargraphicWerden nicht unterstützt Leistungsfähigkeit SQL*Loader Alle Register des Filesystems

Oracle's Data Warehousing Features 14 © Thales IS GmbH 2002 Thales Information Systems GmbH Im Team für Ihren Erfolg Ausblick Reduzierung von Stellen zur Anpassung Geschwindigkeitsvorteile beim Massendatenladen Vorteile des Filesystems  Zwischenschritt auf dem Weg zur XML-DB > Ablage von XML-Dateien in der DB möglich > Definition dynamischer als in external Table Definition

Oracle's Data Warehousing Features 15 © Thales IS GmbH 2002 Thales Information Systems GmbH Im Team für Ihren Erfolg Ende Teil 1 Ihre Fragen bitte

Oracle's Data Warehousing Features 16 © Thales IS GmbH 2002 Thales Information Systems GmbH Im Team für Ihren Erfolg Agenda FORALL- und BULK-Collect Einführung Begriffserklärung Beispiel Praxisbeispiel forall & bulk Bulk Binding Deklaration Ausblick auf 9i

Oracle's Data Warehousing Features 17 © Thales IS GmbH 2002 Thales Information Systems GmbH Im Team für Ihren Erfolg Einführung PL/SQL greift bei SQL Anweisungen auf SQL-Engine zu SQL-Engine liefert u.U. Daten zurück jede Konversation erzeugt einen Overhead 3 x

Oracle's Data Warehousing Features 18 © Thales IS GmbH 2002 Thales Information Systems GmbH Im Team für Ihren Erfolg Einführung (2) Zuweisen von Werten in PL/SQL Variablen in SQL Statements Binding einer ganzen Collection = Binding = Bulk Binding Durch Bulk Binding werden Kontext Switches minimiert 1 x

Oracle's Data Warehousing Features 19 © Thales IS GmbH 2002 Thales Information Systems GmbH Im Team für Ihren Erfolg Beispiel

Oracle's Data Warehousing Features 20 © Thales IS GmbH 2002 Thales Information Systems GmbH Im Team für Ihren Erfolg Praxisbeispiel forall & bulk BEGIN OPEN c_sammlung; FETCH c_sammlung BULK COLLECT INTO srec.nr,srec.bez; CLOSE c_sammlung; FORALL k IN 1.. srec.nr.COUNT insert into sammlung_forall (nr, bez) values (srec.nr(k),srec.bez(k)); COMMIT; END; declare TYPE numarray IS TABLE OF NUMBER; TYPE varchararray IS TABLE OF VARCHAR2 (2000); TYPE datearray IS TABLE OF DATE; TYPE sammlung_rec IS RECORD ( nr numarray,bez VARCHARARRAY); srec sammlung_rec; CURSOR c_sammlung IS select * from sammlung;

Oracle's Data Warehousing Features 21 © Thales IS GmbH 2002 Thales Information Systems GmbH Im Team für Ihren Erfolg Bulk Binding SQL Engine wird angewiesen, Daten zu sammeln, ehe sie an die PL/SQL Engine zurückgeliefert werden Ziel muss immer eine Collection sein Collection von Records ist nicht möglich stark in Kombination mit FORALL

Oracle's Data Warehousing Features 22 © Thales IS GmbH 2002 Thales Information Systems GmbH Im Team für Ihren Erfolg Deklaration DECLARE TYPE NumTab IS TABLE OF emp.empno%TYPE; TYPE NameTab IS TABLE OF emp.ename%TYPE; enums NumTab; names NameTab; BEGIN SELECT empno, ename BULK COLLECT INTO enums, names FROM emp;... END;

Oracle's Data Warehousing Features 23 © Thales IS GmbH 2002 Thales Information Systems GmbH Im Team für Ihren Erfolg Ausblick auf 9i bei forall schlägt nicht mehr das ganze Statement fehl sql%bulk_exceptions collection Multilevel Collection syntax native dynamic SQL ist möglich bulk-collect ist mit %ROWTYPE Collection möglich

Oracle's Data Warehousing Features 24 © Thales IS GmbH 2002 Thales Information Systems GmbH Im Team für Ihren Erfolg Ende Teil 2 Ihre Fragen bitte