Amazon S3에서 대량 로드

Amazon S3에서 대량 로드

이미 AWS(Amazon Web Services) 계정이 있고 데이터 파일을 저장·관리하기 위해 S3 버킷을 사용한다면, 기존 버킷과 폴더 경로를 활용해 Snowflake로 대량 로드할 수 있어요. 이 주제 묶음은 COPY 명령을 사용해 S3 버킷에서 테이블로 대량 로드하는 방법을 설명해요.

아래 다이어그램처럼 S3 버킷에서 데이터를 로드하는 작업은 두 단계로 나뉘어요.

1단계: Snowflake는 데이터 파일이 이미 S3 버킷에 스테이징되어 있다고 가정해요. 아직 스테이징되지 않았다면 AWS가 제공하는 업로드 인터페이스/유틸리티를 사용해 파일을 스테이징해요.

2단계: COPY INTO <table> 명령을 사용해 스테이징된 파일의 내용을 Snowflake 데이터베이스 테이블에 로드해요. 버킷에서 직접 로드할 수도 있지만, Snowflake는 버킷을 참조하는 외부 스테이지를 만들고 그 외부 스테이지를 사용할 것을 권장해요.

사용하는 방법과 관계없이 이 단계는 명령을 수동으로 또는 스크립트 안에서 실행할 경우 실행 중인 현재 세션 가상 웨어하우스가 필요해요. 웨어하우스는 테이블에 행을 실제로 삽입하는 데 필요한 컴퓨팅 리소스를 제공해요.

참고 — Snowflake는 각 Amazon VPC에서 Amazon S3 게이트웨이 엔드포인트를 사용해요. Snowflake 계정이 AWS에 호스팅되어 있는 한, S3 버킷이 어느 리전에 있든 네트워크 트래픽은 공용 인터넷을 경유하지 않아요.

팁 — 이 주제 묶음의 지침은 데이터 로드 준비를 읽었고, 원한다면 이름이 있는 파일 형식을 만들었다고 가정해요. 시작하기 전에 모범 사례, 팁, 기타 지침을 위해 데이터 로드 고려 사항을 읽는 것도 좋아요.

출처: Documentation

본문

구성 작업(필요에 따라 완료)

데이터 로드 작업(로드하는 각 파일 묶음마다 완료)

더 알아보기