

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# 에 Oracle Data Warehouse 연결 AWS SCT
<a name="CHAP_Source.OracleDW"></a>

 AWS SCT 를 사용하여 스키마, 코드 객체 및 애플리케이션 코드를 Oracle Data Warehouse에서 Amazon Redshift 또는 Amazon Redshift로 변환하고 조합하여 AWS Glue 사용할 수 있습니다.

## Oracle Data Warehouse를 소스로 사용하기 위한 권한
<a name="CHAP_Source.OracleDW.Permissions"></a>

Oracle Data Warehouse를 소스로 사용하기 위해 필요한 권한은 다음과 같습니다.
+ 연결 
+ select\$1catalog\$1role 
+ select any dictionary 

## Oracle Data Warehouse에 소스로 연결
<a name="CHAP_Source.OracleDW.Connecting"></a>

다음 절차에 따라 AWS Schema Conversion Tool을 사용하여 Oracle Data Warehouse 소스 데이터베이스에 연결합니다.

**Oracle Data Warehouse 소스 데이터베이스에 연결하려면**

1. 에서 **소스 추가**를 AWS Schema Conversion Tool선택합니다.

1. **Oracle**를 선택한 후 **다음**을 선택합니다.

   **소스 추가** 대화 상자가 나타납니다.

1. **연결 이름**에 데이터베이스의 이름을 입력합니다. AWS SCT 는 왼쪽 패널의 트리에 이 이름을 표시합니다.

1. 에서 데이터베이스 자격 증명을 사용하거나 수동으로 AWS Secrets Manager 입력합니다.
   + Secrets Manager의 데이터베이스 보안 인증 정보를 사용하려면 다음 지침을 따릅니다.

     1. **AWS Secret**에서 보안 암호의 이름을 선택합니다.

     1. **Populate**를 선택하여 Secrets Manager에서 데이터베이스 연결 대화 상자에 있는 모든 값을 자동으로 채웁니다.

     Secrets Manager의 데이터베이스 보안 인증 사용에 대한 자세한 내용은 [AWS Secrets Manager 에서 구성 AWS Schema Conversion Tool](CHAP_UserInterface.SecretsManager.md) 섹션을 참조하세요.
   + Oracle 소스 데이터 웨어하우스 연결 정보를 수동으로 입력하려면 다음 지침을 사용합니다.  
****    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/SchemaConversionTool/latest/userguide/CHAP_Source.OracleDW.html)

1. **연결 테스트를** 선택하여가 소스 데이터베이스에 연결할 AWS SCT 수 있는지 확인합니다.

1. **연결**을 선택하여 소스 데이터베이스에 연결합니다.

## Oracle Data Warehouse에서 Amazon Redshift로의 변환 설정
<a name="CHAP_Source.OracleDW.ConversionSettings"></a>

Oracle Data Warehouse에서 Amazon Redshift로의 변환 설정을 편집하려면에서 **설정을** 선택한 AWS SCT다음 **변환 설정을** 선택합니다. 상단 목록에서 **Oracle**을 선택한 다음 **Oracle – Amazon Redshift**를 선택합니다.는 Oracle Data Warehouse에서 Amazon Redshift로의 변환에 사용할 수 있는 모든 설정을 AWS SCT 표시합니다.

의 Oracle Data Warehouse에서 Amazon Redshift로의 변환 설정에는 다음과 같은 옵션이 AWS SCT 포함됩니다.
+ 변환된 코드에서 작업 항목이 포함된 설명의 수를 제한합니다.

  **선택한 심각도 이상의 작업 항목에 대해 변환된 코드에 주석 추가에서** 작업 항목의 심각도를 선택합니다.는 선택한 심각도 이상의 작업 항목에 대해 변환된 코드에 주석을 AWS SCT 추가합니다.

  예를 들어, 변환된 코드의 설명 수를 최소화하려면 **오류만**을 선택하세요. 변환된 코드의 모든 작업 항목에 대한 설명을 포함하려면 **모든 메시지**를 선택합니다.
