Ritardo monitoraggio

Le statistiche di ritardo mostrano quanto bene i processi di Oracle GoldenGate sono al passo con la quantità di dati generati dalle applicazioni aziendali. Con queste informazioni, puoi diagnosticare i problemi sospetti e ottimizzare le prestazioni dei processi Oracle GoldenGate per ridurre al minimo la latenza tra i database di origine e di destinazione.

Informazioni sul ritardo

Per Extract il ritardo è la differenza, in secondi, tra l'ora di elaborazione dell'ultimo record da parte del processo Extract (in base al clock di sistema) e l'indicatore orario di tale record nell'origine dati.

Per Replicat il ritardo è la differenza, in secondi, tra l'ora di elaborazione dell'ultimo record da parte di Replicat (in base al clock di sistema) e l'indicatore orario di tale record nel trail.

Per visualizzare le statistiche di ritardo, utilizzare i comandi [LAG](/pls/topic/lookup?ctx=en/database/goldengate/core/26/coredoc&id=GCLIR-GUID-52D1B2C3-6ACF-4461-9ED2-FD3AE9121022) o [SEND ER](/pls/topic/lookup?ctx=en/database/goldengate/core/26/coredoc&id=GCLIR-GUID-DD62102E-A84D-4866-9A3A-9C2281CFEED7), [SEND EXTRACT](/pls/topic/lookup?ctx=en/database/goldengate/core/26/coredoc&id=GCLIR-GUID-2A83CA04-DAB8-494B-BF36-F8D15E645749) e [SEND REPLICAT](/pls/topic/lookup?ctx=en/database/goldengate/core/26/coredoc&id=GCLIR-GUID-DBA8F45C-6016-4AB4-BF9A-00C117029E7F).

Nota: anche il comando INFO restituisce una statistica di ritardo, ma questa statistica viene ricavata dall'ultimo record sottoposto a checkpoint, non dal record corrente in fase di elaborazione. È meno accurato di LAG o INFO.

Monitoraggio del ritardo mediante tabelle heartbeat automatiche

È possibile utilizzare la funzionalità predefinita per la tabella degli heartbeat automatici per monitorare il ritardo della replica end-to-end. Gli heartbeat automatici vengono inviati da ciascun database di origine nei flussi di replica aggiornando i record in una tabella di avvio heartbeat e una tabella heartbeat e creando un valore heartbeat history table. Ciascuno dei processi di replica nel percorso di replica elabora questi record di heartbeat e aggiorna le informazioni in essi contenute. Questi record heartbeat vengono inseriti o aggiornati nella tabella heartbeat dei database di destinazione.

Le tabelle heartbeat contengono le informazioni indicate di seguito.

Utilizzando le informazioni nella tabella di heartbeat e nella tabella di cronologia di heartbeat, è possibile calcolare i ritardi correnti e cronologici in ciascuna replica.

Replicat può tenere traccia della posizione di riavvio corrente di Extract con tabelle di heartbeat automatiche (LOGBSN). Ciò consente di rigenerare i file trail dal database di origine, se necessario, riducendo al minimo il periodo di conservazione dei redo log del database di origine. Inoltre, tenendo traccia della posizione di riavvio Extract più recente, è possibile rimuovere più frequentemente le tabelle delle pietre tombali per le tabelle ACDR (Conflict Detection and Resolution) automatiche.

In una configurazione bidirezionale, la tabella di heartbeat contiene un numero di voci pari al numero di percorsi di replica per i vicini di casa del database e, in un'impostazione unidirezionale, la tabella nell'origine è vuota. Le colonne in uscita hanno gli indicatori orari e il percorso in uscita, l'estrazione locale e i processi a valle. Le colonne in entrata hanno gli indicatori orari e il percorso dei processi a monte e Replicat locale.

In una configurazione unidirezionale, il database di destinazione popolerà solo le colonne in entrata nella tabella di heartbeat.

Nota: la funzionalità Heartbeat automatico non è supportata in MySQL versione 5.5.

Flusso di replica end-to-end della tabella heartbeat

Il processo di replica end-to-end per le tabelle di heartbeat si basa sull'uso del formato trail di Oracle GoldenGate. Il processo viene illustrato di seguito.


