phpbar.de logo

Mailinglisten-Archive

Abfrage mehrere Datenbankserver

Abfrage mehrere Datenbankserver

Stefan Reinhardt s.reinhardt at team.mobile.de
Don Mai 8 10:36:21 CEST 2003


Sub-Betreff: SchattenDB

Hi ....
sach mal bitte .... wofür kann man das brauchen?

Ich (als alter Standard Replizierer ;) kann ausser dem "Vorteil" der 
geringeren Bandbreiten-Nutzung nicht erkennen was das soll, wofür setzt Du 
das ein? .... Wenn ich das richtig verstehe hat Dein "slave" immer eine alte 
DB auf der er rumwerkelt, oder ( und dann ist das doch eigentlich ein 
Nachteil der in keinem Verhältnis zum Vorteil steht ?!) ? 

Ich würde mich über ein paar aufklärende Worte sehr freuen ...... :-)

Gruss
Stefan

On Wednesday 07 May 2003 21:16, Technik via echtwahr.com wrote:
> Hallo Michael,
>
> > Der Master hält für jede DB zwei Versionen, einmal seine normale
>
> Arbeits-DB
>
> > (z.B. "master_db") und eine zweite die der Slave-DB (z.b.
> > "master_db_old") entspricht, also der DB vor dem Abgleich. Letztere nenn
> > ich immer "Schatten-DB".
> >
> > Auf dem Slave steht natürlich auch eine DB (z.B. "slave_db").
> >
> > Zum Replikationszeitpunkt läuft dann ein (hier perl) script, daß die
> > Datenbanken master_db und master_db_old vergleicht und aus der Differenz
> > sql-script(s) mit haufenweise update,insert und delete-statements
> > (jeweils auf einen record bezogen) erstellt.
> >
> > Nach Abschluß der Differenzbildung werden die Scripts in die
> > master_db_old eingespielt, somit sind danach master_db und master_db_old
> > identisch
>
> (sofern
>
> > nicht zwischenzeitlich Änderungen in master_db liefen).
> >
> > Dann bzw parallel werden die gleichen Scripts an den slave übermittelt
> > und in slave_db eingespielt, welcher dann auch abgeglichen ist.
> >
> >
> > Sollten mal fehlerhafte SQL-Statements im Differenz-Script enthalten sein
> > ist das kein (großes) Problem, da die Fehler sowohl beim Einspielen in
> > master_db_old als auch in slave_db auftreten (sollten) und somit die
> > nicht beseitigte Differenz solange erhalten bleibt, bis das Problem
> > behoben ist.
> >
> >
> > Nachteile:
> > - Programme müssen selbst erstellt bzw. zugekauft werden.
> > - Master wird stark belastet
> > - DB auf Master ist redundant (Platzbedarf).
> > - Sollten (echte) Foreign Keys definiert sein wird es knifflig, dann muß
> > (mindestens) eine spezielle Reihenfolge bei Replikation der Tabellen
> > beachtet werden
> >
> > Vorteile:
> > - Transfervolumen gering (vor allem wenn scripts gepackt werden).
> > - Slave-Belastung leidlich gering, und keine "ungeplanten" Belastungen
>
> durch
>
> > "fiese" replizierte SQL-Statements.
> >
> > alle Klarheiten beseitigt?
> >
> > Zur Performance:
> > Zur Replikation einer 3,5GB DB braucht der Master immerhin so ca. 1h bis
> > maximal ca. 3h (nach Blick auf die cpu-last statistik :), je nachdem
> > wieviele Tabellen geändert wurden).
>

-- 
Infos zur Mailingliste, zur Teilnahme und zum An- und Abmelden unter
-->>  http://www.4t2.com/mysql 


php::bar PHP Wiki   -   Listenarchive