Både spegling och replikering är fördelaktigt och ökar tillgängligheten och prestanda för data eller databasen.
Jämförelsediagram
Grunder för jämförelse | spegling | Replication |
---|---|---|
Grundläggande | Skapande av en databas kopia på en annan plats (maskin). | Skapande av data och databasobjekt för att förbättra distributionen. |
Uppträdde på | Databas | Endast data och databasobjekt |
Ligger på | Olika maskiner | Olika databaser |
Kosta | Väldigt dyr | Billig |
Distribuerad databas | Ingen avsättning för distribuerat databasstöd | Stödjer distribuerad databas |
Definition av spegling
Spegling är processen att generera flera kopior av databaser och det är också känt som skuggning . Dessa databaskopier finns vanligtvis på olika maskiner. Om någon primärserver kraschar eller är förlovad för underhåll, kan systemet automatiskt misslyckas till den speglade databasen. Vid en viss tidpunkt kan endast en kopia nås.
Den täta kopplingen mellan den primära databasen och den speglade databasen etableras med hjälp av att skicka block av transaktionsloggen till den speglade databasen. Vid eventuella fel kan den också återställa data genom att kopiera den från en databas till en annan. När något misslyckande sker, blir spegeldatabasen huvuddatabasen.
Spegling innefattar införandet av uppdateringen, infogar och raderar operation som är begåvad i en primär databas till speglad databas utan förseningar. I ett helt säkert läge kan en transaktion inte begå tills loggposterna för transaktionen har gjort det till disken på spegeln. Spegling stöder inte distribuerad databas.
Definition av replikering
Replikering är processen för att skapa distribution av redundanta data och databasobjekt i olika databaser för att förbättra tillgängligheten av data. Den kan rulla upp företagsdata från geografiskt spridda platser och sprida data till fjärranslutna användare på ett lokalt nätverk eller på internet. Det ökar utförandet av parallella kommandon.
I Microsoft SQL-servern är utgivaren en enhet som tillhandahåller data för replikering till andra servrar. Abonnenten är en server som vanligtvis mottar de replikerade data från en utgivare.
Det finns tre typer av alternativ som finns tillgängliga i Microsoft SQL-servern för replikeringsoperation: Snapshot replication, Transaction replication och Merge replication.
- Snapshot replication kopierar data och databasobjekten samma som de visas på ett ögonblick.
- Transaktionsreplikation genererar en inledande ögonblicksbild av data till abonnenten då dess inkrementella modifikation skickas till abonnenten som en diskret process. Det finns två replikationsprocesser definierade under transaktionsreplikation, nämligen logläsare och distributionsmedel. Den tidigare processloggläsaren läser transaktionerna från databasstransaktionsloggen, tillämpar ett valfritt filter och lagrar dem i en distributionsdatabas som liknar en köbärande butik och framåtmekanism för transaktionsreplikation. Det senare processdistributionsmedlet vidarebefordrar ändringarna till varje abonnent.
- Sammanfoga replikering gör att varje replik kan vara självstyrande om den är online eller offline. När någon förändring görs på metadata för publicerat objekt spåras det tillbaka till abonnentens och utgivarens slut. Det replikerar inte förekomsten av data och databasobjekt.
Uppgifterna kan replikeras genom att använda databasutlösare med hjälp av vissa specifika verktyg. Den specialiserade lagrade proceduren i databasen signalerar det replikerande medlet för att fånga och transportera förändringarna. Replikering kan också användas med databasspegling, som borde ha en distributör.
Viktiga skillnader mellan spegling och replikering
- Spegling innebär duplicering av en databas som lagras på olika maskiner där originaldatabasen är känd som primär databas och kopierad databas är känd som en spegel. Å andra sidan är replikering duplicering av data och databasobjekt som lagras på olika platser för att förbättra prestandan i distributionsdatabasen.
- Spegling utförs på databasen medan replikering implementeras på data och databasobjekt.
- Spegeldatabasen kan vanligtvis hittas i den olika maskinen från sin primära databas. Däremot lagras de replikerade data- och databasobjekten i en annan databas.
- Spegling av databasen kostar högre än replikering.
- Spegling stöder inte distribuerad miljö medan replikering utformades för den distribuerade databasen.
Slutsats
Spegling och replikering är de metoder som hjälper till att improvisera tillgänglighet, tillförlitlighet och prestanda. Men spegling inbegriper överflödiga kopior av en databas, medan replikering innefattar duplicering av data och databasobjekt, såsom tabeller, lagrade procedurer, användardefinierade funktioner, visningar, materialiserade visningar etc.