PolyBase 자격 증명 및 데이터 원본

완료됨

이제 데이터 가상화 및 PolyBase의 원칙을 이해했으므로 보안 및 연결을 이해하는 것이 중요합니다. 이 단원에서는 PolyBase와 함께 사용되는 개체 및 연산자를 설명합니다.

PolyBase 기능은 SQL Server 인스턴스 수준에서 사용하도록 설정되어 있지만 OPENROWSET, CET 및 CETAS와 같은 PolyBase 개체 및 연산자는 데이터베이스 수준에서 작동합니다. 모든 데이터 원본, 외부 파일 형식 및 외부 자격 증명은 특정 데이터베이스에 연결됩니다.

다음 다이어그램에서는 PolyBase 개체와의 데이터베이스 관계를 보여 줍니다.

SQL Server의 PolyBase 개체 다이어그램.

  • 마스터 키: DMK(데이터베이스 마스터 키)는 데이터베이스에 있는 인증서 및 비대칭 키의 프라이빗 키를 보호하는 데 사용되는 대칭 키입니다. DMK는 모든 외부 자격 증명 및 데이터 원본 정보를 안전하게 저장하는 보안 메커니즘입니다. 자세한 내용은 CREATE MASTER KEY(Transact-SQL)를 참조하세요.

  • 데이터베이스 범위 자격 증명: CREATE DATABASE SCOPED CREDENTIAL 명령은 외부 데이터 원본에서 사용하는 자격 증명 정보를 보유하는 자격 증명을 만듭니다. 자세한 내용은 CREATE DATABASE SCOPED CREDENTIAL(Transact-SQL)을 참조하세요.

  • 외부 데이터 원본: CREATE EXTERNAL DATA SOURCE 명령은 외부 데이터 원본에 액세스하는 데 필요한 정보를 포함하는 데이터 원본을 만듭니다. 외부 데이터 원본은 다른 데이터베이스 서버 또는 Azure Blob Storage, Azure Data Lake Storage 또는 S3 호환 개체 스토리지와 같은 스토리지 위치일 수 있습니다. 자세한 내용은 CREATE EXTERNAL DATA SOURCE(Transact-SQL)를 참조하세요.

  • 외부 테이블: CREATE EXTERNAL TABLE 명령은 파일 또는 다른 데이터베이스 테이블인 외부 데이터 원본을 가리키는 가상 테이블을 만듭니다. 이 테이블을 사용할 때마다 SQL Server는 원본에서 데이터를 가져옵니다. 이 명령은 사용자와 애플리케이션에 원래 데이터를 관리하는 복잡성 없이 일반 테이블 작업과 동일한 수준의 유연성을 부여합니다. 자세한 내용은 CREATE EXTERNAL TABLE(Transact-SQL)을 참조하세요.

  • 외부 파일 형식: CREATE EXTERNAL FILE FORMAT 명령은 SQL Server가 특정 파일 형식에서 작동하는 방식을 정의합니다. 외부 파일 형식은 파일, 필드 종결자, 구분 기호, 압축 및 인코딩의 형식을 결정합니다. 자세한 내용은 CREATE EXTERNAL FILE FORMAT(Transact-SQL)을 참조하세요.

지원되는 PolyBase 데이터 원본

커넥터 위치 접두사는 SQL Server에 연결하려는 엔드포인트 유형을 알려줍니다. 예를 들어 Azure Blob Storage 계정에 abs연결하려면 사용하지만 Oracle 서버에 연결하려면 사용합니다 oracle.

외부 데이터 원본 커넥터 위치 접두사 위치 경로 인증
Azure Blob Storage (애저 블롭 스토리지) abs abs://<storage_account_name>.blob.core.windows.net/<container_name> SAS(공유 액세스 서명)
Azure Data Lake Storage adls adls://<storage_account_name>.dfs.core.windows.net/<container_name> SAS
SQL Server sqlserver <server_name>[\<instance_name>][:port] SQL 인증 전용
Oracle oracle <server_name>[:port] 기본 인증 전용입니다.
Teradata teradata <server_name>[:port] 기본 인증 전용입니다.
MongoDB 또는 MongoDB용 Azure Cosmos DB API mongodb <server_name>[:port] 기본 인증 전용입니다.
제네릭 ODBC(Open Database Connectivity) odbc <server_name>[:port] 기본 인증 전용입니다.
대량 작업 https <storage_account>.blob.core.windows.net/<container> SAS
S3 호환 오브젝트 스토리지 s3 s3://<server_name>:<port>/

호환성을 위해 일부 접두사는 이전 버전의 SQL Server에서 변경되었습니다. 데이터 원본 및 해당 접두사 전체 목록은 CREATE EXTERNAL DATA SOURCE를 참조하세요.

PolyBase에 지원되는 파일 형식

SQL Server 2025는 다음 파일 형식을 지원합니다.

  • CSV
  • Parquet
  • 구분된 텍스트
  • 델타(읽기 전용)입니다. SQL Server는 델타 파일을 읽을 수 있지만 테이블 결과를 Delta로 내보낼 수는 없습니다.

OPENROWSET, CET 및 CETAS

PolyBase는 세 개의 연산자를 사용하여 데이터를 쿼리하거나 가상화합니다. 이 학습 모듈에서는 이러한 명령 및 해당 사용 사례를 다룹니다.

  • OPENROWSET 은 SQL 엔진이 파일 또는 다른 데이터베이스의 SQL Server 외부 데이터에 액세스할 수 있도록 하는 간단한 명령입니다. OPENROWSET은 임시 실행에 최적화되어 있으며 데이터 또는 데이터 탐색을 로드하는 데 권장됩니다. 자세한 내용은 OPENROWSET(Transact-SQL)를 참조하세요.

  • CREATE EXTERNAL TABLE(CET) 은 데이터가 SQL Server 외부의 원래 위치에 유지되는 테이블을 만듭니다. 테이블을 선택하면 SQL 엔진이 요청된 데이터를 사용자에게 제공합니다. 외부 테이블은 재사용 가능성을 활용하며 더 나은 성능을 위해 통계를 사용할 수 있습니다. 자세한 내용은 CREATE EXTERNAL TABLE(Transact-SQL)을 참조하세요.

  • CREATE EXTERNAL TABLE AS SELECT(CETAS) 는 단일 명령으로 연산 조합을 수행합니다. 먼저 CETAS를 사용하면 SQL Server가 데이터베이스 내부 또는 외부에 저장된 지정된 데이터를 변환하고 변환할 수 있습니다. 그런 다음 CETAS는 데이터를 네트워크 위치 또는 Azure와 같은 다른 위치로 내보냅니다. 마지막으로 CETAS는 새로 내보낸 데이터를 대상으로 하는 외부 테이블을 만듭니다. 자세한 내용은 CREATE EXTERNAL TABLE AS SELECT(Transact-SQL)를 참조하세요.