Oracle의 외부 데이터에 액세스하도록 PolyBase 구성
적용 대상: SQL Server
이 문서에서는 SQL Server 인스턴스에서 PolyBase를 사용하여 Oracle에서 외부 데이터를 쿼리하는 방법을 설명합니다.
필수 조건
PolyBase를 설치하지 않은 경우 PolyBase 설치를 참조하세요.
데이터베이스 범위 지정 자격 증명을 만들기 전에 마스터 키를 만들어야 합니다.
Oracle 외부 데이터 원본 구성
Oracle 데이터 원본의 데이터를 쿼리하려면 해당하는 외부 데이터를 참조할 외부 테이블을 만들어야 합니다. 이 섹션에서는 이러한 외부 테이블을 만들기 위한 샘플 코드를 제공합니다.
이 섹션에서는 다음 Transact-SQL 명령이 사용됩니다.
- CREATE DATABASE SCOPED CREDENTIAL(Transact-SQL)
- CREATE EXTERNAL DATA SOURCE(Transact-SQL)
- CREATE EXTERNAL TABLE(Transact-SQL)
- CREATE STATISTICS(Transact-SQL)
Oracle 원본에 액세스하기 위한 데이터베이스 범위 자격 증명을 만듭니다.
/* specify credentials to external data source * IDENTITY: user name for external source. * SECRET: password for external source. */ CREATE DATABASE SCOPED CREDENTIAL credential_name WITH IDENTITY = 'username', Secret = 'password';
Important
PolyBase용 Oracle ODBC 커넥터는 기본 인증만 지원하고 Kerberos 인증은 지원하지 않습니다.
CREATE EXTERNAL DATA SOURCE를 사용하여 외부 데이터 원본을 만듭니다.
/* * LOCATION: Location string should be of format '<vendor>://<server>[:<port>]'. * PUSHDOWN: specify whether computation should be pushed down to the source. ON by default. * CONNECTION_OPTIONS: Specify driver location * CREDENTIAL: the database scoped credential, created above. */ CREATE EXTERNAL DATA SOURCE external_data_source_name WITH ( LOCATION = 'oracle://<server address>[:<port>]', -- PUSHDOWN = ON | OFF, CREDENTIAL = credential_name)
CREATE EXTERNAL TABLE을 사용하여 외부 테이블을 만듭니다.
/* * LOCATION: Three-part identifier indicating database & domain or only database, schema, and table name. * DATA_SOURCE: The data source created above. */ CREATE EXTERNAL TABLE [T1] ( [KEY] DECIMAL(38) NOT NULL, [RANDOM_INT] DECIMAL(38), [RANDOM_FLOAT] FLOAT(53)) WITH ( LOCATION = '[ORCLCDB.localdomain].SYS.T1', DATA_SOURCE = external_data_source_name)
선택사항: 외부 테이블에 대한 통계를 만듭니다.
최적의 쿼리 성능을 얻으려면 외부 테이블 열, 특히 조인, 필터 및 집계에 사용되는 열에 대한 통계를 만듭니다.
CREATE STATISTICS statistics_name ON customer (C_CUSTKEY) WITH FULLSCAN;
Important
외부 데이터 원본을 만든 후에는 CREATE EXTERNAL TABLE 명령을 사용하여 해당 원본 위에 쿼리 가능 테이블을 만들 수 있습니다.
다음 단계
다양한 데이터 원본에 외부 데이터 원본 및 외부 테이블을 만드는 방법에 대한 자세한 자습서는 PolyBase Transact-SQL 참조를 참조하세요.
자세한 내용 및 예제는 다음 문서를 참조하세요.