Differenz zwischen Oracle und Teradata

Oracle-Datenbank

Oracle und Teradata sind beide Relationale Datenbankverwaltungssysteme (RDBMS) , jedoch implementiert Oracle ein Objektrelationales Datenbankverwaltungssystem (ORDBMS) . [i]

Das RDBMS wurde unter Verwendung des relationalen Modells [ii] eingeführt, das Beziehungen zwischen Tabellen unter Verwendung von Indizes, Primär- und Fremdschlüsseln aufrechterhält. Im Vergleich zum alten Datenbankverwaltungssystem (DBMS) können Daten schneller abgerufen und gespeichert werden.

Das objektorientierte Datenbankmodell von Oracle ähnelt zwar einer relationalen Datenbank, verwendet jedoch Objekte und Klassen, die im Datenbankschema und in der Abfragesprache unterstützt werden.

In den späten siebziger Jahren, als Oracle das erste kommerziell verfügbare RDBMS wurde, legte Teradata den Grundstein für das erste Data Warehouse. Seine Fähigkeiten machten es perfekt für Big Data (ein Begriff, der von Teradata geprägt wurde), Business Intelligence (BI) -Tools [iii] und das Internet der Dinge (IoT) [iv].

OLTP und OLAP

Relationale Datenbankverwaltungssysteme (RDBMS) können als Online-Transaktionsverarbeitung - OLTP und Online Analytical Processing - OLAP kategorisiert werden. [v]

OLTP ist transaktional und stellt Daten für Data Warehouses bereit. OLAP dient zur Analyse der Daten.

"A Data Warehouse ist eine Datenbank, die Daten enthält, die normalerweise den Geschäftsverlauf einer Organisation darstellen. Daten in einem Data Warehouse sind organisiert, um eine Analyse zu unterstützen, anstatt Echtzeittransaktionen wie in Online-Transaktionsverarbeitungssystemen (OLTP) zu verarbeiten.

Die OLAP -Technologie ermöglicht die effiziente Nutzung von Data Warehouses für die Online-Analyse und bietet schnelle Antworten auf iterative komplexe analytische Abfragen . " [vi]

Obwohl Teradata auf OLAP und Oracle auf OLTP ausgerichtet ist, kann Oracle sowohl OLTP- als auch OLAP-Datenbanken auf derselben Plattform ausführen, die Teradata nicht unterstützt. Die Leistung bietet Oracle in den meisten Szenarien mit gemischten Arbeitslasten einen Vorteil gegenüber Teradata.

Transaktionen umfassen eine oder mehrere SQL-Anweisungen, die in einer Datenbank ausgeführt werden, um Aufgaben auszuführen und gleichzeitig die Datenintegrität beizubehalten. Transaktionen sind voneinander abhängig, um Daten zu verwalten und zu verarbeiten, die aus einer Datenbank hinzugefügt oder gelöscht werden.

Oracle ist aufgrund seiner architektonischen Flexibilität (mit einem Objekt-RDBMS) für die Transaktionsverarbeitung maßgeschneidert, während Teradatas OLAP für das Zerschneiden und Zerlegen von Daten (OLTPs Datenhistorie) zur Analyse geeignet ist, ohne Daten verschieben oder restrukturieren zu müssen.

Oracle wird hauptsächlich als Online-Backend-Anwendung verwendet, die Einfügungen, Aktualisierungen und Löschungen während der Transaktion verwaltet, während Teradata Data Warehousing ist, das große Daten für Analysen verwaltet und keine Echtzeittransaktionen durchführt.

Teradata ist eine gute Kombination aus Hardware und Software und stellt eine Top-End-Datenbankanwendung für Unternehmen dar. Oracle hat 2008 jedoch seinen OLAP Exadata Server eingeführt. Es war Oracles Antwort auf eine vollständige Datenbankanwendung.

Beide erfordern eine erhebliche Investition und eignen sich eher für sehr große Datenbanken, die eine hohe Leistung bei komplexen Abfragen erfordern.

