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를 초과할 수 없습니다. 예를 들어 단일 행에 35MB의 한 열이 포함된 경우 이 한도를 초과할 수 있습니다. 이는 서비스의 하드 제한이며 변경할 수 없습니다.
-
텍스트 파일의 최대 줄 길이 - 텍스트 파일의 단일 줄 크기는 상한이 200MB입니다. 이 제한을 초과하면
TextLineLengthLimitExceededException: 줄 바꿈 전에 바이트가 너무 많습니다
오류 메시지가 나타날 수 있습니다. 이 제한 사항을 해결하려면 텍스트 파일에 200MB를 초과하는 줄이 없어야 합니다. -
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 단원을 참조하세요.