코알못

[HIVE] Caused by: org.apache.hadoop.hive.serde2.SerDeException: Row is not a valid JSON Object - JSONException: Duplicate key "name" 본문

BIG DATA

[HIVE] Caused by: org.apache.hadoop.hive.serde2.SerDeException: Row is not a valid JSON Object - JSONException: Duplicate key "name"

코린이s 2022. 11. 19. 15:51
728x90

hive 에서 json 데이터를 읽어 오는 부분에서 아래 에러 발생 하였다.

Caused by: org.apache.hadoop.hive.serde2.SerDeException: Row is not a valid JSON Object - JSONException: Duplicate key "name"

확인 해보니 name 이라는 key 가 중복되는 json 데이터가 있으며 hive에서는 기본적으로 대소문자를 구분하지 않으니 중복 키로 인식하여 오류발생하였다.

{"NAME":"corin","name":"corin"...}

이를 해결하기 위해 읽어 들이는테이블의 설정에 대소문자를 구분하도록 추가 하였다. 

ALTER TABLE tb_test SET TBLPROPERTIES("case.insensitive" = "FALSE");

해당 로그를 제거하는 방법이나 로그를 수정하는 방법 등이 있을수 있으나

로그 그대로 저장하기 위해 해당 옵션을 추가하였다.

728x90
Comments