Nichts oder alles?

Teradata ist Shared Nothing (SN) Architektur während Oracle Shared Everything ist.

Der Begriff shared nothing Architektur bezieht sich auf ein Multiprozessor-Datenbankverwaltungssystem, bei dem Speicher und Plattenspeicher nicht gemeinsam von den Prozessoren genutzt werden. [vii] Die Netzwerkbandbreite wird für die Datenübertragung genutzt.
Bei Teradata werden die Daten auf Servern gespeichert und jeder berechnet seinen eigenen Teil. Die Daten werden partitioniert und auf einer Reihe von Servern gespeichert, und jeder Server ist für seine Daten verantwortlich. Beispiele für High-End-Plattformen mit derselben Architektur sind Google, Amazon und Facebook.

Da jedoch die Shared-All-Architektur von Oracle ist, sind alle Daten auf allen Servern zugänglich, und Zugriffsebenen können nach Bedarf auf jeden Teil der Daten angewendet werden. Der potenzielle Nachteil besteht in der Erhöhung des Aufwands für die Verwaltung des Datenzugriffs und könnte die Verwaltung des Systemmanagements komplexer machen.

Die Architektur von Oracle bedeutet effektiv, dass jede Maschine auf beliebige Daten zugreifen kann. Dies ist der grundlegende Unterschied zwischen Teradata, wodurch sich Teradata ideal für Data Warehousing eignet und Oracle besser für OTLP geeignet ist.

Beachten Sie, dass Oracle Exadata zwar einen hybriden Ansatz der beiden Architekturen verwendet, ein Exadata-System jedoch nicht ohne Oracle verwendet werden kann. Exadata ist eine Add-On-Speicher-Engine und keine Überarbeitung der Oracle-Datenbank-Engine.

Skalierbarkeit

Die Skalierbarkeit umfasst mehrere Aspekte einer IT-Infrastruktur, z. B. den Umgang mit erhöhten Daten- und Transaktionsvolumina sowie die Zunahme mehrdimensionaler Daten, Anzahl der Benutzer, Workload-Management, Abfragekomplexität und -volumen usw. > Teradata ist

linear skalierbar [viii] was bedeutet, dass die Datenbankkapazität durch Hinzufügen weiterer Knoten zur Infrastruktur erhöht werden kann. Wenn das Datenvolumen zunimmt, wird die Leistung nicht beeinträchtigt. Das System ist für mehrdimensionale Skalierbarkeit ausgelegt und bietet robustere Modelle für die Skalierung und Skalierung als Oracle. Obwohl Oracle über eine gute Skalierbarkeit verfügt, sind bei dem Speichersubsystem Engpässe bekannt, die eine der besten Datenverarbeitungsgeschwindigkeiten aufweisen, jedoch nur bis zu einer bestimmten Grenze. Wenn beispielsweise die meisten Abfragen bekannt sind und die verwendeten Daten weniger als 600 TB betragen, könnte Oracle geeignet sein. Wenn die Daten jedoch darüber hinaus steigen sollen, ist Teradata die bessere Wahl.

Parallelität

Teradata hat unbedingte Parallelität [ix], während Oracle Bedingt hat. Es bietet Teradata einen Vorteil mit OLAP, da die Leistung außergewöhnlich ist, um eine einzelne Antwort schneller als ein nicht paralleles System zu erreichen.Parallelität verwendet mehrere Prozessoren, die zusammenarbeiten, um eine Aufgabe schnell zu erledigen.

Um eine Analogie der Funktionsweise von Parallelismus zu verwenden, denken Sie an eine Warteschlange in einem geschäftigen Ladengeschäft, bei der sich eine Warteschlange verzweigt, um Warteschlangen für jede Kasse zu trennen. Die Linie bewegt sich auf diese Weise schneller als eine Warteschlange und eine Kasse. Je effizienter das parallele Laden ist, desto besser ist die Leistung des Systems.

