테이블 처리 준비

다음 섹션의 테이블 속성은 Oracle GoldenGate 환경에서 처리해야 합니다.

대상 ID 열, 트리거 및 제약 조건에 대한 Replicat 고려 사항

ID 열, 트리거, 계단식 배열 및 검사 제약 조건이 있는 대상 SQL Server 데이터베이스에 데이터를 복제할 때는 다음 사항을 고려하십시오.

이러한 상황을 극복하기 위해 복제 사용 사례를 기반으로 구현할 수 있는 몇 가지 옵션이 있습니다.

어레이 처리로 IDENTITY 복제 향상

세션당 하나의 테이블만 IDENTITY_INSERT를 ON로 설정할 수 있으므로 Replicat는 세션의 여러 테이블에 IDENTITY 데이터를 적용할 때 IDENTITY_INSERT를 계속 토글해야 합니다. 이 경우 Replicat의 성능을 향상시키려면 BATCHSQL 매개변수를 사용합니다. BATCHSQL는 Replicat가 한 번에 하나씩 SQL 문을 적용하는 대신 배열 처리를 사용하도록 합니다.

소스 테이블과 대상 테이블에서 행 고유성 보장

Oracle GoldenGate에는 복제된 업데이트 및 삭제를 위한 올바른 대상 행을 찾기 위해 소스 및 대상 테이블에서 특정 형식의 고유한 행 식별자가 필요합니다.

KEYCOLS 절이 TABLE 또는 MAP 문에 사용되지 않는 한 Oracle GoldenGate는 다음 우선 순위 순서로 사용할 행 식별자를 선택합니다.

  1. 기본 키

  2. 시간 기록 또는 비구체화된 계산 열을 포함하지 않는 첫 번째 고유 키 영숫자.

  3. 앞의 키 유형이 없는 경우(테이블에 정의된 다른 유형의 키가 있더라도) Oracle GoldenGate는 모든 열의 의사 키를 생성합니다. Oracle GoldenGate가 키 또는 Oracle GoldenGate 구성에서 제외된 키에서 지원하지 않는 데이터베이스를 제외하고 고유 키에서 사용할 수 있습니다. 주: 테이블에 사용할 수 없는 다른 키가 있거나 테이블에 키가 전혀 없는 경우 Oracle GoldenGate는 적절한 메시지를 보고서 파일에 기록합니다. 모든 열에서 키를 구성하면 소스 시스템에서 Oracle GoldenGate의 성능이 저하됩니다. 대상에서 이 키로 인해 Replicat는 더 크고 덜 효율적인 WHERE 절을 사용합니다.

  1. 테이블에 적절한 키가 없거나 기존 키가 사용되지 않도록 하려는 경우 테이블에 항상 고유한 값을 포함하는 열이 있는 경우 대체 키를 정의할 수 있습니다. Extract TABLE 매개변수 및 Replicat MAP 매개변수 내에 KEYCOLS 절을 포함하여 이 대체 키를 정의합니다. 지정된 키는 Oracle GoldenGate가 찾은 기존 기본 또는 고유 키를 무효화합니다. Oracle GoldenGate에 대한 참조에서 TABLE | MAP를 참조하십시오.

KEYCOLS를 사용하여 커스텀 키 지정

테이블에 적용 가능한 행 식별자가 없거나 식별자를 사용하지 않으려는 경우 테이블에 항상 고유한 값을 포함하는 열이 있는 경우 대체 키를 정의할 수 있습니다. Extract TABLE 매개변수 및 Replicat MAP 매개변수 내에 KEYCOLS 절을 포함하여 이 대체 키를 정의합니다. 지정된 키는 Oracle GoldenGate가 찾은 기존 기본 또는 고유 키를 무효화합니다.