본문 바로가기

Repair2

[hive] Error in getting fields from serde.Invalid Field null 오류 수정 방법 하이브에서 파티션의 정보를 확인할 때 다음의 오류가 발생하는 경우가 있습니다. hive> desc formatted TABLE_NAME partition(partition1='A'); FAILED: Excution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. Error in getting fields from serde.Invalid Field null 원인 이 오류는 확인 하려고 하는 파티션의 정보를 부족하게 제공해서 발생합니다. 위의 예제의 경우 partition1과 partition2 두 개의 파티션을 가진 테이블에서 정보를 하나만 제공하여 오류가 발생하였습니다. 해결방법 아래와 같이 테이블의 파티션에 관련된 모.. 2019. 12. 4.
[hive] MSCK REPAIR 처리중 Caused by: MetaException(message:Expected 2 components, got 1) 처리 MSCK REPAIR는 하이브에서 테이블의 파티션을 일괄 생성할 때 사용하는 명령어 입니다. 테이블의 로케이션의 하위 디렉토리를 검색하여 파티션 정보와 일치하는 디렉토리를 자동으로 파티션으로 추가해주는데 파티션 정보와 다른 디렉토리가 존재하면 아래의 오류가 발생합니다. 2개의 파티션 데이터가 있는 구조인데 한개만 있다고 오류가 발생하였습니다. Caused by: MetaException(message:Expected 2 components, got 1) 이 오류를 해결하는 방법은 두가지가 있습니다. 첫번째는 디렉토리를 정리하여 파티션 구조에 맞는 디렉토리와 파일만 놓아두는 것입니다. 두번째는 다음의 옵션값을 이용하는 방법이 있습니다. set hive.msck.path.validation=ignore; 이.. 2019. 4. 1.