분할된 테이블에서 Amazon Athena 쿼리를 실행하면 쿼리가 실패하고 “HIVE_PARTITION_SCHEMA_MISMATCH” 오류가 발생합니다.”
간략한 설명
다음과 같은 시나리오에서는 “HIVE_PARTITION_SCHEMA_MISMATCH” 오류가 표시될 수 있습니다.
- 파티션의 테이블 스키마가 테이블 스키마와 호환되지 않습니다.
- 테이블의 데이터 형식은 시도한 업데이트 유형을 허용하지 않습니다.
자세한 내용은 파티션이 있는 테이블의 업데이트를 참조하세요.
해결 방법
파티션 스키마를 업데이트하도록 AWS Glue 크롤러를 구성합니다.
AWS Glue 크롤러를 사용하여 테이블을 생성한 경우, 파티션 스키마를 업데이트하도록 AWS Glue 크롤러를 구성하세요.
다음 단계를 완료합니다.
- AWS Glue 콘솔을 엽니다.
- 탐색 창에서크롤러를 선택합니다.
- 구성하려는 크롤러를 선택합니다.
- 작업을 선택한 다음, 크롤러 편집을 선택하세요.
- 다음을 선택하고 크롤러의 출력 선택 페이지로 이동할 때까지 계속해서 다음을 선택합니다.
- 구성 옵션을 확장합니다.
- 테이블의 메타데이터로 모든 새 파티션과 기존 파티션 업데이트를 선택합니다.
- 다음을 선택한 다음 마침을 선택하여 크롤러 구성을 저장합니다.
- 크롤러 페이지에서 크롤러를 선택합니다.
- 크롤러 실행을 선택합니다. 크롤러를 실행하면 파티션이 테이블 스키마를 상속합니다.
Athena DDL 문을 사용하여 영향을 받은 파티션을 삭제하고 삭제된 파티션을 다시 생성하세요.
테이블을 수동으로 생성한 경우 Athena DDL(데이터 정의 언어) 문을 사용하여 영향을 받은 파티션을 삭제한 다음 파티션을 다시 생성하세요.
다음 단계를 완료합니다.
- Amazon Athena 콘솔을 엽니다.
- 쿼리 편집기 탭에서 ALTER TABLE DROP PARTITION 명령을 실행하여 영향을 받은 파티션을 삭제합니다.
- ALTER TABLE ADD PARTITION 명령을 실행하여 삭제된 파티션을 다시 생성합니다.
**참고:**테이블이 Hive 호환 파티션을 사용하는 경우 MSCK REPAIR TABLE 명령을 실행하여 삭제된 파티션을 다시 생성할 수 있습니다.
관련 정보
"HIVE_PARTITION_SCHEMA_MISMATCH"를 방지하기 위해 파티션 스키마를 동기화
크롤러 구성 옵션 설정