Caricamento...
Attendere, prego.

Menu

+39 045 5116665

[email protected]

Oracle Advanced Replication e replica database con SymmetricDS

HomeNotizieOracle Advanced Replication e replica database con SymmetricDS
HomeNotizieOracle Advanced Replication e replica database con SymmetricDS
Oracle Advanced Replication e replica database con SymmetricDS

Oracle Advanced Replication e replica database con SymmetricDS

Oracle Advanced Replication e replica database con SymmetricDS

Stonebit - sviluppo software - consulenze informatiche

Abbiamo ultimato per un nostro importante cliente un progetto software per rispondere all'esigenza di una replica e sincronizzazione di database su multi-nodo in tempo quasi reale

(ritardi tipici inferiori a 5 secondi).

Le difficoltà erano soprattutto connesse alla bassa affidabilità della connettività, essendo alcuni nodi posti dietro ai firewall di un paese orientale molto noto.

Vogliamo condividere le nostre buone impressioni e gli ottimi risultati raggiunti utilizzando SymmetricDS con una adeguata configurazione.

 

Sia Oracle Advanced Replication sia SymmetricDS forniscono un sistema di replicazione dei database, uno strumento prezioso per migliorare l'accesso ai dati critici che guidano l'attività dell'azienda. Nonostante alcuni comuni concetti di replicazione siano utilizzati in entrambi i prodotti, ci sono alcune differenze nella terminologia e configurazione. Diamo uno sguardo ad alcuni degli scenari per la replicazione dei database e come ciò venga realizzato da entrambi i prodotti.

Perché usare la replicazione

La replicazione dei database consente un accesso rapido e locale ai dati condivisi, e può migliorare l'aspetto relativo alla rapidità e alla frequenza in base alla quale i dati sono disponibili. Alcune comuni motivazione per l'utilizzo della replicazione sono:

  • Elevata disponibilità – L’utente può accedere ai dati dal database funzionante e dalla posizione a lui geograficamente più prossima.

  • Performance – Bilanciando le richieste di accesso attraverso server multipli o facendo funzionare operazioni molto pesanti come il reporting su un database separato.

  • Operazioni in modalità disconnessa – Gli utenti possono lavorare sui dati mentre sono disconnessi dal database centrale, e successivamente inviare e ricevere le modifiche una volta ristabilita la connessione.

Oggetto della replicazione

Oracle Advanced Replication può copiare qualsiasi tipo di oggetti contenuti nel database tra un sito e l’altro quando venga effettuato qualsiasi aggiornamento all’oggetto. Essendo originato da Oracle, conosce gli oggetti specifici della piattaforma, come le procedure memorizzate, le viste ed i sinonimi. SymmetricDS può replicare tra un sito e l'altro solo i dati contenuti nelle tabelle e lo schema delle tabelle. Poiché è una piattaforma incrociata, supporta oggetti delle tabelle che siano sono comuni a qualsiasi database. Tuttavia, è possibile inviare script SQL personalizzati ai siti attraverso la sincronizzazione, al fine di creare oggetti specifici per la piattaforma.

Gruppi di replicazione

Oracle Advanced Replication utilizza i gruppi di replicazione come un insieme di tabelle logicamente correlate. L'organizzazione in gruppi facilita la gestione dei dati ed il supporto di una particolare applicazione. In SymmetricDS, le tabelle sono assegnati ad un canale, che le raggruppa per la sincronizzazione. Ai canali sono assegnate delle priorità e sincronizzazioni indipendenti, ciò aiuta a controllare il flusso di dati importanti.

Siti di replicazione

I siti in Oracle Advanced Replication sono un database che partecipa alla replica, sia come sito principale o un sito con vista materializzata. Un sito master contiene una copia completa di tutti i dati all'interno del gruppo di replica. Essi comunicano direttamente tra loro per propagare continuamente modifiche. Un sito con vista materializzata può contenere una copia completa o parziale dei dati, e può essere sia di sola lettura o aggiornabile. Una vista materializzata contiene dei dati a partire da un punto nel tempo, e viene periodicamente eseguito un aggiornamento contattando un sito principale per un aggiornamento completo o incrementale. Mettendo una vista materializzata sull'altra, l’aggiornamento dei dati può ricadere a cascata su un organizzazione di siti multistrato.

I nodi in SymmetricDS sono dei database che partecipano alla replicazione. I nodi vengono assegnati ai gruppi di nodi e configurati per replicare le tabelle con altri gruppi di nodi. Viene creato un collegamento tra un gruppo di nodi di origine e di destinazione per ogni direzione necessaria, che stabilisce la comunicazione per propagare continuamente le modifiche. Le modifiche dei dati passano attraverso i router che determinano quali nodi riceveranno le modifiche. Configurando i router per l'invio od il filtro dei dati, un gruppo di nodi può replicare sia una copia completa che una parziale dei dati. Collegare i gruppi di nodi per la replicazione e configurare quali dati delle tabelle indirizzare ed in quale direzione consente di realizzare un network con una flessibilità che include una disposizione multistrato.

Tipi di Replicazione

