20. DOAG Anwenderkonferenz, Nürnberg 2007 1
Oracle vs. Teradata
Zwei Datenbankarchitekturen im Vergleich
Andreas Schmidt
20. DOAG Anwenderkonferenz, Nürnberg 2007 2
Disclaimer
Trotz sorgfältiger Bearbeitung kann keine Gewährleistung für Vollständigkeit, Korrektheit
und Aktualität übernommen werden.
20. DOAG Anwenderkonferenz, Nürnberg 2007 3
Motivation
• Lösungen im Bereich großer Datenbanken
• Datawarehouses (DWH)
• Koexistenzen bei Kunden mit großem Datenvolumen:– Oracle für operatives System, Online
Transaction Processing (OLTP)
– Teradata mit einem separaten DWH
• Konkurrenzsituation
20. DOAG Anwenderkonferenz, Nürnberg 2007 4
Vorausschau
• wesentliche Unterschiede zwischen den beiden Datenbankarchitekturen
• Fokus liegt auf den Ansätzen, mit denen gerade unter dem Aspekt Performance große Datenmengen verarbeitet werden können
• Die Form der Datenspeicherung, Zugriffstechniken, Implementierung von Parallelität und Ausfallsicherheit, SQL Derivate und einige weitere Aspekte werden kurz dargestellt, insofern dies in einem Zeitrahmen von 45 Minuten möglich ist.
• Es handelt sich um einen technisch orientieren Vortrag, dessen Inhalt auch für Entscheidungsträger interessant sein kann.
• Nicht behandelt werden finanzielle oder lizenzrechtliche Aspekte.
20. DOAG Anwenderkonferenz, Nürnberg 2007 5
Einleitung (1)
• Definition: “Ein Datenbanksystem (DBS) ist ein System zur elektronischen Datenverwaltung. Die wesentliche Aufgabe eines DBS ist es, große Datenmengen effizient, widerspruchsfrei und dauerhaft zu speichern und benötigte Teilmengen in unterschiedlichen, bedarfsgerechtenDarstellungsformen für Benutzer und Anwendungsprogramme bereitzustellen.” [Wikipedia]
• Häufig wird dann auch die Software alsDatenbankmanagementsystem (DBMS) bezeichnet und die die verwalteten Daten als Datenbank (DB).
20. DOAG Anwenderkonferenz, Nürnberg 2007 6
Einleitung (2)
• Oracle, Teradata relationales Datenmodell bei Oracle und Teradata,
• Oracle Schritte objekt-relationales Datenbanksystem
• beides bekannterweise kommerzielle Produkte
• keine Lizenz- resp. Kostenthemen im Vortrag
• historische Betrachtung von Oracle wird hier aus Platz-und Zeitgründen verzichtet und dürfte auch im Rahmen der DOAG den Teilnehmern bekannt sein
• Entwicklung Teradata von einer „reinen Datenbankmaschine“ zur „geöffneten Unix Variante“
20. DOAG Anwenderkonferenz, Nürnberg 2007 7
Ausrichtung eines Datenbanksystemes
• KlassischeUnterscheidung zwischen– Online Transaction Processing, OLTP: viele kleine Anfragen
– Online Analytical Processing, OLAP: lang andauernde Auswertungen
• Nacheinanderbetrieb: Tagsüber OLTP, nachts OLAP
• häufig anzutreffende Assoziation:– Oracle = OLTP
– Teradata = OLAP
• Ermittlung von Kennziffern schwierig im Mischbetrieb
• Was ist der Unterschied zwischen OLAP und Reporting ?
• Data Mining im DWH
20. DOAG Anwenderkonferenz, Nürnberg 2007 8
Historie Teradata (Kurzfassung)
• Die Teradata Corporation wurde bereits im Jahre 1979 in Los Angeles gegründet und setzte sich massive Parallelverarbeitung zum Ziel. Auf eigener Hardware und einem eigenen Protokoll YNET wurde die ersten Datenbankcomputer (DBC) in den 80er Jahren verkauft. Das interne Betriebssystem TOS (Teradata Operating System) war 16bit-tigund lief auf Intel 286 bis 486er Prozessoren.
• Seit 1989 waren Teradata und NCR Partner bei der Entwicklung vonDBCs. Im Jahr 1991 wurde NRC von AT&T übernommen und 1992 wurde Teradata in NCR eingegliedert. Später wurde 1996 NCR Corp. inklusive Teradata wieder abgespalten.
• Für den Herbst 2007 soll Teradata eine eigenständige Einheit werden, was zu den üblichen Diskussionen und Spekulationen im Markt führt.
20. DOAG Anwenderkonferenz, Nürnberg 2007 9
Historie Teradata
• Die vermutlich größten Änderungen erfuhr das DBMS, als Mitte der 90er Jahre von der reinen Datenbankmaschine auf das NCR eigene Unix Derivat MP-RAS portiert wurde. Die Gründe für diesen Schritt waren sicherlich vielfältiger Natur, zumal man die Entwicklung und Pflege eines eigenen Betriebssytemes vermeiden wollte.
• Hierbei wurde mit den Parallel Database Extensions (PDE) der UnixKernel erweitert um notwendige Funktionen für die Portierung auf diese Plattform. Ende der 90er Jahren wurde diese Software auchrestrukturiert, um eine Portierung auf andere Betriebssysteme zu erleichtern, wobei man auch die Microsoft Linie anbieten wollte.
20. DOAG Anwenderkonferenz, Nürnberg 2007 10
Historie Teradata
• 1979–Gründung Teradata Corp in Los Angeles, California
• 1982–Patent YNET Technologie
• 1984–erster database computer DBC/1012–Wells FargoBank of California
• 1987–öffentliche AG
• 1989–Teradata und NCR Partner
• 1991–NCR Corporation übernommen von AT&T
• 1992–Teradata in NCR eingegliedert
• 1996–AT&T gliedert NCR Corp. mit Teradata Produkten aus; Teradata Version2
20. DOAG Anwenderkonferenz, Nürnberg 2007 11
Historie Teradata (2)
• 1997–Teradata Datenbank DWH Marktführer
• 2000–100+ Terabyte Systeme in Produktion
• 2002–Teradata V2R5
• 12/2002; PPI, Rollen und Profile, Kompression, etc.
• 2003–Teradata V2R5.1
• 12/2003; UDFs, BLOBs, CLOBs, etc.
• 2006–Teradata V2R6.2; BYNET V3 mit NCR 5450E/5450H
• 2007-eigenständige Firma
20. DOAG Anwenderkonferenz, Nürnberg 2007 12
unterstützte Plattformen
• Oracle: AIX, hp-ux, z/OS, zSeries Based Linux, Linux, MS Windows, Solaris et al.
• Teradata: NCR MP-RAS, MS Windows 2000, MS Windows Server 2003, SUSE Linux SLES 64bit– keine kostenlose Mini-Version
– nur Windows Demo Version
• allgemeine Ausführungen, sonst Oracle10gR2 bzw. Teradata V2R6.1
20. DOAG Anwenderkonferenz, Nürnberg 2007 13
Systemarchitekturen von Oracle und Teradata
• des Pudels Kern: unterschiedliche Schichten Datenbank, Betriebssystem und Disk Arrays
und deren Verwaltung untereinander
• Unterstützung von Filesystemen
• grundlegende Begriffe wie AMP, vproc und PE
20. DOAG Anwenderkonferenz, Nürnberg 2007 14
Filesystem(e)
• gemeint sind die Container für die Daten (und nicht Programme etc.)
• Oracle:– Raw Devices, diverse OS Filesysteme (wie
NTFS, ext2, ext3, reiserfs, ufs, vxfs, NFS!), OCFS, ASM
– Zugriffsarten versionsabhängig (Asynch I/O, Direct I/O)
• Teradata: eigenes Filesystem auf Volumes, basta!
20. DOAG Anwenderkonferenz, Nürnberg 2007 15
Oracles Systemarchitektur
• entnommen Oracle Doku 10g Concepts
20. DOAG Anwenderkonferenz, Nürnberg 2007 16
Formen des Zusammenklebens
• Einzelne Instanzen können u.a. durch den Log-Recovery-Mechanismus und DB Links zusammengebaut werden zu:– Cold Clone
– Hot Clone
– Standby
– Distributed
– Replication
– AQ
– Data Guard
– RAC
20. DOAG Anwenderkonferenz, Nürnberg 2007 17
verteilte Datenbanken
• Teradata kennt keine Database Links!
• kein Trend zu eigenen Datenbanken, hierarchische Strukturen innerhalb der Datenbank verbessern Projektintegration
• 3rd Party: GoldenGate Replication Products (gemäßDoku)
DB2 SQL/MP
Enscribe SQL/MX
Microsoft SQL Server Sybase
MySQL Teradata
Oracle alle ODBC-kompatible DBMS
20. DOAG Anwenderkonferenz, Nürnberg 2007 18
RAC
• Skalierbarkeit und Hochverfügbarkeit
• historisch gewachsen
• „shared everything architecture“ [Oracle RAC 10g, Technical White Paper]
• Oracle Clusterware: Kommunikationsinterface zwischen den Knoten
• früher: Austausch via Datenbank, false pinging → Performanceprobleme
20. DOAG Anwenderkonferenz, Nürnberg 2007 19
Teradata SW Schichten
Message Passing Layer
PDE BYNET
AMPs
vdisks
Parser Engine
20. DOAG Anwenderkonferenz, Nürnberg 2007 20
AMP
• Access Module Processor (AMP) verantwortlich für einen Teil der Datenbank
• ein AMP kontrolliert einen Teil einer Tabelle
• AMPs zuständig für die „physikalische Arbeit“ wie Erzeugung answer
set inklusive Sortieren, Aggregation, Formatierung und Konversionen
• bei Bedarf Verteilung einer Kopie an andere AMPs
• Sperren von Datenbanken und Tabellen
• CREATE, MODIFY, DROP, SELECT, INSERT, UPDATE, DELETE Records
• Accounting Statistiken
• Dispatcher verteilt Aufgaben an die AMPs
• Ergebnisse an Dispatcher
20. DOAG Anwenderkonferenz, Nürnberg 2007 21
AMP
• „Shared Nothing“ Architektur
• Jeder AMP (Access Module Processor) hat seinen eigenen Memory und ist verantwortlich für einen Plattenbereich
• Kommunikation der AMPs erfolgt anhand des BYNET
• bis zu 80 Tasks parallel
20. DOAG Anwenderkonferenz, Nürnberg 2007 22
Cluster und Cliques
• Menge von Knoten, die Zugriff auf eine Menge von Disk Arrays teilen
• Jeder Knoten kann auf jede VDISK zugreifen
• Schutz vor Ausfall eines Knotens
• Fällt ein Knoten aus, übernehmen die anderen Knoten (vproc Migration)
• Large Cliques
• Hot Standby Node
20. DOAG Anwenderkonferenz, Nürnberg 2007 23
Disk Arrays
• RAID Technologie– RAID 0: Striping (wird bei Teradata i.a. nicht
empfohlen)
– RAID 1: Spiegelung Engenio (LSI Logic) + EMC
– RAID 5: Parity Bits
20. DOAG Anwenderkonferenz, Nürnberg 2007 24
Fallback Ebenen
• Protection auf Systemebene (low level)– Disk Arrays
– Cliques und vproc Migration
• Protection auf DB Ebene– Fallback Table
– Transient Journal
– Down AMP Recovery Journal
– Permanent Journal
– ARC
– NetVault und NetBackup
20. DOAG Anwenderkonferenz, Nürnberg 2007 25
Fallback Table
• Tabelle ist intern doppelt vorhanden
• Blöcke werden neben dem Primary AMP noch auf dem Secondary AMP gespeichert
• Zusätzlicher Sicherheitslevel oberhalb RAID
• Übernahme bei Ausfall eines AMP
• Nachteil: doppeltes I/O, doppelter Platzbedarf
• Fallback Clusters
20. DOAG Anwenderkonferenz, Nürnberg 2007 26
Journaling
• Journaling bei Teradata: Transient undPersistent Journal
• Einstellung auf Ebene Datenbank/Tabelle
• steuert Umfang und Art der RecoveryObjekte
20. DOAG Anwenderkonferenz, Nürnberg 2007 27
Recovery Journal
• AMP down → Aktivierung Recovery Journal (transparent)
• im Log werden Row Ids veränderter Sätze festgehalten
• AMP wieder verfügbar → Abarbeitung der notwendigen Operationen
• Recovery Journal entfernen
20. DOAG Anwenderkonferenz, Nürnberg 2007 28
Transient Journal
• Transient Journal zuständig für Integrität der Transaktionen
• speichert nur „Before Images“
• für automatischen Rollback bei Fehlern in Transaktionen
• bei ROLLBACK werden die Before Images wieder in die Tabellen eingespielt
• Before Images werden anschließend gelöscht
20. DOAG Anwenderkonferenz, Nürnberg 2007 29
Permanent Journal
• Optionales benutzerdefiniertes, systemverwaltetes Logging zwecks Recovery zu einem bestimmten Zeitpunkt
• Recovery bei Hardware- oder Softwarefehlern
• wird spezifiziert für– Datenbank
– einzelne Tabellen
• beide Typen möglich– Before Images → Rollback
– After Images → Rollforward
• reduziert Notwendigkeit von Full Table Backups
• Weg zum Recovery von NO FALLBACK Tabellen
• zusätzlicher Plattenplatz erforderlich
• Archive und Recovery Usereingriff erforderlich
20. DOAG Anwenderkonferenz, Nürnberg 2007 30
Archivierung und Recovery
• ARC: Archive/Recovery Utility– läuft unter IBM, Unix und Wndows 2000
– archiviert und restored Tabellen
– kopiert Daten zu/von Archive Medien
– Angabe eines Checkpoints
• Open Teradata Backup– NetVault von BakBone Software
– NetBackup von VERITAS (eingeschränkter Support)
– Windows Front Ends zu ARC
– Skripterstellung
– Job Scheduling und Bandverarbeitung
20. DOAG Anwenderkonferenz, Nürnberg 2007 31
Teradata File System Überblick
• 1 Sektor = 512 Bytes
• 1 Cylinder = 3872 Sektoren ≈ 2 MB
• dreistufiger Datenzugriff beim Adressieren:– Master Index: enthält einen Eintrag für
allokierten Cylinder
– Cylinder Index: enthält Liste der Datenblöcke und freien Sektoren
– Data Block: enthält eine oder mehre Rows, immer komplett
20. DOAG Anwenderkonferenz, Nürnberg 2007 32
Blöcke & Co.
• Teradata hat konsequent variable Blockgröße (-127.5 kB)
• Blöcke gesplittet, zusammengefaßt oder in unterschiedlichen Stufen automatisch reorganisiert bei Bedarf (<0 OLTP)
• INSERT, UPDATE: Split, falls maximale Blocksize erreicht:– falls row oversized --> drei Blöcke
– sonst zwei
20. DOAG Anwenderkonferenz, Nürnberg 2007 33
Blöcke
• >0: keine Chained Rows
• freie Blöcke werden gesammelt und wenn möglich, zusammengeführt
• Cylinder Full: kein hinreichend großer Block in der Freiliste– Defragmentation: noch genügend Platz im Cylinder insgesamt;
Datenblöcke werden an den Anfang des Cylinders, geschoben.
– Cylinder Migrate: bis zu 10 Blöcke werden zu einem logisch benachbarten Cylinder verschoben
– Cylinder Split: freier Cylinder wird allokiert und bis zu 20 Blöcken werden dahin verschoben
– Mini-Cylpack: Blöcke werden auf logisch vorhergende Cylinder verschoben, bis ein Cylinder leer ist
20. DOAG Anwenderkonferenz, Nürnberg 2007 34
Datentypen (Built in)
Teradata Oracle
BYTEINTSMALLINTINTEGER NUMBERDATE inkl. ZeitTIMETIMESTAMP TIMESTAMPINTERVAL YEAR, ... INTERVAL YEAR, ...- BINARY_FLOATFLOAT BINARY_DOUBLEDECIMAL(n,m)CHAR(n) - 64000 - 2000
VARCHAR(n) - 64000 - 4000
CLOB – 2GB - 4 GBBLOB – 2 GB LONG, -4 GBGRAPHIC(n) -32000VARGRAPHIC(n) -32000
20. DOAG Anwenderkonferenz, Nürnberg 2007 35
CHAR / DATE Spaltenattribute
• auf Spalten- und damit Serverebene (und nicht auf Client-/ oder Sessionebene!)– Zeichensatz (Länge logisch definiert!)
– [NOT] CASESENSITIV
– UPPERCASE
– Format Phrase für Datumsfelder
20. DOAG Anwenderkonferenz, Nürnberg 2007 36
Objekte in der Datenbank
• typische Objekte: Tabellen, Indizes, Views, Materialized Views, Stored Procedures, Trigger, UDF
• Sequence Generator vs. Identity Column
• Teradata: „Datenbanken“ + User– Unterschied: Password
– hierarchische Beziehung
– Baumstruktur
20. DOAG Anwenderkonferenz, Nürnberg 2007 37
Hierarchie von Datenbanken
User DBC
User SYSDBA
DB1 UserXDB2
UserA UserB UserC
20. DOAG Anwenderkonferenz, Nürnberg 2007 38
SQL & Co.
• beide RDBMS unterstützen SQL als Abfragesprache
• orientieren sich an den Standards SQL-92 und SQL:2003
• Abweichungen und Erweiterungen von den jeweiligen Standards
• CONNECT BY vs. Rekursive WITH Klausel
20. DOAG Anwenderkonferenz, Nürnberg 2007 39
Teradata Modus
• spezielles von Teradata implementiertes Transaktionsverhalten
• ANSI Modus ebenfalls möglich
• Teradata Modus bevorzugt in DWHs: BTET ANSI
Set table Multi Set Table
autocommit explizites commit
not case specific case specific
20. DOAG Anwenderkonferenz, Nürnberg 2007 40
Stored Procedures
• Voraussetzung immer bestimmte C Compiler bei Teradata
• Oracle: C Compiler oder interner Interpreter
• Externe Funktionen und Methoden können analog zu Oracle eingebunden werden
• mein Eindruck: Werden bei Teradata nicht so stark fokussiert wie bei Oracle
20. DOAG Anwenderkonferenz, Nürnberg 2007 41
Beispiel Teradata Stored Procedure
CREATE PROCEDURE NewProc (IN name CHAR(12),
IN num INTEGER,
IN dept INTEGER,
OUT dname CHAR(10)
INOUT p1 VARCHAR(30))
L1: BEGIN
DECLARE CONTINUE HANDLER FOR SQLSTATE value '23505'
L2: BEGIN
SET p1='Duplicate Row';
END L2;
L3: BEGIN
INSERT INTO Employee (EmpName, EmpNo, DeptNo)
VALUES (name, num, dept);
SELECT DeptName
INTO dname FROM Department
WHERE DeptNo = :dept;
IF SQLCODE <> 0 THEN LEAVE L3;
...
END L3;
END L1;
20. DOAG Anwenderkonferenz, Nürnberg 2007 42
Security, Roles
• Teradata:– Rollen greifen selbstverständlich auch bei
Views, Stored Procedures
– Verschachtelungstiefe gering
– Verschlüsselung und Authentifizierung kann aktiviert werden ohne kostenpflichtige Option
• Oracle: Encryption Spalte / Tablespace
20. DOAG Anwenderkonferenz, Nürnberg 2007 43
Storage und Administratives
• ein wesentlicher Unterschied: Teradata kennt keine Tablespaces!
• HOW TO STOP DEFRAGMENTING AND START LIVING: THE
DEFINITIVE WORD ON FRAGMENTATION [Metalink]
• Volume steht dem System zur Verfügung und kann Datenbanken und Usern zugeordnet werden
• drei Kategorien von Plattenplatz:– Permanent Space
– Spool Space
– Temporary Space
20. DOAG Anwenderkonferenz, Nürnberg 2007 44
Perm Space
• Perm Space nötig für Tabellen und Indizes sowie Stored Procedures
• Views, Macros, and Triggers benötigen keinen Perm Space
• Nullsummenspiel
• kann dynamisch verändert werden
• Limit / AMP
20. DOAG Anwenderkonferenz, Nürnberg 2007 45
Spool Space
• Temporär für Sessions benötigt, vergleichbar mit TEMPORARY Tablespaces in Oracle
• Output von Queries
• Volatile Tables
• kann dynamisch verändert werden
• Limit / Amp
• kritische Größe im DBA und SQL Statements wg. Shared Nothing Architektur
20. DOAG Anwenderkonferenz, Nürnberg 2007 46
Temporary Space
• nur für Global Temporary Tables
• kann dynamisch verändert werden
• Limit / Amp
• Analogie zu Oracle: Temporäre Tablespaces ?
20. DOAG Anwenderkonferenz, Nürnberg 2007 47
Primary Index
• zentrale Bedeutung
• steuert die Verteilung über die Platten und den Zugriff
• wird beim Erzeugen einer Tabelle festgelegt
• kann nicht mehr nachträglich verändert werden
• u.U. Vorabanalysen sinnvoll
• Dictionary View DBC.TableSize[x]
20. DOAG Anwenderkonferenz, Nürnberg 2007 48
Ermittlung Verteilung via SQL
SELECT
HASHAMP(HASHBUCKET(HASHROW
(Customer_number))) AS "AMP#",
COUNT(*) FROM Customer
GROUP BY 1
ORDER BY 1;
20. DOAG Anwenderkonferenz, Nürnberg 2007 49
Primary Index
Index Erläuterung Oracle
UPI Unique Primary Index -
NUPI Non Unique Primary Index -
USI Unique Secondary Index x
NUSI Non Unique Secondary Index x
• Index kann eine oder mehrere Spalten umfassen
• Besonderheiten:– alle Bestandteile müssen bekannt sein!
– keine Ordnung (ausgenommen SI ordered)
20. DOAG Anwenderkonferenz, Nürnberg 2007 50
Primary Index und Hashing
• Hashing-Verfahren zieht sich konsequent durch die Teradata Architektur
• potenzieller Stolpersteine für Newcomer
• Sekundärindexe möglich:– Unique
– Non-Unique
– Sorted
• Table Scans
20. DOAG Anwenderkonferenz, Nürnberg 2007 51
Vergleich mit Oracles Indizes
• Oracle verwendet durchgängig B-Bäume als Indexstruktur– vorteilig: flexibel, Ordnungsrelation
– nachteilig: Zugriffstiefe kann variieren, Reorganisation erforderlich
• funktionsbasierte Indexe bei Oracle
• Partitionierung bei beiden möglich
• Oracle: local und global partitioniert
• ferner Bitmap-Indexes
20. DOAG Anwenderkonferenz, Nürnberg 2007 52
Partitionierung von Tabellen
• Partitionierung wurde eingeführt, um effizienter auf große Datenmenge zugreifen zu können
• Partition Ranges anstelle von Full Table Scans oder eines Secondary Index Overheads
• Rolling Windows
• häufig Zeitgrenzen (Monate, Wochen etc.)
• schnelles Löschen ganzer Partitionen
20. DOAG Anwenderkonferenz, Nürnberg 2007 53
Oracle Partitionierung
• Oracle unterstützt die folgenden Möglichkeiten zur Partitionierung:– Range Partitioning
– List Partitioning
– Hash Partitioning
– Composite Partitioning
• statische Zuordnung der Partitionen
• ggf. auch statische Zuordnung zu Tablespaces
• Zuordnung kann in der Praxis durch PL/SQL Routinen realisiert werden
• Unterscheidung zwischen Local und Global Partitioned Indexes
20. DOAG Anwenderkonferenz, Nürnberg 2007 54
Partitioned Primary Index (PPI)
• dynamische Partitionierung bei Teradata: Ordnung der Rows pro AMP
• max. 65535 Partitionen pro AMP
• nur bei BASE Tables
• auch bei VOLATILE und GLOBAL TEMPORARY Tables ab V2R6.1
• typischerweise mit– CASE_N
– RANGE_N
• Angabe von– NO CASE, NO RANGE, UNKNOWN
20. DOAG Anwenderkonferenz, Nürnberg 2007 55
Beispiel SQL
CREATE TABLE Sales_History
(store_id INTEGER NOT NULL,
item_id INTEGER NOT NULL,
sales_date DATE FORMAT 'YYYY-MM-DD',
total_revenue DECIMAL(9,2),
total_sold INTEGER,
note VARCHAR(256) )
PRIMARY INDEX (store_id, item_id)
PARTITION BY RANGE_N (
sales_date BETWEEN
DATE '2001-01-01‘ AND DATE '2010-12-31'
EACH INTERVAL '1' MONTH );
20. DOAG Anwenderkonferenz, Nürnberg 2007 56
Materialized Views & Co.
• Snapshots oder im Teradata Jargon Indexe (Join, aggregiert, Hash)
• redundante Datenspeicherung beschleunigen bestimmte Leseoperationen
• Nachteil: erhöhter Platzbedarf
• nur bei Oracle: Database Links
• Teradata kennt nur synchronen Modus: interner Refresh, keine periodischen Vorgänge
20. DOAG Anwenderkonferenz, Nürnberg 2007 57
weiter zu Materialized Views
• Typen von Materialized Views (Oracle DWH Guide)– Materialized Views mit Aggregaten
– Materialized Views nur mit Joins
– Nested Materialized Views
• Join Indexe:– Single-Table Join Index
– Multi-Table Join Index
– Aggregate Join Index (AJI)
• Hash Indexes
20. DOAG Anwenderkonferenz, Nürnberg 2007 58
Utilities und Tools (1)
• diverse Load- und Unload-Utilities zusammen mit der Teradata Datenbank .
• Windows GUI Tools bei Teradata ODBC orientiert
• Oracle:– SQL*Plus
– Data Pump Export
– Data Pump Import
– SQL*Loader
– Export
– Import
20. DOAG Anwenderkonferenz, Nürnberg 2007 59
Utilities und Tools (2)
• Teradata:
– BTEQ
– Fast Export
– Fast Load
– Multi Load
– Parallel Data Pump
20. DOAG Anwenderkonferenz, Nürnberg 2007 60
Quellen
• [Oracle 10gR2 Documentation]
• [Teradata V2R6.1 Documentation]
• [John Catozzi, Sorana Rabinovic: OperatingSystem Extensions for the Teradata Parallel VLDB. Proceedings of the 27th VLDBConference, 2001]