sebdan
Goto Top

Verteiltes Datenbanksystem

Hallo,

ich arbeite zur Zeit an einem Studienprojekt, bei dem doch sehr grosse Mengen an Daten erzeugt werden, die in einer Datenbank gespeichert werden sollen. Das Problem ist nun, das gewünscht ist, diese Datenbank verteilt aufzusetzten also nach Möglichkeit einen "main" DB-Server zu haben an den man seine Anfragen richten kann, sowie mehrere "sub" DB-Server an die die Anfragen weitergeleitet werden sollen. Jeder der einzelnen nodes soll nur jeweils einen Teil des Gesamtdatensatzes haben (also kein mirroring) und der Hauptserver leitet die Anfragen nur an die jeweilig richtigen Knoten weiter, diese antworten ihm, und er gibt dann nach aussen hin die Antworten zurück.

Kennt jemand hierfür eine schon vorhandene Lösung oder bleibt mir doch nichts anderes als die Eigenimplementation?

mfg sebdan

Content-ID: 56692

Url: https://administrator.de/forum/verteiltes-datenbanksystem-56692.html

Ausgedruckt am: 09.04.2025 um 09:04 Uhr

LarsJakubowski
LarsJakubowski 15.04.2007 um 22:53:05 Uhr
Goto Top
Hi,

was soll den da für ein DB System hinterstecken?
Auf welcher Betreibssystem basis soll das denn satttfinden und wie sind die Systeme denn untereinander angebunden?
Wichtigf ist auch wie groß sind die Datenmengen im Schnitt, wechle es zu übertragen gilt?

Viele Grüße
Lars
yumper
yumper 15.04.2007 um 23:17:02 Uhr
Goto Top
ms sql 2007 Enterprise Edition kann dieses.

Es heisst eine Datenbank nach verschiedenen (beliebigen)
Kriterien Partionieren
LarsJakubowski
LarsJakubowski 15.04.2007 um 23:19:00 Uhr
Goto Top
N aja, kommt ja immernoch auf die Bandbreite an um das zu realisieren.
Das die Enterprise Edition das kann ist klar.
nur muss der Rest ja auch stimmen.
Biber
Biber 15.04.2007 um 23:31:11 Uhr
Goto Top
Moin sebdan,

willkommen im Forum.

Es gibt mehrere Datenbanksysteme, die dieses Feature des "Verteilten Datenhaltung" oder "Partitioned Databases" bieten.
Alle großen, also auch Oracle oder DB2 können das. Und mag sein, dass M$ das auch schon versucht.

Aber Deine Angaben sind noch zu spärlich, um da Empfehlungen abgeben zu wollen.
Was sind denn "grosse Datenmengen"? Reden wir von GigaByte, TeraByte, PetaByte? Von Zehntausenden Datensätzen oder von Millionen?
Gibt es 5 oder 500000 Clients, die dranhängen sollen?
Sollen "nur" die Daten "verteilt" gespeichert werden oder ist auch das Ziel, die Auswertungs- und Abfragelogik auf 50 Prozessoren in insgesamt 30 Rechnern zu verteilen?
Ist die Infrastruktur vorhanden, d.h. gibt es irgendwelche real existierende Sun Solaris/zLinux/RedHat/Windows/WhatEver-Bleche, die als Server freie Kapazitätäten haben?
Seid ihr clientseitig schon gebunden an ein bestimmtes Betriebssytem?

Bitte ein paar mehr Angaben...

Gruss
Biber
[Edit] Die Antwort nach den Server-Betriebsystemem hat sebdan zeitgleich mit mir schon beantwortet (Debian).
Mengengerüst bzw ein paar Hausnummern wären aber auch noch nett [/Edit]
sebdan
sebdan 15.04.2007 um 23:38:11 Uhr
Goto Top
Hi,

was soll den da für ein DB System
hinterstecken?
Auf welcher Betreibssystem basis soll das
denn satttfinden und wie sind die Systeme
denn untereinander angebunden?
Wichtigf ist auch wie groß sind die
Datenmengen im Schnitt, wechle es zu
übertragen gilt?

Viele Grüße
Lars

Es sind Linux Rechner (Debian), die direkt über gbit ethernet aneinander angebunden sind. Nach Möglichkeit sind open-source bzw. frei verfügbare Produkte einzusetzen.
sebdan
sebdan 15.04.2007 um 23:50:17 Uhr
Goto Top
Die Datenmenge liegt im niedrigen Terabyte bereich und soll auf ca ein dutzend rechner verteilt werden.

Die Abfrage Logik ist das was nach Möglichkeit am effizientesten sein soll, die Einfügeoperationen sind nicht weiter zeitkritisch.

Um das Projekt etwas zu umreissen: Es handelt sich um eine Art "Suchmaschine" für spezielle Webinhalte und findet momentan nur als interne Arbeit an meiner Hochschule statt, die Ergebnisse sind also je nach Erfolg, vorerst nur für Forschungszwecke von Interesse.