hive 에서 array, map 타입의 데이터를 처리하기 편리하게 하기 위해서
1행의 데이터를 여러행의 데이터로 펼쳐주는 explode UDTF 함수가 존재한다.
이 함수와 lateral view 명령어를 이용하면 array, map을 쉽게 처리할 수 있다.
사용 방법은 다음과 같다.
select mapcolumn
from table1;
> {"key1" : "value1", "key2" : "value2"}
select key, value
from table1
lateral view explode(mapcolumn) k as key, value
limit 10
;
key1 value1
key2 value2
반응형
'빅데이터 > hive' 카테고리의 다른 글
[hive][db] rank() 함수를 이용하여 그룹별로 상위 n개의 결과만 출력하는 방법 (0) | 2017.12.27 |
---|---|
[hive] 하이브 성능 최적화 방안 (0) | 2017.12.26 |
[hive] drop table partitions 의 null 오류 (0) | 2017.12.21 |
[hive] 정규식을 이용하여 문자열 검색 (0) | 2017.12.14 |
[hive] JSON 문자열을 맵으로 변환(json string to map) (0) | 2017.12.12 |