Oracle-Datenbank
Oracle und Teradata sind beide Relationale Datenbankverwaltungssysteme (RDBMS), Oracle implementiert jedoch eine Objektrelationales Datenbankverwaltungssystem (ORDBMS).[ich]
Das RDBMS wurde mit dem relationalen Modell [ii] eingeführt, das Beziehungen zwischen Tabellen unter Verwendung von Indizes, Primär- und Fremdschlüsseln verwaltet. Es ist schneller zum Abrufen und Speichern von Daten im Vergleich zum alten Database Management System (DBMS)..
Obwohl es einer relationalen Datenbank ähnelt, verwendet das objektorientierte Datenbankmodell von Oracle 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. Dank seiner Fähigkeiten eignet es sich hervorragend für Big Data (ein von Teradata geprägter Begriff), Business Intelligence (BI) -Tools [iii] und das Internet der Dinge (IoT) [iv]..
Relational Database Management Systems (RDBMS) können als kategorisiert werden Online-Transaktionsverarbeitung - OLTP und Online Analytical Processing - OLAP.[v]
OLTP ist transaktionsfähig und stellt Daten für Data Warehouses bereit, und OLAP dient zur Analyse der Daten.
"EIN Data Warehouse ist eine Datenbank, die Daten enthält, die normalerweise den Geschäftsverlauf einer Organisation darstellen. Daten in einem Data Warehouse sind so organisiert, dass sie die Analyse unterstützen und nicht wie in Echtzeit Transaktionen verarbeiten Online-Transaktionsverarbeitungssysteme (OLTP).
OLAP Dank dieser Technologie können Data-Warehouses effektiv für die Online-Analyse verwendet werden, so dass auf komplexe analytische Abfragen schnell reagiert werden kann.”[vi]
Obwohl Teradata auf OLAP und Oracle für OLTP ausgerichtet ist, kann Oracle sowohl OLTP- als auch OLAP-Datenbanken auf derselben Plattform ausführen, die Teradata nicht unterstützt. Die Leistung verschafft Oracle in den meisten gemischten Workload-Szenarien einen Vorteil gegenüber Teradata.
Transaktionen umfassen eine oder mehrere SQL-Anweisungen, die in einer Datenbank ausgeführt werden, um Aufgaben auszuführen und dabei die Datenintegrität aufrechtzuerhalten. 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) maßgeschneidert für die Transaktionsverarbeitung, während Teradatas OLAP zum Aufteilen und Schneiden von Daten (OLTP-Datenprotokoll) für die Analyse geeignet ist, ohne Daten verschieben oder umstrukturieren zu müssen.
Oracle wird hauptsächlich als Online-Back-End-Anwendung verwendet, die Einfügungen, Aktualisierungen und Löschvorgänge während der Transaktion verwaltet, wohingegen Teradata verwendet wird ist Data Warehousing, das Big Data für Analysen verwaltet, und es gibt keine Echtzeittransaktionen.
Teradata ist eine gute Kombination aus Hardware und Software, die eine Top-Enterprise-Datenbank-Appliance herstellt. Oracle hat jedoch seinen OLAP-Exadata-Server im Jahr 2008 eingeführt. Es war die Antwort von Oracle auf eine vollständige Datenbank-Appliance.
Beide erfordern erhebliche Investitionen und eignen sich eher für sehr große Datenbanken, die bei komplexen Abfragen eine hohe Leistung erfordern.
Teradata ist Shared Nothing (SN) -Architektur während Oracle ist Alles geteilt.
Der Begriff nichts Architektur geteilt bezieht sich auf ein Multiprozessor-Datenbankverwaltungssystem, bei dem Speicher und Plattenspeicher nicht zwischen den Prozessoren gemeinsam genutzt werden. [vii] Die Netzwerkbandbreite wird für die Datenübertragung gemeinsam genutzt.
Bei Teradata werden die Daten auf Servern gespeichert und jeder berechnet seinen eigenen Teil. Die Daten werden auf mehreren Servern partitioniert und gespeichert, und jeder Server ist für seine Daten verantwortlich. Beispiele für High-End-Plattformen mit derselben Architektur sind Google, Amazon und Facebook.
Allerdings bei Oracle alles geteilt Architektur, Auf alle Daten kann auf alle Server zugegriffen werden, und Zugriffsebenen können bei Bedarf auf jeden Teil der Daten angewendet werden. Der potenzielle Nachteil besteht in der Erhöhung des Overhead für das Datenzugriffsmanagement und könnte die Verwaltung des Systemmanagements komplexer gestalten.
Die Architektur von Oracle bedeutet effektiv, dass jeder Computer auf alle Daten zugreifen kann. Dies ist der grundlegende Unterschied zwischen Teradata, wodurch Teradata ideal für Data Warehousing und Oracle für OTLP geeignet ist.
Obwohl Oracle Exadata einen hybriden Ansatz der beiden Architekturen implementiert hat, kann ein Exadata-System nicht ohne Oracle verwendet werden. Exadata ist eine "Add-On" -Speicher-Engine und keine Überarbeitung der Oracle-Datenbank-Engine.
Die Skalierbarkeit umfasst mehrere Aspekte einer IT - Infrastruktur, z. B. die Handhabung von Daten - und Transaktionsvolumina sowie die Zunahme multidimensionaler Daten, Anzahl der Benutzer, Workload - Management, Abfragekomplexität und - volumen usw.
Teradata ist Linear skalierbar[viii] bedeutet, dass die Datenbankkapazität durch Hinzufügen weiterer Knoten zur Infrastruktur erhöht werden kann. Wenn das Datenvolumen steigt, wird die Leistung nicht beeinträchtigt.
Das System ist auf mehrdimensionale Skalierbarkeit ausgelegt und bietet robustere Modelle für das Scale-up und Scale-out als Oracle. Obwohl Oracle über eine gute Skalierbarkeit verfügt, treten Engpässe bei dem Speichersubsystem auf und es hat eine der besten Datenverarbeitungsgeschwindigkeiten, jedoch nur bis zu einer bestimmten Grenze. Wenn zum Beispiel die meisten Abfragen bekannt sind und die verwendeten Daten weniger als 600 TB betragen, könnte Oracle geeignet sein. Wenn jedoch erwartet wird, dass die Daten darüber hinaus ansteigen, ist Teradata die bessere Wahl.
Teradata hat einen bedingungslosen Parallelismus [ix], während Oracle eine Bedingung hat. Es bietet Teradata einen Vorteil mit OLAP, da die Leistung außergewöhnlich ist, um eine einzige Antwort schneller als mit einem nicht parallelen System zu erzielen. Parallelität verwendet mehrere Prozessoren, um eine Aufgabe schnell zu erledigen.
Um eine Analogie zur Funktionsweise der Parallelität zu verwenden, stellen Sie sich eine Warteschlange in einem geschäftigen Einkaufsladen vor, bei der eine Warteschlange zu separaten Warteschlangen für jede Kasse verzweigt. Die Linie bewegt sich auf diese Weise schneller anstatt einer Warteschlange und einer Kasse. Je effizienter das parallele Laden ist, desto besser ist die Leistung des Systems.
Teradata weist im gesamten System Parallelität auf, einschließlich der Architektur, der komplexen Verarbeitung und des Datenladens. Die Abfrageoptimierung ist für die parallele Verarbeitung von Anforderungen nicht erforderlich, und Teradata ist im Gegensatz zu Oracle nicht von Spaltenbereichsbeschränkungen oder einer begrenzten Datenmenge abhängig.
Andere bemerkenswerte Unterschiede sind:
Oracle und Teradata sind beide in Produkt und Technologie ausgereift, jedoch übertrifft Oracle die Anzahl der Implementierungen im Vergleich zu Teradata.
Da Oracle weit verbreiteter ist als Teradata, verfügt es über eine Reihe von Tools und ist daher die erste Wahl für Entwickler und Geschäftsanwender. Die Wahrnehmung von Geschäftsanwendern hält Teradata für zu komplex oder für spezialisierte Experten reserviert. Daher ist es einfacher, einen erfahrenen Oracle-Benutzer oder -Entwickler zu finden, als einen Teradata-Benutzer.
Komponente | Teradata | Orakel |
Die Architektur | · Geteiltes Nichts · Relationales Modell · Knoten verfügen über mehrere Parsing Engines und Datenbank-Engines, die als Access Module Processors bezeichnet werden | · Alles geteilt · Objektrelationales Modell · Gemeinsamer Datenträger / lose gekoppelter gemeinsam genutzter Speicher · DB-Architektur für Datenbanken mit mehreren Knoten |
OLAP | Systemdesign und wesentliche 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 | Unbedingt "Always On", von Anfang an konzipiert. | Bedingt und unvorhersehbar |
Datenbanktabellen | In den Datenbanken erstellte Tabellen und der Festplattenspeicher werden von Teradata selbst verwaltet. | In Tablespaces erstellte Tabellen zu Schema gehören und Parameter für die Raumnutzung haben. |
Datenbankobjekte | · Mauszeiger · Externe Routine · Funktion · Verfahren · Auslöser | · Datendomäne · Mauszeiger · Externe Routine · Funktion · Verfahren · Auslöser |
Indexverwendung | Verwenden Sie normalerweise nicht viele Indizes, da sich die parallele Architektur auf die Anforderungen an die Durchsatzleistung konzentriert. | Verlassen Sie sich auf Indizes, da OLTP-Workloads schnelle Zugriffspfade erfordern. |
Schnittstelle | · SQL | · SQL · GUI |
Datentypen | ||
String | · CHAR · CLOB · VARCHAR | · CHAR · CLOB · VARCHAR · NCHAR · NVARCHAR |
Binär | · BYTE · VARBYTE | · BFILE · LONGRAW · RAW |
Terminzeit | · ZEIT · DATUM · TIMESTAMP | · DATUM · TIMESTAMP |
Gesamtbenutzerrang (Umfrage der IT-Zentralstation) [xi] | Dritte | Zuerst |