Teradata hat in seinem gesamten System Parallelität, einschließlich der Architektur, der komplexen Verarbeitung und des Datenladens. Die Abfrageoptimierung ist nicht erforderlich, um Anforderungen parallel zu verarbeiten, und Teradata ist im Gegensatz zu Oracle nicht von Beschränkungen des Spaltenbereichs oder einer begrenzten Datenmenge abhängig.

Feature-Vergleiche

Weitere erwähnenswerte Unterschiede sind:

Die grafische Benutzeroberfläche ist in Oracle weitaus ausgereifter und fortgeschrittener als in Teradata.

  • Oracle und Teradata unterstützen fast dieselben Programmiersprachen, mit Ausnahme von Visual Basic-Sprachen, in denen Oracle dies unterstützt, und Teradata nicht.
  • Unter Betriebssystemen läuft Oracle unter Unix, Linux, Windows, Mac OS X, z / OS, während Teradata nicht unter Mac OS X, z / OS läuft.
  • Teradata hat seine Komprimierung erheblich verbessert, obwohl es als Schritt hinter der Hybrid Columnar Compression [x] von Oracle Exadata angesehen wird.
  • Zusammenfassend

Oracle und Teradata sind in Produkt und Technologie zwar ausgereift, jedoch ist Oracle im Vergleich zu Teradata um ein Vielfaches größer.

Da Oracle häufiger als Teradata verwendet wird, verfügt es über eine Vielzahl von Tools, die es für Entwickler und Geschäftsanwender besser machen. Business-Benutzer-Wahrnehmungen betrachten Teradata als zu komplex oder reserviert für spezialisierte Experten. Daher ist es einfacher, einen erfahrenen Oracle-Benutzer oder -Entwickler zu finden, als einen Teradata-Benutzer zu finden.

Vergleichstabelle

Komponente

Teradata Oracle Architektur
· Shared Nothing · Relationales Modell

Knoten haben mehrere Parsing Engines und Datenbank-Engines namens Access Module Processors · Geteiltes Alles

· Objektrelationales Modell

· Shared Disk / lose gekoppelter Shared Memory

· DB-Architektur für Multiple-Node-Datenbanken

OLAP

Systemkonstruierte und notwendige Konfiguration nicht erforderlich.

Die Installation und Konfiguration von OLAP ist technisch und komplex. OLTP Nicht möglich.
System entworfen. Betriebssystem · Windows
· Linux · UNIX

· Windows

· Linux

· UNIX

· Mac OS X

· z / OS < Parallelität

Bedingungslos "Immer ein", von Anfang an konzipiert.

Bedingt und nicht vorhersagbar

Datenbanktabellen Tabellen, die in den Datenbanken und im Festplattenspeicher erstellt werden, werden von Teradata selbst verwaltet. Tabellen, die in Tablespaces
erstellt wurden, gehören zum Schema und verfügen über Parameter für die Speicherplatznutzung. Datenbankobjekte Cursor

Externe Routine

Funktion Prozedur

Trigger

Data Domain

Cursor

Externe Routine > · Funktion

· Prozedur

· Trigger

Indexnutzung

Herkömmlicherweise werden nicht viele Indizes verwendet, da sich die parallele Architektur auf Durchsatzanforderungen konzentriert.

Verlassen Sie sich auf Indizes, da OLTP-Workloads schnelle Zugriffspfade benötigen.

Schnittstelle

· SQL · SQL · GUI
Datentypen String CHAR

CLOB

VARCHAR
CHAR > CLOB VARCHAR

NCHAR

NVARCHAR

Binär

BYTE

VARBYTE

BFILE

LONGRAW

RAW Datum / Uhrzeit

· TIME

· DATUM

· TIMESTAMP

· DATUM

· TIMESTAMP Gesamtnutzerrangfolge (IT Central Station-Umfrage) [xi]

Third

Zuerst