19 Existierende Mehrrechner-Datenbanksysteme

19.8 NCR/Teradata

Teradata gelang es als erstem Unternehmen, mit einer DB-Maschine zur parallelen DB-Verarbeitung kommerziell erfolgreich zu sein. Dies geschah mit dem Back-End-System DBC/1012 [Te83, Ne86], das 1983 auf den Markt kam. 1991 wurde Teradata von NCR übernommen.

Der Grobaufbau von Teradatas DB-Maschine ist in Abb. 19-8 gezeigt. Es handelt sich dabei um ein Shared-Nothing-System mit bis zu 1024 Prozessoren. Die Datenverarbeitung erfolgt durch sogenannte AMP-Rechner (Access Module Processors), die jeweils eine Partition bearbeiten. Der Anschluß der DB-Maschine an Host-Rechner bzw. Workstations erfolgt durch IFP-Rechner (Interface Processors), über die SQL-Befehle ins Back-End-System gelangen und die Ergebnisse zurückgeliefert werden. Das Herz der Architektur ist jedoch das aktive Kommunikationsnetz YNET. Es besteht aus speziellen Kommunikationsprozessoren, die neben Kommunikationsfunktionen auch Sortier- und Mischvorgänge realisieren. Als Prozessoren kommen in den IFPs und AMPs Standard-Intel-CPUs zum Einsatz. Es bestehen Installationen mit ca. 300 Prozessoren.

Abb. 19-8: Aufbau der Teradata-DB-Maschine DBC /1012

Die Datenverteilung basiert auf einer horizontalen Partitionierung aller Relationen über alle Rechner (!) und ist durch eine Hash-Funktion auf dem Primärschlüssel definiert. Dies macht zwar die Bestimmung der Datenverteilung sehr einfach und gestattet eine breite Parallelisierung. Dafür müssen jedoch alle Anfragen, die sich nicht auf den Primärschlüssel beziehen, auf allen Rechnern bearbeitet werden, was einen hohen Kommunikationsaufwand verursacht. Dies dürfte auch einer der Gründe dafür sein, daß Teradata bislang v.a. zur Parallelisierung datenintensiver Anfragen erfolgreich war, jedoch weniger für OLTP-Anwendungen. Zur schnellen Behandlung von Rechner- und Plattenausfällen unterstützt Teradata eine Datenreplikation in Form des Interleaved Declustering (Kap. 17.4).

Nach der Übernahme durch NCR wurde die Teradata-Software auf den Unix-Parallelrechner NCR 3700 portiert [WCK93]. Dabei können bis zu 4096 Rechner eingesetzt werden, die jeweils aus 4 Intel-Prozessoren bestehen. Die Rechnerkopplung erfolgt über ein mehrstufiges Banyan-Netzwerk namens BYNET, das wesentlich leistungsfähiger und skalierbarer als das ursprüngliche YNET ist.