언로딩할 데이터 파일 형식

언로딩할 데이터 파일 형식

이 주제는 데이터 언로딩을 위해 지원되는 데이터 파일 형식의 개요를 제공해요.

출처: Snowflake User Guide - File formats to unload data

본문

지원되는 파일 형식

다음 파일 형식이 지원돼요.

구조화/반구조화 유형 참고
구조화 구분 텍스트(CSV, TSV 등) 유효한 모든 단일바이트 구분자가 지원되며, 기본은 쉼표(즉 CSV)예요.
반구조화 JSON, Parquet

파일 형식 옵션은 파일에 포함된 데이터의 유형과 데이터 형식의 기타 관련 특성을 지정해요. 언로딩하는 데이터 유형에 따라 지정할 수 있는 파일 형식 옵션이 달라져요. Snowflake는 파일 형식 옵션 기본값의 전체 집합을 제공해요.

반구조화 데이터

JSON 파일로 언로딩할 때 Snowflake는 NDJSON(개행 구분 JSON, newline delimited JSON) 표준 형식으로 출력해요.

파일 형식 옵션 지정하기

개별 파일 형식 옵션은 다음 위치 어디에서나 지정할 수 있어요.

  • 테이블 정의에서
  • 이름이 있는 스테이지(named stage) 정의에서
  • 언로딩 시 COPY INTO <location> 명령에서 직접

또한 데이터 언로딩을 단순화하기 위해 Snowflake는 명명된 파일 형식(named file format) 생성을 지원해요. 이는 필요한 모든 형식 정보를 캡슐화하는 데이터베이스 객체예요. 명명된 파일 형식은 개별 파일 형식 옵션을 지정할 수 있는 모든 위치에서 입력으로 사용할 수 있어, 비슷한 형식의 데이터를 정기적으로 언로딩하는 과정을 간소화해 줘요. 명명된 파일 형식은 선택 사항이지만 비슷한 형식의 데이터를 정기적으로 언로딩할 계획이라면 권장돼요.

명명된 파일 형식 만들기:

웹 인터페이스 또는 SQL로 파일 형식을 만들 수 있어요.

  • Snowsight: 탐색 메뉴에서 Catalog » Explorer를 선택한 뒤 <db_name> » File Formats을 선택해요.
  • SQL: CREATE FILE FORMAT

모든 파일 형식 옵션에 대한 자세한 설명은 CREATE FILE FORMAT을 참고해요.

예시:

다음 예시는 지정된 필드 구분자가 있는 CSV 명명 파일 형식을 만들어요.

CREATE OR REPLACE FILE FORMAT my_csv_unload_format
  TYPE = 'CSV'
  FIELD_DELIMITER = '|';

다음 예시는 JSON 명명 파일 형식을 만들어요.

CREATE OR REPLACE FILE FORMAT my_json_unload_format
  TYPE = 'JSON';

더 알아보기