Aggiungere una tabella di heartbeat a ciascun database con il comando ADD HEARTBEATTABLE. Aggiungere la tabella di heartbeat a tutte le istanze di origine e destinazione, quindi riavviare i processi Oracle GoldenGate esistenti per abilitare la funzionalità di heartbeat. A seconda del database, potrebbe essere necessario creare o abilitare un job per popolare i dati della tabella di heartbeat.

Vedere il seguente esempio:

DBLOGIN USERIDALIAS *alias*  [DOMAIN domain]|[SYSDBA | SQLID sqlid][SESSIONCHARSET character_set]}
ADD HEARTBEATTABLE

(Facoltativo) Per i database Oracle, è necessario assicurarsi che Oracle DBMS_SCHEDULER funzioni correttamente mentre l'aggiornamento dell'heartbeat si basa su di esso. È possibile eseguire una query su DBMS_SCHEDULER emettendo:

SELECT START_DATE, LAST_START_DATE, NEXT_RUN_DATE
FROM DBA_SCHEDULER_JOBS

Dove job_name ='GG_UPDATE_HEARTBEATS';

Quindi cercare voci valide per NEXT_RUN_DATE, che è la prossima volta che lo scheduler verrà eseguito. Se si tratta di un indicatore orario nel passato, non verrà eseguito alcun job ed è necessario correggerlo.

Un motivo comune per cui lo scheduler non funziona è quando il parametro job_queue_processes è impostato su un valore troppo basso (in genere zero). Aumentare il numero di job_queue_processes configurati nel database con il comando ALTER SYSTEM SET JOB_QUEUE_PROCESSES = ##;, dove ## è il numero di processi della coda di job.


Eseguire un'estrazione che, alla ricezione dei record di modifica logica (LCR), controlla il valore nella colonna OUTGOING_EXTRACT.



Il servizio di distribuzione durante la lettura del record controlla il valore nella colonna OUTGOING_ROUTING_PATH. Questa colonna contiene un elenco di percorsi di distribuzione.

Se il valore è NULL, la colonna viene aggiornata con il nome del gruppo corrente (e il percorso se si tratta di un servizio di distribuzione),"*", aggiornare la colonna OUTGOING_ROUTING_TS e il record viene scritto nel relativo file trail di destinazione.

Se il valore contiene un valore "*" nell'elenco, sostituirlo con group name[:pathname],"*"', aggiornare la colonna OUTGOING_ROUTING_TS e il record viene scritto nel relativo file trail di destinazione. Se il valore non contiene un asterisco (*) nell'elenco e il nome del percorso di distribuzione è incluso nell'elenco, il record viene inviato al percorso specificato nella coppia group name[:pathname],"*"' pertinente nell'elenco. Se il nome del percorso di distribuzione non è presente nell'elenco, il record viene eliminato.

Eseguire un Replicat, che alla ricezione del record controlla il valore nella colonna OUTGOING_REPLICAT.

Ulteriori considerazioni:

Il calcolo è in ritardo poiché il battito cardiaco scorre attraverso il sistema si basa sugli orologi dei sistemi di origine e di destinazione da impostare correttamente. È possibile che il ritardo possa essere negativo se il sistema di destinazione è anteriore al sistema di origine. Il ritardo viene visualizzato come un numero negativo in modo che tu sia a conoscenza della loro discrepanza di clock e possa intraprendere azioni per risolverlo.

L'indicatore orario che scorre nel sistema è in UTC. Non esiste un fuso orario associato all'indicatore orario. Pertanto, quando si visualizzano le tabelle di heartbeat, il ritardo può essere visualizzato rapidamente anche se componenti diversi si trovano in fusi orari diversi. È possibile scrivere qualsiasi vista che si desidera sopra le tabelle sottostanti; UTC è consigliato.

Tutte le voci di heartbeat vengono scritte nel trail in UTF-8.

I percorsi in uscita e in entrata insieme determinano in modo univoco una riga. Ciò significa che se si dispone di due righe con lo stesso percorso in uscita e un percorso in entrata diverso, vengono considerate due voci univoche.

Dettagli tabella heartbeat

La tabella GG_HEARTBEAT visualizza le informazioni sull'indicatore orario dell'ora di replica end-to-end e le informazioni sulla tempistica nei diversi componenti Extract e Replicat primario e secondario.

