Informazioni sui componenti di replica dei dati in Oracle GoldenGate

Tipi di configurazioni di replica dei dati

È possibile configurare Oracle GoldenGate per gli scopi seguenti:

Processi Oracle GoldenGate

Extract

Il processo di estrazione è configurato per essere eseguito sull'endpoint di origine da cui è necessario acquisire le transazioni del database di cui è stato eseguito il commit. Questo processo è il meccanismo di estrazione o acquisizione dei dati di Oracle GoldenGate.

È possibile configurare il processo di estrazione per acquisire dati dai tipi di origini dati riportati di seguito.

Per ulteriori informazioni, vedere Informazioni su Extract.

Replicat

Il processo Replicat applica gli aggiornamenti dai file trail al database di destinazione. Legge il file trail nel database di destinazione, ricostruisce le operazioni DML o DDL e le applica al database di destinazione.

Il processo Replicat utilizza SQL dinamico per compilare un'istruzione SQL una sola volta, quindi la esegue più volte con bind variable diverse. È possibile configurare il processo Replicat in modo che attenda un periodo di tempo specifico prima di applicare le operazioni replicate al database di destinazione.

Ad esempio, potrebbe essere auspicabile un ritardo per impedire la propagazione dell'istruzione SQL errata, per controllare l'arrivo dei dati in fusi orari diversi o per consentire l'esecuzione di altri eventi pianificati.

Per i due casi d'uso comuni di Oracle GoldenGate, Replicat funziona come indicato di seguito.

È possibile configurare più processi Replicat con uno o più processi Extract in parallelo per aumentare il throughput. Per preservare l'integrità dei dati, ogni insieme di processi gestisce un diverso insieme di oggetti. Per differenziare i processi Replicat, è possibile creare gruppi Replicat con un nome di gruppo univoco.

Vedere Informazioni su Replicat per informazioni sui diversi tipi di modalità Replicat.

Percorsi di distribuzione per il trasporto dati

Un percorso di distribuzione o DISTPATH definisce il percorso del file trail tra gli endpoint. Il percorso di distribuzione viene configurato dal servizio di distribuzione. Per ulteriori informazioni, vedere Servizio di distribuzione.

Un percorso di distribuzione avviato dalla destinazione, chiamato anche percorso del ricevente o RECVPATH definisce il percorso del trail, dal servizio del ricevente al servizio di distribuzione in ambienti con endpoint di destinazione sicuri. Vedere Aggiungi percorsi servizio ricevente.

Oggetti Oracle GoldenGate

Gli oggetti Oracle GoldenGate non devono mai essere modificati direttamente. La modifica di file di parametri, trail, file di checkpoint e tabelle deve essere modificata solo tramite chiamate API REST utilizzando AdminClient e l'interfaccia Web.

File trail

Un trail è una serie di file su disco in cui Oracle GoldenGate memorizza le modifiche acquisite per supportare l'estrazione e la replica continue delle modifiche al database.

Un trail può esistere nel sistema di origine, in un sistema intermedio, nel sistema di destinazione o in qualsiasi combinazione di questi sistemi, a seconda della modalità di configurazione di Oracle GoldenGate. Sul sistema locale, è noto come sentiero Extract (o sentiero locale). Su un sistema remoto, è conosciuto come un sentiero remoto. Utilizzando un trail per lo storage, Oracle GoldenGate supporta l'accuratezza dei dati e la tolleranza agli errori. L'uso di un trail consente inoltre di eseguire attività di estrazione e replica indipendentemente l'una dall'altra. Con questi processi separati, hai più scelte su come vengono elaborati e consegnati i dati. Ad esempio, invece di estrarre e replicare continuamente le modifiche, è possibile estrarre continuamente le modifiche e memorizzarle nel trail per la replica alla destinazione in un secondo momento, ogni volta che l'applicazione di destinazione le richiede.

Inoltre, i trail consentono a Oracle AI Database di operare in un ambiente eterogeneo. I dati vengono memorizzati in un file trail in un formato coerente, quindi possono essere letti dal processo Replicat per tutti i database supportati.

Processi che scrivono nel file trail

Oracle GoldenGate Extract scrive nel file trail. Tutti i percorsi locali devono avere nomi di percorso completo diversi, anche se è possibile utilizzare gli stessi nomi di percorso in percorsi diversi.

In Oracle GoldenGate MA, i percorsi di distribuzione e i percorsi del ricevente vengono utilizzati per distribuire gli trail remoti. Il servizio di distribuzione e il servizio di ricezione vengono utilizzati per configurare rispettivamente il percorso di distribuzione e il percorso del ricevente. Il percorso di distribuzione trasferisce il trail su una rete a destinazioni definite. Il trail può contenere dati provenienti da più estrazioni, che vengono trasferiti a un sistema remoto.

Processi letti dal file trail

I processi Replicat e il percorso di distribuzione vengono letti dai file trail. Extract acquisisce le operazioni DML e DDL utilizzando un trail locale, esegue ulteriori elaborazioni se necessario e trasferisce i dati a un trail letto dal successivo processo Oracle GoldenGate, ovvero Replicat.

In caso di distribuzione distribuita, un processo del servizio di distribuzione leggerà il file trail remoto e lo invierà attraverso la rete a un processo del servizio ricevente in attesa.

Il processo Replicat legge il trail e applica le operazioni DML e DDL replicate al database di destinazione.

Creazione e manutenzione file trail

I file trail vengono creati in base alle esigenze durante l'elaborazione. È possibile specificare un nome di due caratteri per il trail quando lo si aggiunge alla configurazione di Oracle GoldenGate. Per impostazione predefinita, gli trail vengono memorizzati nella sottodirectory della directory Oracle GoldenGate. È possibile specificare un numero di sequenza a nove cifre per il file trail.

