달나라 노트

Hive : IllegalArgumentException Size requested for unknown type: java.util.Collection 본문

SQL/Apache Hive

Hive : IllegalArgumentException Size requested for unknown type: java.util.Collection

CosmosProject 2024. 8. 22. 20:01
728x90
반응형

 

 

 

IllegalArgumentException Size requested for unknown type: java.util.Collection

 

Hive에서 위같은 에러가 발생할 때가 있습니다.

 

그럴 땐 두 가지 방법으로 해결할 수 있습니다.

 

첫 번째는 아래처럼 hive.map.aggr 옵션을 false로 지정하는 것입니다.

SET hive.map.aggr = false;

 

 

 

 

두 번째는 COLLECT_SET() 대신 ARRAY_AGG(DISTINCT ~~) function을 사용하는 것입니다.

COLLECT_SET()이 중복값을 제거하고 값을 Array로 연결해주는 것이기 때문에

ARRAY_AGG()에 DISTINCT를 같이 사용해서 COLLECT_SET()과 동일한 기능을 구현할 수 있습니다.

 

 

FYI.

https://www.sqlines.com/hive-to-trino/collect_set

 

 

 

 

 

728x90
반응형
Comments