In un ambiente unidirezionale, solo il database di destinazione contiene informazioni sul ritardo di replica. Indica il momento in cui un record viene generato nel database di origine e diventa visibile ai client nel database di destinazione. Nota: le tabelle di heartbeat automatiche non inseriscono dati nelle colonne OUTGOING_% quando sia i database di origine che quelli remoti hanno lo stesso nome. Per modificare il nome del database, utilizzare la utility DBNEWID. Per informazioni dettagliate, vedere la utility DBNEWID.

Colonna Tipo di dati Descrizione
LOCAL_DATABASE VARCHAR2 Database locale in cui viene misurato il tempo di replica dal database remoto.
HEARTBEAT_TIMESTAMP TIMESTAMP(6) Il point-in-time in cui viene generato un indicatore orario nel database remoto.
REMOTE_DATABASE VARCHAR2 Database remoto in cui viene generato l'indicatore orario
INCOMING_EXTRACT VARCHAR2 Nome dell'estrazione primaria (acquisizione) nel database remoto
INCOMING_ROUTING_PATH VARCHAR2 Nome dell'estrazione secondaria (pump) nel database remoto
INCOMING_REPLICAT VARCHAR2 Nome del Replicat nel database locale.
INCOMING_HEARTBEAT_TS TIMESTAMP(6) Indicatore orario finale quando le informazioni vengono inserite nella tabella GG_HEARTBEAT nel database locale.
INCOMING_EXTRACT_TS TIMESTAMP(6) L'indicatore orario dell'indicatore orario generato viene elaborato dall'estrazione primaria nel database remoto.
INCOMING_ROUTING_TS TIMESTAMP(6) L'indicatore orario dell'indicatore orario generato viene elaborato dall'estrazione secondaria nel database remoto.
INCOMING_REPLICAT_TS TIMESTAMP(6) L'indicatore orario dell'indicatore orario generato viene elaborato da Replicat nel database locale.
OUTGOING_EXTRACT VARCHAR2 Replica bidirezionale/a vie: nome dell'estrazione primaria nel database locale.
OUTGOING_ROUTING_PATH VARCHAR2 Replica bidirezionale/a vie: nome dell'estrazione secondaria nel database locale.
OUTGOING_REPLICAT VARCHAR2 Replica bidirezionale/di tipo N-way: nome del Replicat nel database remoto.
OUTGOING_HEARTBEAT_TS TIMESTAMP(6) Replica bidirezionale/N-way: indicatore orario finale quando le informazioni vengono inserite nella tabella nel database remoto.
OUTGOING_EXTRACT_TS TIMESTAMP(6) Replica bidirezionale/unidirezionale: l'indicatore orario dell'indicatore orario generato viene elaborato dall'estrazione primaria nel database locale.
OUTGOING_ROUTING_TS TIMESTAMP(6) Replica bidirezionale/direzionale: l'indicatore orario dell'indicatore orario generato viene elaborato dall'estrazione secondaria sul database locale.
OUTGOING_REPLICAT_TS TIMESTAMP(6) Replica bidirezionale/direzionale: l'indicatore orario dell'indicatore orario generato viene elaborato da Replicat nel database remoto.
INCOMING_REPLICAT_LW_CSN VARCHAR2 -
INCOMING_EXTRACT_HEARTBEAT_CSN VARCHAR2 -
INCOMING_EXTRACT_RESTART_CSN VARCHAR2 -
INCOMING_EXTRACT_RESTART_TS TIMESTAMP(6) -

La tabella GG_HEARTBEAT_HISTORY visualizza le informazioni cronologiche sull'indicatore orario dell'ora di replica end-to-end e le informazioni sulla tempistica nei diversi componenti Extract e Replicat primario e secondario.

In un ambiente unidirezionale, solo il database di destinazione contiene informazioni sul ritardo di replica.

Gli indicatori orari vengono gestiti nel fuso orario UTC. Indica il momento in cui un record viene generato nel database di origine e diventa visibile ai client nel database di destinazione.

