Amazon Athena의 SQL 쿼리에 대한 고려 사항 및 제한 사항 - Amazon Athena

Amazon Athena의 SQL 쿼리에 대한 고려 사항 및 제한 사항

Athena에서 쿼리를 실행할 때 다음 고려 사항 및 제한에 유의하세요.

  • 저장 프로시저 – 저장 프로시저는 지원되지 않습니다.

  • 최대 파티션 수 - CREATE TABLE AS SELECT(CTAS) 문으로 생성할 수 있는 최대 파티션 수는 100개입니다. 자세한 내용은 CREATE TABLE AS를 참조하세요. 해결 방법은 CTAS 및 INSERT INTO를 사용하여 100개 파티션 한도 문제 해결 단원을 참조하세요.

  • 지원되지 않는 문 - 다음을 포함한 지원되지 않는 문. Athena에서 지원되지 않는 DDL 문의 전체 목록은 지원되지 않는 DDL 단원을 참조하세요.

    • CREATE TABLE LIKE는 지원되지 않습니다.

    • DESCRIBE INPUT, DESCRIBE OUTPUT은(는) 지원되지 않습니다.

    • MERGE 문은 트랜잭션 테이블 형식에 대해서만 지원됩니다. 자세한 내용은 MERGE INTO 단원을 참조하십시오.

    • UPDATE 설명은 지원되지 않습니다.

    • DELETE FROM는 지원되지 않습니다.

  • Trino 및 Presto 커넥터Trino 또는 Presto 커넥터는 지원되지 않습니다. Amazon Athena 연합 쿼리를 사용하여 데이터 소스를 연결합니다. 자세한 내용은 Amazon Athena 페더레이션 쿼리 사용 단원을 참조하십시오.

  • 파티션이 많은 테이블의 시간 초과 - 수천 개의 파티션이 있는 테이블을 쿼리하면 Athena가 시간 초과될 수 있습니다. 이 문제는 테이블에 string 유형이 아닌 파티션이 많을 때 발생할 수 있습니다. string 유형을 사용하면 Athena가 메타스토어 수준에서 파티션을 제거합니다. 그러나 다른 데이터 형식을 사용하면 Athena가 서버 측 파티션을 정리합니다. 파티션이 많을수록 이 프로세스가 오래 걸리며 쿼리 시간이 초과될 가능성이 높아집니다. 이 문제를 해결하려면 Athena가 메타스토어 수준에서 파티션을 정리하도록 파티션 유형을 string으로 설정하세요. 이렇게 하면 오버헤드가 줄어들고 쿼리가 시간 초과되는 것을 방지할 수 있습니다.

  • S3 Glacier 지원 - 복원된 Amazon S3 Glacier 객체를 쿼리하는 방법에 대한 자세한 내용은 복원된 Amazon S3 Glacier 객체 쿼리 섹션을 참조하세요.

  • 숨김으로 처리된 파일 - Athena는 밑줄(_) 또는 점(.)으로 시작하는 소스 파일을 숨김으로 처리합니다. 이 제한을 해결하려면 파일 이름을 바꿉니다.

  • 행 또는 열 크기 제한 - 하나의 행 또는 해당 열의 크기는 32MB를 초과할 수 없습니다. 예를 들어 CSV 또는 JSON 파일의 행에 300MB의 한 열이 포함된 경우 이 한도를 초과할 수 있습니다. 이 제한을 초과하면 텍스트 파일의 줄이 너무 깁니다라는 오류 메시지가 나타날 수도 있습니다. 이 제한을 해결하려면 모든 행의 열에 있는 데이터 합계가 32MB 미만이어야 합니다.

  • LIMIT 절 최댓값 - LIMIT 절에 대해 지정할 수 있는 최대 행 수는

    9223372036854775807입니다. ORDER BY를 사용하는 경우 LIMIT 절에 대해 지원되는 최대 행 수는 2147483647입니다. 이 제한을 초과하면 오류 메시지 NOT_SUPPORTED: ORDER BY LIMIT > 2147483647 is not supported가 표시됩니다.

  • information_schema – AWS Glue 메타데이터의 양이 소량에서 중간 정도라면 information_schema 쿼리가 가장 성능이 뛰어납니다. 메타데이터의 양이 많으면 오류가 발생할 수 있습니다. information_schema 데이터베이스에 AWS Glue 메타데이터를 쿼러하는 방법에 대한 자세한 내용은 AWS Glue Data Catalog 쿼리 단원을 참조하세요.

  • 배열 초기화 – Java 관련 제한으로 인해 Athena에서 인수가 254개를 초과하는 배열은 초기화할 수 없습니다.

  • 숨겨진 메타데이터 열 - Hive 또는 Iceberg의 숨겨진 메타데이터 열 $bucket, $file_modified_time, $file_size$partition은 보기에서 지원되지 않습니다. Athena에서 $path 메타데이터 열 사용에 대한 자세한 내용은 Amazon S3의 소스 데이터에 대한 파일 위치 가져오기 섹션을 참조하세요.

최대 쿼리 문자열 길이, 쿼리 시간 제한에 대한 할당량 및 활성 DML 쿼리 수에 대한 할당량에 관한 자세한 내용은 Service Quotas 단원을 참조하세요.