S3 스테이지 만들기

외부(즉, S3) 스테이지는 파일의 데이터를 테이블에 로드할 수 있도록 데이터 파일이 저장되는 위치를 지정합니다.

폴더 경로(또는 S3 용어로 접두사)가 포함되거나 포함되지 않은 지정된 S3 버킷의 파일에서 데이터를 직접 로드할 수 있습니다. 경로가 / 로 끝나면 해당 S3 폴더의 모든 오브젝트가 로드됩니다.

참고

이전 단계 에서, 지침에 따라 외부 S3 버킷에 액세스하기 위해 필요한 정책 및 권한으로 AWS IAM 역할을 구성한 경우에는 이미 S3 스테이지를 생성한 것입니다. 이 단계를 건너뛰고 S3 스테이지에서 데이터 복사하기 를 진행할 수 있습니다.

이 항목의 내용:

외부 스테이지

Snowflake는 S3 버킷의 파일에서 직접 로드하는 기능뿐만 아니라 파일을 스테이징 하기 위해 필요한 모든 정보를 캡슐화하는 명명된 외부 스테이지 생성을 지원하며, 여기에는 다음이 포함됩니다.

  • 파일이 스테이징되는 S3 버킷.

  • 버킷의 명명된 저장소 통합 오브젝트 또는 S3 자격 증명(보호된 경우).

  • 암호화 키(버킷의 파일이 암호화된 경우).

명명된 외부 스테이지는 선택 사항이지만 동일한 위치에서 정기적으로 데이터를 로드하려면 사용하는 것이 권장 됩니다.

외부 스테이지 만들기

명명된 스테이지는 다음과 같이 웹 인터페이스 또는 SQL을 사용하여 생성할 수 있습니다.

Classic Console: Databases Databases tab » <db_이름> » Stages 를 클릭합니다.

SQL

CREATE STAGE

다음 예에서는 SQL을 사용하여 encrypted_files/ 폴더 경로가 포함된 비공개/보호 S3 버킷인 mybucket 을 참조하는 my_s3_stage 외부 스테이지를 생성합니다. CREATE 문에는 S3 버킷에 액세스하기 위해 옵션 1: Amazon S3에 액세스하기 위한 Snowflake 저장소 통합 구성하기 에서 만든 s3_int 저장소 통합이 포함됩니다. 이 스테이지는 버킷 경로에 저장된 파일의 데이터를 설명하는 my_csv_format 이라는 명명된 파일 형식 오브젝트를 참조합니다.

CREATE STAGE my_s3_stage
  STORAGE_INTEGRATION = s3_int
  URL = 's3://mybucket/encrypted_files/'
  FILE_FORMAT = my_csv_format;
Copy

참고

스테이지에 대해 명명된 파일 형식 오브젝트(또는 개별 파일 형식 옵션)를 지정하면 나중에 스테이지에서 데이터를 로드하는 데 사용되는 COPY 명령에 동일한 파일 형식 옵션을 지정할 필요가 없습니다.

다음 항목: S3 스테이지에서 데이터 복사하기