Colonna Tipo di dati Descrizione
LOCAL_DATABASE VARCHAR2 Database locale in cui viene misurato il ritardo end-to-end.
HEARTBEAT_RECEIVED_TS TIMESTAMP(6) Indica il momento in cui un indicatore orario del database remoto viene ricevuto nel database locale.
REMOTE_DATABASE VARCHAR2 Database remoto in cui viene generato l'indicatore orario.
INCOMING_EXTRACT VARCHAR2 Nome dell'estrazione primaria nel database remoto.
INCOMING_ROUTING_PATH VARCHAR2 Nome dell'estrazione secondaria del database remoto.
INCOMING_REPLICAT VARCHAR2 Nome del Replicat nel database locale.
INCOMING_HEARTBEAT_TS TIMESTAMP(6) Indicatore orario finale quando le informazioni vengono inserite nella tabella GG_HEARTBEAT_HISTORY del database locale.
INCOMING_EXTRACT_TS TIMESTAMP(6) Indicatore orario durante l'elaborazione dell'indicatore orario generato da Extract primario nel database remoto.
INCOMING_ROUTING_TS TIMESTAMP(6) Indicatore orario quando l'indicatore orario generato viene elaborato dall'estrazione secondaria nel database remoto.
INCOMING_REPLICAT_TS TIMESTAMP(6) Indicatore orario quando l'indicatore orario generato viene elaborato da Replicat nel database locale.
OUTGOING_EXTRACT VARCHAR2 Replica bidirezionale/di tipo N-way: nome dell'estrazione primaria dal database locale.
OUTGOING_ROUTING_PATH VARCHAR2 Replica bidirezionale/di tipo N-way: nome dell'estrazione secondaria dal database locale.
OUTGOING_REPLICAT VARCHAR2 Replica bidirezionale/di tipo N-way: nome del Replicat nel database remoto.
OUTGOING_HEARTBEAT_TS TIMESTAMP(6) Replica bidirezionale/a modalità N: indicatore orario finale quando le informazioni vengono inserite in modo persistente nella tabella del database remoto.
OUTGOING_EXTRACT_TS TIMESTAMP(6) Replica bidirezionale/direzionale: indicatore orario quando l'indicatore orario generato viene elaborato dall'estrazione primaria nel database locale.
OUTGOING_ROUTING_TS TIMESTAMP(6) Replica bidirezionale/direzionale: indicatore orario quando l'indicatore orario generato viene elaborato dall'estrazione secondaria nel database locale.
OUTGOING_REPLICAT_TS TIMESTAMP(6) Replica bidirezionale/direzionale: indicatore orario quando l'indicatore orario generato viene elaborato da Replicat nel database remoto.
REPLICAT_LOW_WATERMARK_CSN String Questa colonna viene popolata da Replicat quando elabora questo record di heartbeat. Questa colonna viene popolata con la filigrana bassa corrente (LWM) durante l'elaborazione del record. Questo ci permette di scegliere un LOGBSN da un record di heartbeat che è come del Replicat LWM.
SOURCE_EXTRACT_HEARTBEAT_CSN String Questa colonna viene popolata da Extract e contiene l'SCN di commit di origine per la transazione heartbeat nel database di origine. Il job heartbeat nel database di origine non può popolare questo valore in quanto non conoscerà il commit SCN apriori.
SOURCE_EXTRACT_RESTART_CSN String Questa colonna verrà popolata da Extract e conterrà il LOGBSN corrente quando Extract elabora questo particolare record di heartbeat. Il job heartbeat nel database di origine non popolerà questo valore.
SOURCE_EXTRACT_RESTART_CSN_TS TIMESTAMP Questa colonna verrà popolata da Extract e conterrà l'indicatore orario di redo in UTC che corrisponde al LOGBSN corrente quando Extract elabora questo particolare record di heartbeat. Il job heartbeat nel database di origine non popolerà questo valore.

La vista GG_LAG visualizza informazioni sul ritardo di replica tra i database locali e remoti.

In un ambiente unidirezionale, solo il database di destinazione contiene informazioni sul ritardo di replica. Il ritardo viene misurato in secondi.

