Athena 쿼리 출력을 CSV 이외의 형식(예: 압축 형식)으로 저장하려면 어떻게 해야 합니까?

최종 업데이트 날짜: 2020년 5월 22일

Amazon Athena 쿼리 결과를 CSV 이외의 형식(예: JSON 또는 압축 형식)으로 저장하려고 합니다. 어떻게 해야 합니까?

​해결 방법

Athena는 CSV 출력 파일만 지원합니다. 쿼리 출력 파일을 다른 형식으로 저장하려면 CREATE TABLE AS SELECT(CTAS) 쿼리를 사용하고 형식 속성을 구성합니다. 쿼리가 완료되면 CTAS 테이블을 삭제합니다. 다음 사항에 유의하십시오.

  • 형식을 ORC, PARQUET, AVRO, JSON 또는 TEXTFILE로 설정할 수 있습니다. CTAS 쿼리 형식을 지정하지 않으면 Athena는 기본적으로 Parquet을 사용합니다.
  • 파라미터의 이름 format은 소문자로 나열되어야 합니다. 그렇지 않으면 CTAS 쿼리에 실패합니다. 예제는 예: 다른 형식으로 쿼리 결과 작성을 참조하십시오.
  • 기본적으로 모든 CTAS 쿼리는 GZIP 압축을 사용합니다. Parquet 및 ORC의 경우 parquet_compressionorc_compression 옵션을 사용하여 SNAPPY 같은 다른 압축 유형을 지정할 수 있습니다. 예제는 예: 데이터 스토리지 및 압축 형식 지정을 참조하십시오.
  • 텍스트 기반 형식의 경우 WITH(field_delimiter = ',')와 같이 field_delimiter를 지정할 수 있습니다. 필드 구분 기호를 지정하지 않으면 Athena는 기본적으로\001을 사용합니다.
  • CTAS 쿼리에서 external_location 파라미터를 사용하는 경우 Amazon Simple Storage Service(Amazon S3) 위치에 데이터가 없는지 확인합니다. 그렇지 않으면 "HIVE_PATH_ALREADY_EXISTS: Target directory for table 'table_name' already exists: s3://AWSDOC-EXAMPLE-BUCKET"과 같은 오류가 표시될 수 있습니다. external_location 파라미터에 대한 자세한 내용은 CTAS 테이블 속성을 참조하십시오.

이 문서가 도움이 되었습니까?

AWS에서 개선해야 할 부분이 있습니까?


도움이 필요하십니까?