메뉴 건너뛰기

Bigdata, Semantic IoT, Hadoop, NoSQL

Bigdata, Hadoop ecosystem, Semantic IoT등의 프로젝트를 진행중에 습득한 내용을 정리하는 곳입니다.
필요한 분을 위해서 공개하고 있습니다. 문의사항은 gooper@gooper.com로 메일을 보내주세요.


CDP의 Hive Replication]Hive Replication기능을 이용하여 source의 hive db를 destination으로 복제를 수행중 이전에는 잘 수행되던것이 "The following columns have types incompatible with the existing columns in their respective positions " 오류가 발생하면서 실패하는 경우가 있다. 

이는 특정 컬럼의 type이 처음 table이 만들어지고 나서 변경이 되었고 이것이 replication과정에서 호환되지 않는 type이서 Hive에서 오류를 발생시켰기 때문이다. 

즉, 소스 클러스터에 변경 사항이 있는 경우(예를 들어 한 열의 데이터 유형이 변경된 테이블을 삭제하고 다시 생성하거나 추가 열을 추가하는 경우) 복제는 소스 클러스터와 대상 클러스터의 열 간의 비호환성을 감지하여 오류를 표시합니다.

이때는 target cluster의 Hive Configuration > Hive Service Advanced Configuration Snippet (Safety Valve) for hive-site.xml에 다음을 설정후 Hive를 restart후 실패한 Hive Replication을 재수행 하면 해결된다.

특히, Hive Replication schedule의 옵션에 "Force Overwrite"를 활성화 해도 이 오류는 발생한다.


*설정값 (CDP에서는 default가 true임)

hive.metastore.disallow.incompatible.col.type.changes=false  


A personal place to organize information learned during the development of such Hadoop, Hive, Hbase, Semantic IoT, etc.
We are open to the required minutes. Please send inquiries to gooper@gooper.com.

위로