Colonna Tipo di dati Descrizione
LOCAL_DATABASE VARCHAR2 Database locale in cui viene misurato il ritardo della replica end-to-end dal database remoto.
CURRENT_LOCAL_TS TIMESTAMP(6) Indicatore orario corrente del database locale.
REMOTE_DATABASE VARCHAR2 Database remoto in cui viene generato l'indicatore orario.
INCOMING_HEARTBEAT_AGE NUMBER L'età dell'heartbeat più recente ricevuto dal database remoto.
INCOMING_PATH VARCHAR2 Percorso di replica dal database remoto al database locale con i componenti Extract e Replicat.
INCOMING_LAG NUMBER Ritardo di replica dal database remoto al database locale. Questo è il momento in cui l'heartbeat generato nel database remoto meno l'ora in cui le informazioni sono state inserite in modo persistente nella tabella nel database locale.
OUTGOING_HEARTBEAT_AGE NUMBER L'età dell'heartbeat più recente dal database locale al database remoto.
OUTGOING_PATH VARCHAR2 Percorso di replica dal database locale al database remoto con componenti Extract e Replicat
OUTGOING_LAG NUMBER Ritardo di replica dal database locale al database remoto. Questo è il momento in cui l'heartbeat generato nel database locale meno il momento in cui le informazioni sono state inserite in modo persistente nella tabella nel database remoto.
REMOTE_EXTRACT_RESTART_CSN String Posizione riavvio estrazione origine.
REMOTE_DATABASE DB_UNIQUE_NAME String Viene visualizzato il nome univoco del database remoto. Se non esiste un nome univoco, viene visualizzato il valore DB_NAME.
REMOTE_EXTRACT_RESTART_CSN_TIME Timestamp Indicatore orario associato alla posizione redo Extract di origine.
REMOTE_DB_OLDEST_OPEN_TXN_AGE Timestamp Durata della transazione aperta meno recente nel database di origine che Extract sta elaborando. Questa colonna può essere calcolata come SYSTIMESTAMP - REMOTE_EXTRACT_RESTART_TIME.
LOCAL_REPLICAT_LWM_CSN String Bassa filigrana CSN del Replicat locale quando ha elaborato l'heartbeat.

La vista GG_LAG_HISTORY visualizza le informazioni sulla cronologia dei ritardi di replica tra i database locali e remoti.

In un ambiente unidirezionale, solo il database di destinazione contiene informazioni sul ritardo di replica.

L'unità delle unità di ritardo è espressa in secondi.

Colonna Tipo di dati Descrizione
LOCAL_DATABASE VARCHAR2 Database locale in cui viene misurato il ritardo della replica end-to-end dal database remoto.
HEARTBEAT_RECEIVED_TS TIMESTAMP(6) Indica il momento in cui un indicatore orario del database remoto viene ricevuto nel database locale.
REMOTE_DATABASE VARCHAR2 Database remoto in cui viene generato l'indicatore orario.
DB_NAME Stringa Nome database remoto.
DB_UNIQUE_NAME Stringa Nome univoco database remoto. Se il nome univoco del database non esiste, DB_NAME e DB_UNIQUE_NAME saranno uguali. In uno scenario di switchover in standby, db_unique_name verrà modificato, ma il percorso db_name e di replica rimangono invariati
INCOMING_HEARTBEAT_AGE NUMBER L'età della tabella heartbeat.
INCOMING_PATH VARCHAR2 Percorso di replica dal database remoto al database locale con i componenti Extract e Replicat.
INCOMING_LAG NUMBER Ritardo di replica dal database remoto al database locale. Ora in cui l'heartbeat è stato generato nel database remoto meno l'ora in cui le informazioni sono state inserite in modo persistente nella tabella del database locale.
OUTGOING_HEARTBEAT_AGE NUMBER  
OUTGOING_PATH VARCHAR2 Percorso di replica dal database locale al database remoto con i componenti Extract e Replicat.
OUTGOING_LAG NUMBER Ritardo di replica dal database locale al database remoto. Ora in cui è stato generato l'heartbeat nel database locale meno l'ora in cui le informazioni sono state inserite in modo persistente nella tabella del database remoto.
REMOTE_EXTRACT_RESTART_CSN String Posizione riavvio estrazione origine.
REMOTE_EXTRACT_RESTART_CSN_TIME TIMESTAMP Indicatore orario associato alla posizione redo Extract di origine.
REMOTE_DB_OLDEST_OPEN_TXN_AGE TIMESTAMP Durata della transazione aperta meno recente nel database di origine che Extract sta elaborando. Questa colonna può essere calcolata come segue: SYSTIMESTAMP - REMOTE_EXTRACT_RESTART_TIME
LOCAL_REPLICAT_LWM_CSN String Bassa filigrana CSN del Replicat locale quando ha elaborato l'heartbeat.
INCOMING_EXTRACT_LAG - -
INCOMING_ROUTINE_LAG - -
INCOMING_REPLICAT_READ_LAG - -
INCOMING_REPICAT_LAG - -
OUTGOING_EXTRACT_LAG - -
OUTGOING_ROUTINE_LAG - -
OUTGOING_REPLICAT_READ_LAG - -
OUTGOING_REPLICAT_LAG - -