+ 대상 Amazon Redshift 클러스터에 적용할 AWS SCT 수 있는 최대 테이블 수를 설정합니다.

  **대상 Amazon Redshift 클러스터의 최대 테이블 수에서** Amazon Redshift 클러스터에 적용할 AWS SCT 수 있는 테이블 수를 선택합니다.

  Amazon Redshift에는 여러 클러스터 노드 유형에 사용하는 테이블을 제한하는 할당량이 있습니다. **자동**을 선택하면 노드 유형에 따라 대상 Amazon Redshift 클러스터에 적용할 테이블 수를 AWS SCT 결정합니다. 값을 수동으로 선택할 수도 있습니다. 자세한 내용은 *Amazon Redshift 관리 가이드*의 [Amazon Redshift의 할당량 및 제한](https://docs.aws.amazon.com/redshift/latest/mgmt/amazon-redshift-limits.html) 섹션을 참조하세요.

  AWS SCT 는 Amazon Redshift 클러스터가 저장할 수 있는 것보다 많더라도 모든 소스 테이블을 변환합니다.는 변환된 코드를 프로젝트에 AWS SCT 저장하고 대상 데이터베이스에 적용하지 않습니다. 변환된 코드를 적용할 때 테이블의 Amazon Redshift 클러스터 할당량에 도달하면 AWS SCT 에서 경고 메시지가 표시됩니다. 또한 테이블 수가 한도에 도달할 때까지 대상 Amazon Redshift 클러스터에 테이블을 AWS SCT 적용합니다.
+ 소스 테이블의 파티션을 Amazon Redshift의 개별 테이블로 마이그레이션합니다. 이 작업을 수행하려면 **Use the UNION ALL view**를 선택하고 AWS SCT 가 단일 소스 테이블에 대해 생성할 수 있는 대상 테이블의 최대 수를 입력합니다.

  Amazon Redshift는 테이블 파티셔닝을 지원하지 않습니다. 이 동작을 에뮬레이션하고 쿼리를 더 빠르게 실행하려면 소스 테이블의 각 파티션을 Amazon Redshift의 별도 테이블로 AWS SCT 마이그레이션할 수 있습니다. 그런 다음는 이러한 모든 테이블의 데이터가 포함된 뷰를 AWS SCT 생성합니다.

  AWS SCT 는 소스 테이블의 파티션 수를 자동으로 결정합니다. 소스 테이블 파티셔닝 유형에 따라서는 이 숫자가 Amazon Redshift 클러스터에 적용할 수 있는 테이블의 할당량을 초과할 수 있습니다. 이 할당량에 도달하지 않으려면가 단일 소스 테이블의 파티션에 대해 생성할 AWS SCT 수 있는 최대 대상 테이블 수를 입력합니다. 기본 옵션은 368개 테이블이며, 이는 1년 중 366일 동안의 파티션과 `NO RANGE` 및 `UNKNOWN` 파티션에 대한 테이블 두 개를 나타냅니다.
+ Amazon Redshift에서 지원하지 않는 날짜/시간 형식 요소를 사용하여 `TO_CHAR`, `TO_DATE`, `TO_NUMBER` 등의 데이터 유형 서식 설정 함수를 변환합니다. 기본적으로 AWS SCT 는 확장 팩 함수를 사용하여 변환된 코드에서 지원되지 않는 이러한 형식 요소의 사용을 에뮬레이션합니다.

  Oracle의 날짜/시간 형식 모델에는 Amazon Redshift의 날짜/시간 형식 문자열과 비교하여 더 많은 요소가 포함되어 있습니다. 소스 코드에 Amazon Redshift가 지원하는 날짜/시간 형식 요소만 포함된 경우 변환된 코드에 확장 팩 함수가 필요하지 않습니다. 변환된 코드에서 확장 팩 함수를 사용하지 않으려면 **Datetype format elements that you use in the Oracle code are similar to datetime format strings in Amazon Redshift**를 선택합니다. 이 경우, 변환된 코드는 더 빠르게 작동합니다.

  Oracle의 숫자 형식 모델에는 Amazon Redshift의 숫자 형식 문자열과 비교하여 더 많은 요소가 포함되어 있습니다. 소스 코드에 Amazon Redshift가 지원하는 숫자 형식 요소만 포함된 경우 변환된 코드에 확장 팩 함수가 필요하지 않습니다. 변환된 코드에서 확장 팩 함수를 사용하지 않으려면 **Numeric format elements that you use in the Oracle code are similar to numeric format strings in Amazon Redshift**를 선택합니다. 이 경우, 변환된 코드는 더 빠르게 작동합니다.
+ Oracle `LEAD` 및 `LAG` 분석 함수를 변환합니다. 기본적으로 AWS SCT 가 각 `LEAD` 및 `LAG` 함수에 대한 작업 항목을 발생시킵니다.

  소스 코드가 이러한 함수의 오프셋에 대해 기본값을 사용하지 않는 경우 AWS SCT 는 `NVL` 함수를 사용하여 이러한 함수의 사용을 에뮬레이션할 수 있습니다. 이렇게 하려면 **Use the NVL function to emulate the behavior of Oracle LEAD and LAG functions**를 선택합니다.
+ Amazon Redshift 클러스터에서 기본 키와 고유 키의 동작을 에뮬레이션하려면 **Emulate the behavior of primary and unique keys**를 선택합니다.

  Amazon Redshift는 고유 키와 기본 키를 적용하지 않으며 정보 제공 목적으로만 사용합니다. 코드에 이러한 제약 조건을 사용하는 경우가 변환된 코드에서 해당 동작을 AWS SCT 에뮬레이션하는지 확인합니다.
+ Amazon Redshift 테이블 열에 압축을 적용합니다. 이렇게 하려면 **Use compression encoding**을 선택합니다.

  AWS SCT 는 기본 Amazon Redshift 알고리즘을 사용하여 열에 압축 인코딩을 자동으로 할당합니다. 자세한 내용은 *Amazon Redshift 데이터베이스 개발자 안내서*의 [압축 인코딩](https://docs.aws.amazon.com/redshift/latest/dg/c_Compression_encodings.html)을 참조하세요.

  기본적으로 Amazon Redshift는 정렬 및 배포 키로 정의된 열에 압축을 적용하지 않습니다. 이 동작을 변경하여 이러한 열에 압축을 적용할 수 있습니다. 이렇게 하려면 **Use compression encoding for KEY columns**를 선택합니다. **Use compression encoding** 옵션을 선택한 경우에만 이 옵션을 선택할 수 있습니다.

## Oracle Data Warehouse에서 Amazon Redshift로의 변환 최적화 설정
<a name="CHAP_Source.OracleDW.ConversionOptimizationSettings"></a>

Oracle Data Warehouse에서 Amazon Redshift로의 변환 최적화 설정을 편집하려면에서 **설정을** 선택한 AWS SCT다음 **변환 설정을** 선택합니다. 상단 목록에서 **Oracle**를 선택한 다음 **Oracle – Amazon Redshift**를 선택합니다. 왼쪽 창에서 **최적화 전략을** 선택합니다. Oracle Data Warehouse에서 Amazon Redshift로의 변환에 대한 변환 최적화 설정을 AWS SCT 표시합니다.

의 Oracle Data Warehouse에서 Amazon Redshift로의 변환 최적화 설정에는 다음과 같은 옵션이 AWS SCT 포함됩니다.
+ 자동 테이블 최적화 작업을 수행합니다. 이 작업을 수행하려면 **Use Amazon Redshift automatic table tuning**을 선택합니다.

  자동 테이블 최적화는 테이블 디자인을 자동으로 최적화하는 Amazon Redshift의 자체 조정 프로세스입니다. 자세한 내용은 *Amazon Redshift 데이터베이스 개발자 안내서*의 [자동 테이블 최적화 작업](https://docs.aws.amazon.com/redshift/latest/dg/t_Creating_tables.html)을 참조하세요.

  자동 테이블 최적화만 사용하려면 **Initial key selection strategy**에서 **없음**을 선택합니다.
+ 전략을 사용하여 정렬 및 배포 키를 선택합니다.

  Amazon Redshift 메타데이터, 통계 정보 또는 두 옵션을 모두 사용하여 정렬 및 배포 키를 선택할 수 있습니다. **Optimization strategies** 탭의 **Initial key selection strategy**에서 다음 옵션 중 하나를 선택합니다.
  + 메타데이터 사용, 통계 정보 무시
  + 메타데이터 무시, 통계 정보 사용
  + 메타데이터 및 통계 정보 사용

  선택한 옵션에 따라 최적화 전략을 선택할 수 있습니다. 그런 다음 각 전략에 대해 값(0\$1100)을 입력합니다. 이러한 값은 각 전략의 가중치를 정의합니다. AWS SCT 는 이러한 가중치 값을 사용하여 각 규칙이 배포 및 정렬 키 선택에 미치는 영향을 정의합니다. 기본값은 AWS 마이그레이션 모범 사례를 기반으로 합니다.

  **Find small tables** 전략에서 작은 테이블의 크기를 정의할 수 있습니다. **최소 테이블 행 수** 및 **최대 테이블 행 수**에 테이블의 최소 및 최대 행 수를 입력하여 작은 테이블로 정의합니다.는 작은 테이블에 `ALL` 배포 스타일을 AWS SCT 적용합니다. 이 경우 전체 테이블의 사본이 모든 노드에 배포됩니다.
+ 전략 세부 정보를 구성합니다.

  각 최적화 전략의 가중치를 정의하는 것 외에 최적화 설정도 구성할 수 있습니다. 이 작업을 수행하려면 **Conversion optimization**을 선택합니다.
  + **Sort key columns limit**에 정렬 키의 최대 열 수를 입력합니다.
  + **스큐된 임계값**에 열에 대해 스큐된 값의 백분율(0\$1100)을 입력합니다.는 배포 키의 후보 목록에서 스큐 값이 임계값보다 큰 열을 AWS SCT 제외합니다.는 열의 스큐된 값을 총 레코드 수에 대한 가장 일반적인 값의 발생 횟수의 백분율 비율로 AWS SCT 정의합니다.
  + **Top N queries from the query history table**에 분석할 가장 자주 사용되는 쿼리의 수(1\$1100)를 입력합니다.
  + **Select statistics user**에서 쿼리 통계를 분석하려는 데이터베이스 사용자를 선택합니다.

  또한 **Optimization strategies** 탭에서 **Find small tables** 전략을 위한 작은 테이블의 크기를 정의할 수 있습니다. **최소 테이블 행 수** 및 **최대 테이블 행 수**에 테이블의 최소 및 최대 행 수를 입력하여 작은 테이블로 간주합니다.는 작은 테이블에 `ALL` 배포 스타일을 AWS SCT 적용합니다. 이 경우 전체 테이블의 사본이 모든 노드에 배포됩니다.