Ottimizzazione delle prestazioni per i server di pubblicazione OraclePerformance Tuning for Oracle Publishers

L'architettura di pubblicazione Oracle è simile all'architettura di pubblicazione di MicrosoftMicrosoft SQL ServerSQL Server , pertanto per ottimizzare le prestazioni della replica è necessario innanzitutto seguire le indicazioni generali disponibili in Enhance General Replication Performance.The Oracle publishing architecture is similar to the MicrosoftMicrosoft SQL ServerSQL Server publishing architecture; therefore the first step in tuning Oracle replication for performance requires following the general tuning recommendations found in Enhance General Replication Performance.

Sono inoltre disponibili due opzioni per i server di pubblicazione Oracle relative alle prestazioni:In addition there are two options for Oracle Publishers that are performance related:

  • Impostazione dell'opzione di pubblicazione appropriata: Oracle o Oracle Gateway.Specifying the appropriate publishing option: Oracle or Oracle Gateway.

  • Configurazione del processo del set di transazioni in modo che le modifiche vengano elaborate sul server di pubblicazione a intervalli appropriati.Configuring the transaction set job to process changes on the Publisher at an appropriate interval.

Impostazione dell'opzione di pubblicazione appropriataSpecifying the Appropriate Publishing Option

L'opzione Oracle Gateway offre prestazioni migliori rispetto all'opzione Oracle Complete, ma non è possibile utilizzarla per pubblicare la stessa tabella in più pubblicazioni transazionali.The Oracle Gateway option provides improved performance over the Oracle Complete option; however, this option cannot be used to publish the same table in multiple transactional publications. Una tabella può essere visualizzata al massimo in una pubblicazione transazionale e in qualsiasi numero di pubblicazioni snapshot.A table can appear in at most one transactional publication and any number of snapshot publications. Se è necessario pubblicare la stessa tabella in più pubblicazioni transazionali, scegliere l'opzione Oracle Complete.If you need to publish the same table in multiple transactional publications, choose the Oracle Complete option. Specificare questa opzione quando si identifica il server di pubblicazione Oracle nel server di distribuzione SQL ServerSQL Server .Specify this option when identifying the Oracle Publisher at the SQL ServerSQL Server Distributor. Per altre informazioni, vedere Create a Publication from an Oracle Database.For more information, see Create a Publication from an Oracle Database.

Configurazione del processo del set di transazioniConfiguring the Transaction Set Job

Le modifiche apportate alle tabelle Oracle pubblicate vengono elaborate in gruppi definiti set di transazioni.Changes to published Oracle tables are processed in groups called transaction sets. Per garantire la consistenza transazionale, viene eseguito il commit di ogni set di transazioni come una singola transazione nel database di distribuzione.To ensure transactional consistency, each transaction set is committed as a single transaction at the distribution database. Se le dimensioni del set di transazioni diventano eccessive, non sarà possibile elaborarlo in modo efficiente come una singola transazione.If the transaction set becomes too large, it cannot be processed efficiently as a single transaction.

Per impostazione predefinita, i set di transazioni vengono creati solo dall'agente di lettura log.By default, transaction sets are created only by the Log Reader Agent. Se durante i periodi di elevata attività di modifica l'agente di lettura log non viene eseguito o non è in grado di stabilire una connessione dal server di distribuzione SQL ServerSQL Server al server di pubblicazione Oracle, i set di transazioni possono raggiungere dimensioni ingestibili.If, during periods of high change activity, the Log Reader Agent does not run or cannot connect from the SQL ServerSQL Server Distributor to the Oracle Publisher, transaction sets can become unmanageably large. Per evitare questo problema, verificare che i set di transazioni vengano creati a intervalli regolari, anche se l'agente di lettura log non viene eseguito o non è in grado di stabilire una connessione dal server di pubblicazione Oracle.To prevent this problem, ensure that transaction sets are created at regular intervals, even if the Log Reader Agent does not run or cannot connect to the Oracle Publisher.

I set di transazioni possono essere creati tramite il processo Xactset, un processo del database Oracle installato dalla replica, che utilizza lo stesso meccanismo adottato dall'agente di lettura log per creare i set.Transaction sets can be created with the Xactset job (an Oracle database job installed by replication), which uses the same mechanism that the Log Reader Agent does to create sets. Ogni volta che il processo viene eseguito, viene creata una nuova transazione.Each time the job runs, a new transaction set is created. Alla successiva esecuzione dell'agente di lettura log vengono elaborati tutti i set creati.The next time that the Log Reader Agent runs, the agent processes any sets that have been created. Se dopo l'elaborazione di tutti i set di transazioni esistenti risultano ancora modifiche in sospeso, l'agente di lettura log crea ed elabora uno o più set di transazioni aggiuntivi.If there are still pending changes after all existing transaction sets have been processed, the Log Reader Agent creates and processes one or more additional transaction sets.

Per configurare il processo del set di transazioni, vedere Configurare il processo del set di transazioni per un server di pubblicazione Oracle (programmazione Transact-SQL della replica).To configure the transaction set job, see Configure the Transaction Set Job for an Oracle Publisher (Replication Transact-SQL Programming).

Vedere ancheSee Also

Configurare un server di pubblicazione Oracle Configure an Oracle Publisher
Oracle Publishing Overview Oracle Publishing Overview