Quando ogni nuovo file viene creato, eredita il nome trail a due caratteri aggiunto con un numero di sequenza univoco a nove cifre compreso tra 000000000 e 999999999. Quando il numero di sequenza raggiunge 999.999.999 o 999.999 (a seconda dell'impostazione precedente), il processo di estrazione verrà interrotto.

I file trail possono essere rimossi di routine impostando task di manutenzione automatici per rimuovere i file trail o eliminare manualmente i file trail dal servizio di amministrazione. Vedere Elimina file trail e Rimuovi trail.

È possibile creare più trail per separare i dati da oggetti o applicazioni diversi. Per massimizzare il throughput e ridurre al minimo il carico di I/O sul sistema, i dati estratti vengono inviati all'interno e all'esterno di un trail in blocchi di grandi dimensioni. L'ordine transazionale del file trail o della sequenza trail viene conservato.

File dei parametri

La maggior parte delle funzionalità di Oracle GoldenGate viene controllata mediante i parametri specificati nei file dei parametri. Un file di parametri è un file di testo non codificato letto da un processo Oracle GoldenGate associato.

L'architettura dei microservizi Oracle GoldenGate utilizza i parametri runtime riportati di seguito.

I parametri di runtime consentono di controllare vari aspetti della sincronizzazione di Oracle GoldenGate, ad esempio:

Sebbene sia possibile eseguire più estrazioni e repliche in una singola distribuzione, ciascuna di esse può essere associata solo a un singolo file di parametri. Le estrazioni e le repliche sono identificate dal nome senza distinzione tra maiuscole e minuscole. Ad esempio, per un file Extract denominato exte, è associato 1 file di parametri denominato exte.prm.

File e tabelle di checkpoint

Oracle GoldenGate utilizza una combinazione di file di checkpoint, tabelle di checkpoint e valori corrispondenti all'interno dei file trail per garantire che i dati vengano applicati esattamente una volta alla piattaforma di destinazione. Oracle GoldenGate utilizza questi oggetti per garantire la replica corretta dei dati e per finalità di recupero in caso di interruzione o crash del database di origine, del database di destinazione o di Oracle GoldenGate stesso. Questi oggetti sono fondamentali per lo stato di Oracle GoldenGate e non devono mai essere modificati o modificati senza la guida diretta del Supporto Oracle.

Vedere Dettagli aggiuntivi sulle tabelle checkpoint.

Uso checkpoint per Extract, Path e Replicat

I checkpoint vengono utilizzati durante la sincronizzazione delle modifiche in linea per memorizzare la posizione di lettura e scrittura corrente di un processo. I checkpoint garantiscono che le modifiche ai dati contrassegnate per la sincronizzazione vengano estratte e impediscono estrazioni ridondanti. Forniscono tolleranza agli errori impedendo la perdita di dati se il sistema, la rete o un processo Oracle GoldenGate deve essere riavviato.

Extract, Path (Extract) e Delivery (Replicat) salvano le posizioni in un file di checkpoint per consentire il recupero in caso di errore. Extract crea checkpoint per le relative posizioni nell'origine dati e nel trail. Replicat crea checkpoint per la sua posizione nel trail. Il seguente diagramma illustra questo flusso di lavoro:

Extract, Path (Extract) e Replicat salvano le posizioni in un file di checkpoint in modo che possano essere recuperate in caso di errore.

Le informazioni sul checkpoint vengono gestite nei file di checkpoint nella directory Oracle GoldenGate predefinita: $OGG_VAR_HOME/lib/checkpt

Questa operazione non deve essere confusa con la tabella di checkpoint facoltativa memorizzata nel database. Extract inserisce un checkpoint di scrittura, noto come checkpoint corrente, nel trail. Il checkpoint corrente è la posizione nel trail in cui Extract sta scrivendo.

I checkpoint memorizzano la posizione di lettura/scrittura corrente di un processo. Prevengono le estrazioni ridondanti e forniscono tolleranza agli errori.

Oracle GoldenGate utilizza i checkpoint solo a scopo informativo, poiché l'origine delle informazioni si trova all'interno dei file trail.

Checkpoint percorso

Il checkpoint del percorso del servizio di distribuzione aggiunge un ulteriore livello di affidabilità per l'architettura dei microservizi durante il trasferimento di file trail tra le distribuzioni. L'immagine seguente descrive il meccanismo di checkpoint DISTPATH utilizzato nelle distribuzioni.

Flusso di lavoro di un checkpoint DISTPATH

La lettura corrente è il checkpoint dell'ultima lettura. Il checkpoint verifica la presenza di modifiche ogni secondo. Questa frequenza è configurabile. Il checkpoint di scrittura identifica l'ultimo elemento scritto nel trail. Oracle GoldenGate tiene traccia della posizione di scrittura nel trail.

Il percorso del servizio di distribuzione non è a conoscenza di alcuna transazione aperta perché elabora solo i record di cui è stato eseguito il commit.

Checkpoint Replicat

Replicat crea checkpoint nella tabella dei checkpoint per contrassegnarne l'ultima posizione di lettura e applicazione.

Per visualizzare i checkpoint del processo, utilizzare il comando INFO REPLICAT con l'opzione SHOWCH. Il comando di base mostra i checkpoint correnti.

Il checkpoint corrente è la posizione dell'ultimo record letto da Replicat nel trail e applicato al database. L'origine della verità per le transazioni applicate è la tabella dei checkpoint. I file di checkpoint utilizzati dai comandi Replicat e INFO sono solo informazioni approssimative e di consulenza. Per informazioni su questo workflow, vedere l'immagine riportata di seguito.

Estrai flusso dati checkpoint e checkpoint Replicat