SQL Server Enterprise consente di sincronizzare un database tra diversi server, per creare una infrastruttura di replica e di failover. Ne parliamo approfonditamente nel relativo tutorial: https://www.iperiusbackup.net/replica-transazionale-peer-to-peer-in-sql-server/.

In questo tutorial approfondiamo brevemente uno dei tool più utili per tenere sotto controllo lo stato di una replica peer to peer di database SQL Server.

Questo tutorial si applica a tutte le versioni di SQL Server Enteriprise, comprese le più recenti SQL Server 2016, SQL Server 2017 e SQL Server 2019.

SQL Server Enterprise mette a disposizione il “Replication Monitor” per analizzare le attività e gli eventuali conflitti di una replica Peer-To-Peer. Il Replication Monitor si avvia attraverso la sezione “Replica” del database (accessibile con il “SQL Server Management Studio”). Cliccare con il pulsante destro del mouse e selezionare la voce “Launch Replication Monitor”. La schermata che appare è la seguente:

1_replication_monitor

1_repl_monitor

Nell’albero di sinistra vengono visualizzate le pubblicazioni. Nella parte centrale troviamo diversi Tab tra cui il più importante è “Subscription Watch List” che mostra l’elenco delle sottoscrizione attive. attraverso il doppio click su ognuna di esse possiamo accedere al dettaglio e alla history delle transazioni di replica. Da qui è possibile visionare gli errori, indicati da un’icona rossa, le performance e i dati scambiati.

Monitoraggio programmatico con Stored Procedure T-SQL:

Il Replication Monitor è quindi uno strumento grafico che consente di monitorare una topologia di replica. È possibile accedere agli stessi dati di monitoraggio in modo dettagliato anche utilizzando le stored procedure di replica Transact-SQL o gli oggetti di gestione della replica (RMO). Questi oggetti consentono di programmare le seguenti attività:

  • Monitorare lo stato dei publisher, delle pubblicazioni e delle subscription
  • Monitorare le sessioni di Merge Agent su uno o più Sottoscrittori.
  • Monitorare i comandi transazionali in attesa di essere applicati a uno o più Sottoscrittori.
  • Definire le metriche della soglia che determinano quando una pubblicazione richiede un intervento.
  • Monitora lo stato dei tracer token.

Si possono approfondire molti aspetti avanzati relativi al monitoring della replica peer to peer di database. Maggiori informazioni possono essere reperite nella documentazione ufficiale Microsoft: https://docs.microsoft.com/en-us/sql/relational-databases/replication/monitor/overview-of-the-replication-monitor-interface?view=sql-server-ver15

Monitor di performance e latenza:

Come è possibile leggere da questa documentazione, si parte dall’ impostazione dei permessi per gli utenti, fino ad arrivare al monitoring approfondito delle performance e della latenza.

La replica transazionale fornisce infatti la funzionalità “token tracciante”, ovvero un modo conveniente per misurare la latenza nelle topologie di replica transazionale e per convalidare le connessioni tra publisher, distributore e sottoscrittori. Un token (una piccola quantità di dati) viene scritto nel registro delle transazioni del database di pubblicazione, contrassegnato come se fosse una tipica transazione replicata, e inviato attraverso il sistema, consentendo il calcolo di:

  • Quanto tempo intercorre tra una transazione impegnata nel publisher e il comando corrispondente inserito nel database di distribuzione presso il distributore.
  • Quanto tempo intercorre tra l’inserimento di un comando nel database di distribuzione e il commit della transazione corrispondente in un Sottoscrittore.

Da questi calcoli, è possibile rispondere a una serie di domande, tra cui:

  • Quali sottoscrittori impiegano più tempo a ricevere una modifica dal publisher?
  • Quali sottoscrittori dovrebbero ricevere il token tracciante e invece non lo ricevono?

Soglie, allarmi e avvisi:

Infine, c’è la possibilità di specificare soglie di allarme e avvisi specifici.

Per impostazione predefinita, Replication Monitor visualizza gli avvisi solo per i subscribers non inizializzati, ma è possibile abilitare gli avvisi per altre condizioni. Si consiglia di abilitare gli avvisi per la topologia, in modo da essere informati tempestivamente sullo stato e sulle prestazioni.

Quando si attiva un avviso, si specifica una soglia. Quando viene raggiunta o superata tale soglia, viene visualizzato un avviso (a meno che non sia necessario visualizzare un problema con una priorità più alta). Oltre a visualizzare un avviso in Replication Monitor, il raggiungimento di una soglia può anche attivare un avviso.

Abbiamo quindi analizzato i principali aspetti che fanno di Replication Monitor uno strumento fondamentale per il debug e l’ottimizzazione di una replica di database in modalità peer to peer su SQL Server. Per maggiori informazioni consigliamo la consultazione della documentazione ufficiale Microsoft.



Monitorare una replica Peer-To-Peer in SQL Server
Iperius Team
*****************************************

PLEASE NOTE: if you need technical support or have any sales or technical question, don't use comments. Instead open a TICKET here: https://www.iperiusbackup.com/contact.aspx

*****************************************

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

*****************************************

PLEASE NOTE: if you need technical support or have any sales or technical question, don't use comments. Instead open a TICKET here: https://www.iperiusbackup.com/contact.aspx

*****************************************