Istanza di Oracle CDCThe Oracle CDC Instance

L'istanza di Oracle CDC è un processo creato dal servizio Oracle CDC per elaborare le modifiche acquisite da un solo database di origine Oracle.The Oracle CDC Instance is a process created by the Oracle CDC Service to process changes captured from a single Oracle source database. Tramite l'istanza di Oracle CDC viene recuperata la configurazione dalla tabella cdc.xdbcdc_config e viene gestito lo stato nella tabella cdc.xdbcdc_state .The Oracle CDC Instance retrieves its configuration from the cdc.xdbcdc_config table and maintains its state in the cdc.xdbcdc_state table. Queste tabelle fanno parte del database CDC che definisce l'istanza di Oracle CDC.These tables are part of the CDC database, which defines the Oracle CDC Instance. Per ulteriori informazioni sul database e le tabelle xdbcdc, vedere The CDC Databases.For more information about the xdbcdc database and tables see The CDC Databases.

Di seguito vengono descritte le attività eseguite dall'istanza di Oracle CDC:The following describes the tasks carried out by the Oracle CDC instance:

  • Gestione della verifica dell'avvio del servizio: all'avvio, tramite l'istanza di CDC viene caricata la configurazione dalla tabella xdbcdc_config e viene eseguita una serie di verifiche dello stato per controllare che lo stato persistente dell'istanza di CDC sia coerente e che sia possibile avviare l'elaborazione delle modifiche.Handling service startup verification: When started, the CDC instance loads its configuration from the xdbcdc_config table and performs a series of status verifications that ensure that the CDC instance persisted state is consistent and that it can start processing changes.

  • Preparazione per l'acquisizione delle modifiche: al completamento della verifica, tramite l'istanza di Oracle CDC vengono analizzate tutte le istanze di acquisizione attualmente definite e vengono preparate le query Oracle LogMiner e altre strutture di supporto necessarie per l'acquisizione delle modifiche.Preparing for change capture: When the verification passes successfully, the Oracle CDC Instance scans all of the capture instances currently defined and prepares the Oracle LogMiner queries and other support structures required for change capture. Inoltre, viene ricaricato lo stato di acquisizione interno salvato all'ultima esecuzione dell'istanza di Oracle CDC.In addition, the Oracle instance re-loads the internal capture state that was saved the last time the Oracle CDC Instance run.

  • Acquisizione delle modifiche da Oracle: tramite l'istanza di Oracle CDC le modifiche da Oracle vengono riunite in pool mediante la struttura Oracle LogMiner e ordinate in base al commit della transazione, viene modificata l'ora di una transazione, quindi le modifiche vengono scritte nelle tabelle delle modifiche di SQL ServerSQL Server nel database CDC.Capturing changes from Oracle: The Oracle CDC Instance pools changes from Oracle by means of the Oracle LogMiner facility, orders them in according to transaction commit, and then changes the time in a transaction and writes them to the SQL ServerSQL Server change tables in the CDC database.

  • Gestione dell'arresto del servizio: il ciclo di vita dell'istanza di Oracle CDC viene gestito dal servizio Oracle CDC.Handling service shutdown: The life cycle of the Oracle CDC Instance is managed by the Oracle CDC Service. Quando è richiesto l'arresto dell'istanza di Oracle CDC, vengono effettuate le attività seguenti:When the Oracle CDC Instance is requested to shut down, it performs the following tasks:

    • Viene arrestata la lettura del log delle transazioni Oracle.Stops reading from the Oracle transaction log.

    • Viene arrestata la scrittura delle transazioni Oracle completate nel database CDC.Stops writing completed Oracle transactions to the CDC database.

    • Viene attesa la fine della scrittura della transazione corrente nel database CDC per un massimo di 30 secondi, se necessario.Waits for up to 30 seconds (if necessary) until the current transaction finishes writing to the CDC database. Se trascorrono più di 30 secondi, la scrittura viene annullata e viene eseguito il rollback della transazione (da tentare nuovamente al riavvio dell'istanza di CDC).If more than 30 seconds pass, the writing is cancelled and transaction is rolled back (to be retried when the CDC instance is restarted).

    • In un thread separato, viene scritto il numero più alto possibile di record memorizzati nella cache nella tabella delle transazioni gestite temporaneamente per un massimo di 30 secondi (dalla transazione meno recente alla più recente), quindi viene aggiornata la tabella xdbcdc_state e viene eseguito il commit di tutte le modifiche.In a separate thread, writes as many memory-cached records as possible to the staged transactions table for up to 30 seconds (from the oldest transaction to the newest), then updates the xdbcdc_state table and commits all the changes.

  • Gestione delle modifiche della configurazione: viene inviata una notifica all'istanza di Oracle CDC relativamente alle modifiche della configurazione dal servizio CDC o mediante il rilevamento di una nuova versione nella tabella cdc.xdbcdc_config .Handling configuration changes: The Oracle CDC Instance is notified about configuration changes either from the CDC Service or by detecting a new version in the cdc.xdbcdc_config table. La maggior parte delle modifiche non richiede il riavvio dell'istanza di Oracle CDC (ad esempio l'aggiunta o la rimozione delle istanze di acquisizione).Most changes do not require the restart of the Oracle CDC Instance (for example, adding or removing capture instances). Alcune modifiche, tuttavia, ad esempio la modifica della stringa di connessione Oracle o delle credenziali di accesso richiedono il riavvio dell'istanza di CDC.However, some changes, such as changing the Oracle connection string or access credentials do require the restart of the CDC Instance.

  • Gestione del recupero: all'avvio di un'istanza di Oracle CDC, il relativo stato interno viene ripristinato dalle tabelle xdbcdc_state e xdbcdc_staged_transactions .Handling recovery: When an Oracle CDC Instance starts its internal state is restored from the xdbcdc_state and the xdbcdc_staged_transactions tables. Una volta ripristinato lo stato, il processo dell'istanza di CDC prosegue nel modo consueto.Once the state is restored, the CDC instance proceeds as usual.

Vedere ancheSee Also

Gestione degli erroriError Handling