1. 문제 상황
- AWS Athena에서 s3에 저장된 parquet 파일로 table을 만들었다.
- 생성은 문제없이 됐으나 "TYPE_MISMATCH: Unable to read parquet data. This is most likely caused by a mismatch between the parquet and metastore schema'"라는 에러 메세지가 발생
2. 해결 방법
- CREATE TABLE 관련 AWS 문서를 확인했다.
https://docs.aws.amazon.com/ko_kr/athena/latest/ug/create-table.html
- date 항목에 아래와 같은 내용이 있었다.
- parquet에 1970-01-01 보다 작은 날짜가 있는지 확인하고 그보다 작은 날짜는 수정했다.
3. 결론
- 날짜 형식을 쓰려면 1970-01-01보다 작은 날짜가 있는지 확인해야 한다.
- timestamp 형식을 쓰는 경우 1970-01-01 보다 큰 날짜 값만 사용하는 것을 상정해야 한다.
- 그보다 작은 날짜를 쓸 일이 있다면 string을 사용하여 날짜를 저장하고 사용하는 것이 좋을 것으로 보인다.
- 예를 들어 string으로 하는 경우 20230810 같은 방식으로 저장하면 된다.
'AWS 문제 해결 기록 > Athena' 카테고리의 다른 글
Only one sql statement is allowed. (0) | 2023.08.23 |
---|