Hva er en multimasterreplikasjon?

Multimasterreplikasjon er en teknikk som benyttes av databaseadministrasjonsprogramvare slik at flere kopier av en enkelt database lagret på forskjellige datamaskiner kan brukes og oppdateres av mange brukere på en de-sentralisert måte. Når det gjøres en endring i en database som bruker multimasterreplikasjon, overføres endringen som gjøres til alle andre datamaskiner i nettverket, slik at alle kopier av databasen som brukes blir oppdatert. Noen fordeler med et multi-master replikasjonsoppsett inkluderer overflødige datasikkerhetskopieringer og en de-sentralisert arkitektur der oppdateringer til kopier av en database kan opprettholdes selv om en av datamaskinene i nettverket slutter å fungere. Uten et eneste tilordnet hovedsystem, som tilfellet er i master-slave-arkitektur, kan endringer og administrative kommandoer for å kontrollere databasen utstedes fra hvilken som helst av multimasterterminalene i nettverket i stedet for å stole på bare en fysisk terminal. Den største komplikasjonen som kan oppstå ved bruk av et multimasterreplikasjonssystem innebærer å oppdatere alle systemer raskt nok slik at data forblir synkronisert til enhver tid over hele nettverket.

Begrepet "multi-master" stammer fra den mer grunnleggende metoden for master-slave-replikasjon, der en enkelt terminal er utpekt som master. I en mester-slavesituasjon er det bare en enkelt mester som er i stand til å oppdatere informasjon om slavedrevene. Et multimasterreplikasjonssystem har flere systemer som er utpekt som mestere, og hver master er kanskje bare ansvarlig for seg selv eller kan være ansvarlig for et antall datamaskiner kjent som en replikasjonsgruppe. Med flere mestere kan ethvert mastersystem sette i gang en endring til alle andre mastersystemer, noe som potensielt kan føre til veldig komplekse nettverksinteraksjoner i veldig store systemer.

Det er to former for multimasterreplikasjon, den første er synkron replikering. Synkron replikasjonsfunksjoner ved å oppdatere i sanntid alle kopier av en database hver gang en endring gjøres. Dette fjerner de fleste situasjoner som kan oppstå når data ikke synkroniseres over nettverket, men det skaper en enorm mengde nettverkstrafikk og kan kreve en stor mengde prosessorkraft å implementere i et større system. Av disse grunnene brukes synkron replikering primært i nettverk der det bare er en håndfull master-datamaskiner.

Den andre typen multimasterreplikasjon er asynkron replikasjon. I stedet for å oppdatere systemer hver gang en endring blir gjort, lagres endringer i en database som hendelser på hvert system, og disse endringene blir brukt enten når en hendelse utløses eller under planlagte oppdateringsperioder. Dette betyr at mindre nettverksbåndbredde og prosessorkraft blir brukt, men det øker sjansen for at to brukere på et eller annet tidspunkt kan prøve å endre den samme informasjonen på motstridende måter på grunn av forsinkelsen i oppdateringen eller forsinkelsen. De fleste distribuerte databasesystemer bruker asynkron replikering på grunn av den lave mengden ressurser som blir brukt i sammenligning med synkron multimasterreplikasjon.

ANDRE SPRÅK

Hjalp denne artikkelen deg? Takk for tilbakemeldingen Takk for tilbakemeldingen

Hvordan kan vi hjelpe? Hvordan kan vi hjelpe?