Aggiorna tabelle heartbeat

La colonna HEARTBEAT_TIMESTAMP nella tabella iniziale di heartbeat deve essere aggiornata periodicamente da un job di database. L'intervallo di heartbeat predefinito è 1 minuto e questo intervallo può essere specificato o sostituito utilizzando la riga di comando o l'interfaccia Web del servizio di amministrazione.

Per Oracle AI Database, il job del database viene creato automaticamente.

Per PostgreSQL, è possibile impostare un task automatico per aggiornare la tabella di heartbeat. Vedere Configura task di automazione per aggiornare la tabella di heartbeat per PostgreSQL.

Per tutti gli altri database supportati, è necessario creare job in background per aggiornare l'indicatore orario di heartbeat utilizzando la funzionalità scheduler specifica del database.

Vedere [ADD HEARTBEATTABLE](/pls/topic/lookup?ctx=en/database/goldengate/core/26/coredoc&id=GCLIR-GUID-126E30A2-DC7A-4C93-93EC-0EB8BA7C13CB), [ALTER HEARTBEATTABLE](/pls/topic/lookup?ctx=en/database/goldengate/core/26/coredoc&id=GCLIR-GUID-08BC29F9-8A5D-4AD9-B355-528A270EECC8) per i dettagli sull'aggiornamento della tabella degli heartbeat.

Configurare il task di automazione per aggiornare la tabella degli heartbeat per PostgreSQL

L'interfaccia Web Oracle GoldenGate for PostgreSQL fornisce la funzionalità per creare un job cron per l'aggiornamento periodico della tabella di heartbeat.

Di seguito sono riportati i passaggi per creare questo task dall'interfaccia Web.

  1. Dal riquadro di navigazione a sinistra, espandere Task e selezionare l'opzione Aggiorna task heartbeat.

    \

    Opzione Task automazione per aggiornare l'heartbeat per PostgreSQL

    \

  2. Fare clic sul segno più nella pagina Aggiorna task heartbeat. Viene visualizzata la finestra di dialogo Crea un nuovo task heartbeat.\

    Creare una nuova finestra di dialogo Aggiorna task di heartbeat con le opzioni per scegliere l'alias delle credenziali del database, il dominio e specificare un intervallo di frequenza per eseguire l'aggiornamento automatico della tabella di heartbeat.

  3. Specificare i seguenti valori nella finestra di dialogo e fare clic su Sottometti:

    • Nome: specificare un nome per il task.

    • Dominio credenziali: selezionare il nome del dominio dall'elenco a discesa.

    • Alias credenziale: selezionare l'alias credenziale per l'istanza di database PostgreSQL per la quale si sta creando il task Aggiorna heartbeat.

    • Intervallo frequenza: specificare l'intervallo di frequenza per l'esecuzione del task di aggiornamento. Il valore minimo è 60 (impostazione predefinita) e il valore maxium può essere impostato su 7999.

Per modificare o eliminare un task Aggiorna heartbeat, è possibile effettuare le seguenti operazioni: 1. Dal riquadro di navigazione a sinistra dell'interfaccia del servizio di amministrazione, selezionare Task.

  1. Fare clic su Aggiorna task heartbeat. Viene visualizzato un elenco di task di aggiornamento heartbeat esistenti.

  2. Nella colonna Azioni fare clic sull'icona matita. Viene visualizzata la finestra di dialogo Modifica task di aggiornamento heartbeat.

  3. È possibile modificare o modificare il dominio delle credenziali, l'alias o l'intervallo di frequenza e fare clic su Sottometti. Il task Aggiorna heartbeat modificato è elencato nella pagina Aggiorna task heartbeat.

  4. Per eliminare un task, fare clic sull'icona Elimina nella colonna Azioni del task. Fare clic su OK per confermare l'eliminazione.

