La replica di SQL Server consente agli amministratori di database di distribuire i dati su più server all'interno di un'organizzazione. È possibile implementare la replica nella propria organizzazione per una serie di motivi, ad esempio:
- Bilancio del carico. La replica consente di divulgare i dati su un numero di server e quindi di distribuire il carico di query tra tali server.
- Elaborazione offline. La replica supporta la manipolazione dei dati dal database su una macchina che non è sempre connessa alla rete.
- Ridondanza. La replica consente di creare un server database di failover pronto a rilevare il carico di elaborazione in un momento.
Qualsiasi scenario di replica ha due componenti principali:
- editori avere dati da offrire ad altri server. Un determinato schema di replica può avere uno o più editori.
- Iscritti sono server di database che desiderano ricevere aggiornamenti dal server di pubblicazione quando i dati vengono modificati.
Non c'è nulla che impedisca ad un singolo sistema di agire in entrambe queste capacità. In realtà, questo è spesso il progetto di sistemi di database distribuiti su larga scala.
Supporto SQL Server per la replica
Microsoft SQL Server supporta tre tipi di replica del database. Questo articolo fornisce una breve introduzione a ciascuno di questi modelli, mentre i futuri articoli li esploreranno in ulteriori dettagli. Loro sono:
- Replicazione snapshot agisce nel modo in cui il suo nome implica. L'editore semplicemente scatta un'istantanea dell'intero database replicato e lo condivide con gli abbonati. Ovviamente, questo è un processo che richiede molto tempo e risorse. Per questo motivo, la maggior parte degli amministratori non utilizza la replica di snapshot su base ricorrente per i database che cambiano frequentemente. Esistono due scenari in cui viene comunemente utilizzata la replica dello snapshot: in primo luogo, viene utilizzata per i database che cambiano raramente. In secondo luogo, viene utilizzato per impostare una linea di base per stabilire la replica tra i sistemi mentre gli aggiornamenti futuri vengono propagati utilizzando transazionale o unire la replica .
- Replica transazionale offre una soluzione più flessibile per i database che cambiano regolarmente. Con la replica transazionale, l'agente di replica controlla il publisher per le modifiche al database e trasmette tali modifiche agli abbonati. Questa trasmissione può avvenire immediatamente o periodicamente.
- Unisci replica consente all'editore e al sottoscrittore di apportare autonomamente modifiche al database. Entrambe le entità possono funzionare senza una connessione di rete attiva. Quando vengono riconnessi, l'agente di replica di unione verifica le modifiche su entrambi i gruppi di dati e modifica di conseguenza ciascun database. Se le modifiche sono in conflitto, l'agente utilizza un algoritmo di risoluzione dei conflitti predefinito per determinare i dati appropriati. La replica di unione viene comunemente utilizzata dagli utenti di computer portatili e da altri che non possono essere continuamente connessi al publisher.
Ognuna di queste tecniche di replica ha uno scopo utile ed è particolarmente adatta a particolari scenari di database.
Se stai lavorando con SQL Server 2016, scegli la tua edizione in base alle tue esigenze di replica. Ogni edizione ha diverse capacità quando si tratta di supporto alla replica:
- Solo supporto per iscritti: Esprimere,Esprimi con strumenti o Servizi avanzati e il web le edizioni offrono capacità di replica limitate, in grado di agire solo come client di replica.
- Supporto completo per editori e abbonati: Standard e impresa offrire pieno supporto, con Enterprise che include anche la pubblicazione Oracle, la replica transazionale peer-to-peer e la replica transazionale come sottoscrizione aggiornabile.
Come indubbiamente riconosciuto da questo punto, le funzionalità di replica di SQL Server offrono agli amministratori di database un potente strumento per la gestione e il ridimensionamento dei database in un ambiente aziendale.