Oracle Advanced Replication supporta la replicazione multimaster, quella a vista materializzata e le configurazioni ibride usando entrambe. La replicazione Multimaster sta a significare che tutti i siti hanno la stessa copia dei dati, consente gli aggiornamenti e propaga i cambiamenti uno all’altro come dei peer. La vista materializzata sta a significare che il sito ha una copia dei dati a partire da un punto determinate nel tempo, e contatta il sito principale sulla base di un programma per effettuare gli aggiornamenti e condurre i cambiamenti.Una vista materializzata è configurata di base in sola lettura, le modifiche sono consentite solo dal sito principale, ma la configurazione avanzata consente di aggiornare le viste materializzate.

SymmetricDS supporta la replicazione multimaster, la sincronizzazione filtrata, e la trasformazione. I dati vengono replicati a tutti i nodi con il multimaster, permettendo gli aggiornamenti in qualsiasi nodo, e le modifiche vengono propagate lungo la rete seguendo dei collegamenti a gruppi di nodi configurati. La comunicazione può essere configurata come push, con il nodo sorgente che apre la connessione per inviare le modifiche, o come pull, con il nodo di destinazione che apre la connessione per ricevere le modifiche. Il metodo Push è più efficiente dal momento che si creano dei collegamenti solo quando le modifiche sono in attesa, ma la modalità pull può facilmente attraversare i firewall. La frequenza di invio delle modifiche è controllata da parametri che possono esse indirizzati a tutti i nodi, a gruppi di nodi specifici o a singoli nodi. La sincronizzazione filtrata consente di selezionare le tabelle e colonne per sottoinsiemi verticali, così come di selezionare le linee per sottoinsiemi orizzontali. La trasformazione consente la manipolazione dei dati modificati in valori tradotti, righe unite o divise, e migliorare i dati.

Sincrona, Asincrona, e Procedurale

Con Oracle Advanced Replication, la replicazione multimaster può essere effettuata come replicazione asincrona, sincrona, o procedurale. Asincrona significa che le modifiche vengono acquisite in un registro mentre le transazioni avvengono a livello locale, e le modifiche vengono successivamente propagate ad altri siti per essere applicate. Dal momento che i dati possono essere aggiornati contemporaneamente in siti diversi, viene usata la risoluzione dei conflitti per riunire e risolvere le modifiche dei dati simultanee. Sincrona significa che tutti i siti partecipano ad una transazione, quindi i dati vengono impegnati o ripristinati simultaneamente. Evitando i conflitti, la replicazione sincrona richiede un ambiente stabile per il suo funzionamento continuo. La Replicazione procedurale permette di modificare grandi quantità di dati replicando i richiami a procedure memorizzate al fine di modificare i dati, ma non replica le modifiche ai dati stesse.

SymmetricDS acquisisce le modifiche in un registro mentre le transazioni sono impegnate localmente, quindi propaga i cambiamenti in background in modo asincrono. I conflitti vengono rilevati e gestiti attraverso un resolver che li riunisce e risolve automaticamente, e l'utente può configurare o scrivere degli script per avere dei resolver personalizzati. Si può inviare una chiamata di procedura remota e degli script SQL personalizzati ai nodi attraverso un evento di replicazione invece di inviare dei singoli cambiamenti di riga. Un evento di ricarica può essere usato come modo efficiente per inviare una grande quantità di dati con una espressione SQL invece di acquisire singole righe. Vi è anche una sessione speciale variabile che può essere utilizzata anche per impedire temporaneamente l'acquisizione dei dati durante le operazioni di batch.

Strumenti di amministrazione

Oracle Advanced Replication include degli strumenti server per l'amministrazione, tra cui una applicazione web, un'interfaccia PL / SQL, e un catalogo di replicazione. Oracle Enterprise Manager fornisce una applicazione web per la programmazione della replicazione ed il controllo dell'operazione, inclusa la documentazione in linea. Le stesse capacità amministrative sono disponibili da SQL interattivo con funzione PL / SQL e chiamate di procedura remota. Nel database, il catalogo di replicazione è un insieme di tabelle e viste che contiene informazioni amministrative sugli oggetti di replicazione e gruppi dal sito.

SymmetricDS include strumenti server per l'amministrazione, tra cui una applicazione web, molteplici interfacce di programmazione, e un modello di database. La console web include la programmazione della replicazione, il monitoraggio, gli strumenti di risoluzione dei problemi, e la documentazione in linea. L'amministrazione può essere effettuata anche da diverse interfacce, tra cui gli strumenti da riga di comando, chiamate REST, Java Management Extensions (JMX), e SQL interattivo. Nel database, le tabelle di configurazione controllano come il sistema si comporta mentre le tabelle di runtime contengono il registro di acquisizione, batch, e lo stato di replicazione.

Conclusioni

Mentre Oracle Advanced Replication e SymmetricDS usano termini e concetti differenti per la configurazione, entrambi forniscono la replicazione del database per migliorare l'accesso ai dati. Garantire che le applicazioni possano funzionare con dati a cui si può accedere velocemente e che siano sempre a disposizione è importante per il funzionamento continuo delle attività delle imprese, ed è qualcosa che i clienti si aspettano. La replicazione dei database è utilizzata in scenari di operazioni ad alta disponibilità, con distribuzione del carico, e disconnesse, e può essere la pietra angolare di una strategia di integrazione dati in tempo reale per l'impresa.

technology ssd dram


23 09, 15
Essential SSL