Rimuovi tabelle cronologia heartbeat

La tabella della cronologia di heartbeat viene rimossa periodicamente utilizzando un job. L'intervallo predefinito è 30 giorni e questo intervallo può essere specificato o sostituito utilizzando un inteface della riga di comando, ad esempio Client di amministrazione o l'interfaccia Web del servizio di amministrazione.

Per Oracle AI Database, il job del database viene creato automaticamente.

Per tutti gli altri database supportati, è necessario creare job in background per rimuovere la tabella della cronologia di heartbeat utilizzando la funzionalità scheduler specifica del database.

Procedura ottimale

Oracle consiglia di effettuare le seguenti operazioni:

Utilizzo dei comandi heartbeat automatico

È possibile utilizzare i comandi della tabella degli heartbeat per controllare la funzionalità automatica di heartbeat di Oracle GoldenGate come indicato di seguito.

Comando Descrizione
ADD HEARTBEATTABLE Crea le tabelle di heartbeat necessarie per la funzionalità di heartbeat automatico, incluse le colonne LOGBSN.
ALTER HEARTBEATTABLE Modifica gli oggetti di heartbeat esistenti.
ALTER HEARTBEATTABLE UPGRADE Modifica le tabelle di heartbeat per aggiungere le colonne LOGBSN alle tabelle di heartbeat. Questa opzione è facoltativa.
DELETE HEARTBEATTABLE Elimina gli oggetti di heartbeat esistenti.
DELETE HEARTBEATENTRY Elimina le voci della tabella di heartbeat.
INFO HEARTBEATTABLE Visualizza le informazioni relative alla tabella di heartbeat.

Ritardo reporting

È possibile accedere ai report di ritardo dal servizio di amministrazione. È possibile impostare un task Report sfasamento per generare automaticamente report di sfasamento per una determinata titolarità ed emettere avvertenze se il valore di sfasamento supera la soglia specificata. Per impostare un task automatico per la generazione di report di ritardo: 1. Nel riquadro di navigazione a sinistra del servizio di amministrazione, fare clic su Task e selezionare Report flag.

  1. La colonna Azione contiene tutte le opzioni per eliminare, modificare, aggiornare e visualizzare i dettagli del task del report di ritardo.

  2. Selezionare l'opzione desiderata.

  3. Se si seleziona l'opzione Modifica task, vengono visualizzate le opzioni per modificare il report di ritardo. Le opzioni disponibili sono:

    • Abilitato: consente di continuare l'elaborazione del task del report di ritardo.

    • Selezionare Ogni (in minuti): per impostare un intervallo di tempo per controllare il report di ritardo.

    • Report: per generare automaticamente un report di ritardo se la soglia specificata viene superata. È possibile specificare il valore di soglia nella casella Se supera.

    • Se supera: consente di specificare una soglia dopo la quale verrà avviata un'avvertenza. Il valore può essere secondi, minuti o ore.

    • Avvertenza: consente di generare un'avvertenza nel caso in cui la soglia di ritardo superi la soglia specificata.

    • Quando supera: la soglia di ritardo dopo la quale viene attivata l'avvertenza.

  4. Fare clic su Sottometti.

Identificazione del ritardo in Replicat

Per identificare il ritardo nel processo Replicat e modificare le colonne di una tabella:

  1. Sospendere l'attività nel database di origine per tutte le tabelle collegate a Oracle GoldenGate.

  2. Avvia client di amministrazione.

  3. Eseguire questo comando per il gruppo Replicat:

INFO REPLICAT *group*
  1. Sulla riga Checkpoint Lag, verificare se esiste un ritardo Replicat. Se necessario, continuare a emettere INFO REPLICAT fino a quando il ritardo non è pari a zero, il che indica che tutti i dati nel trail sono stati elaborati.

  2. Arrestare il gruppo Replicat.

STOP REPLICAT *group*
  1. Eseguire le modifiche della tabella nei database di destinazione.

  2. Avviare il processo Replicat.

START REPLICAT *group*
  1. Consente all'attività utente di riprendere su tutte le tabelle di origine collegate a Oracle GoldenGate.