Oracle 게시자를 위한 성능 튜닝Performance Tuning for Oracle Publishers

이 항목 적용 대상: 예SQL Server없습니다Azure SQL 데이터베이스없습니다Azure SQL 데이터 웨어하우스 없습니다 병렬 데이터 웨어하우스THIS TOPIC APPLIES TO: yesSQL ServernoAzure SQL DatabasenoAzure SQL Data Warehouse noParallel Data Warehouse Oracle 게시 아키텍처는 MicrosoftMicrosoft SQL ServerSQL Server 게시 아키텍처와 유사하므로 성능을 개선하기 위한 Oracle 복제 튜닝의 첫 단계는 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.

또한 Oracle 게시자 성능과 관련된 다음 두 가지 방법을 사용할 수 있습니다.In addition there are two options for Oracle Publishers that are performance related:

  • Oracle 또는 Oracle Gateway 중에서 적절한 게시 옵션 지정Specifying the appropriate publishing option: Oracle or Oracle Gateway.

  • 적절한 간격으로 게시자의 변경 내용을 처리하도록 트랜잭션 세트 작업 구성Configuring the transaction set job to process changes on the Publisher at an appropriate interval.

적절한 게시 옵션 지정Specifying the Appropriate Publishing Option

Oracle Gateway 옵션은 Oracle Complete 옵션을 사용할 때보다 더 나은 성능을 제공하지만 여러 트랜잭션 게시에서 동일한 테이블을 게시할 때는 사용할 수 없습니다.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. 트랜잭션 게시의 경우 특정 테이블이 한 번만 나타날 수 있지만 스냅숏 게시의 경우에는 이러한 제한이 없습니다.A table can appear in at most one transactional publication and any number of snapshot publications. 여러 트랜잭션 게시에서 동일한 테이블을 게시해야 할 경우에는 Oracle Complete 옵션을 선택하십시오.If you need to publish the same table in multiple transactional publications, choose the Oracle Complete option. 이 옵션은 SQL ServerSQL Server 배포자에서 Oracle 게시자를 식별할 때 지정할 수 있습니다.Specify this option when identifying the Oracle Publisher at the SQL ServerSQL Server Distributor. 자세한 내용은 Create a Publication from an Oracle Database을(를) 참조하세요.For more information, see Create a Publication from an Oracle Database.

트랜잭션 세트 작업 구성Configuring the Transaction Set Job

게시된 Oracle 테이블에 대한 변경 내용은 트랜잭션 세트라는 그룹으로 처리됩니다.Changes to published Oracle tables are processed in groups called transaction sets. 트랜잭션 일관성을 유지하려면 각 트랜잭션 세트를 배포 데이터베이스에 단일 트랜잭션으로 커밋해야 합니다.To ensure transactional consistency, each transaction set is committed as a single transaction at the distribution database. 트랜잭션 세트가 너무 클 경우 단일 트랜잭션으로는 효율적으로 처리할 수 없습니다.If the transaction set becomes too large, it cannot be processed efficiently as a single transaction.

기본적으로 트랜잭션 세트는 로그 판독기 에이전트에서만 생성됩니다.By default, transaction sets are created only by the Log Reader Agent. 변경 작업이 많이 수행되는 기간 동안 로그 판독기 에이전트가 실행되지 않거나 SQL ServerSQL Server 배포자에서 Oracle 게시자로 연결할 수 없는 경우 트랜잭션 세트가 관리할 수 없을 정도로 커질 수 있습니다.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. 이러한 문제를 방지하려면 로그 판독기 에이전트가 실행되지 않거나 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.

트랜잭션 세트는 로그 판독기 에이전트가 세트를 만들 때 사용하는 메커니즘과 동일한 메커니즘을 사용하는 Xactset 작업(복제 시 설치되는 Oracle 데이터베이스 작업)을 사용하여 만들 수 있습니다.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. 작업이 실행될 때마다 새 트랜잭션 세트가 생성됩니다.Each time the job runs, a new transaction set is created. 다음에 로그 판독기 에이전트가 실행되면 해당 에이전트는 생성된 모든 세트를 처리합니다.The next time that the Log Reader Agent runs, the agent processes any sets that have been created. 기존의 트랜잭션 세트가 모두 처리된 다음에도 보류 중인 변경 내용이 남아 있는 경우 로그 판독기 에이전트에서 하나 이상의 트랜잭션 세트를 추가로 만들어서 처리합니다.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.

트랜잭션 집합 작업을 구성하려면 Oracle 게시자에 대한 트랜잭션 집합 작업 구성(복제 Transact-SQL 프로그래밍)을 참조하세요.To configure the transaction set job, see Configure the Transaction Set Job for an Oracle Publisher (Replication Transact-SQL Programming).

참고 항목See Also

Oracle 게시자 구성 Configure an Oracle Publisher
Oracle Publishing OverviewOracle Publishing Overview