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 참조를 참조하세요.
자세한 내용 및 예제는 다음 문서를 참조하세요.
피드백
https://aka.ms/ContentUserFeedback
출시 예정: 2024년 내내 콘텐츠에 대한 피드백 메커니즘으로 GitHub 문제를 단계적으로 폐지하고 이를 새로운 피드백 시스템으로 바꿀 예정입니다. 자세한 내용은 다음을 참조하세요.다음에 대한 사용자 의견 제출 및 보기