티스토리 뷰
하이브 기본 UDAF를 사용하는 중에 Caused by: java.lang.OutOfMemoryError: GC overhead limit exceeded
오류가 발생하는 경우가 있습니다. collect_list()
, collect_set()
을 이용하는 경우 발생할 수 있는데 너무 많은 데이터가 집계되어 JVM의 힙사이즈를 넘어설 때 많이 발생합니다.
이럴 때는 하나의 맵에서 처리하는 데이터를 줄이고, 컨테이너의 메모리를 늘려서 문제를 해결할 수 있습니다.
-- 매퍼 개수 조정
set mapreduce.input.fileinputformat.split.maxsize=8000000;
set mapreduce.input.fileinputformat.split.minsize=4000000;
set tez.grouping.max-size=8000000;
set tez.grouping.min-size=4000000;
-- 컨테이너 메모리 조정
set hive.tez.container.size=4096;
set hive.tez.java.opts=-Xmx3200m;
반응형
'빅데이터 > hive' 카테고리의 다른 글
[hive] 맵 조인 처리 기준 사이즈 확인 (0) | 2020.06.11 |
---|---|
[hive] 맵조인과 셔플조인(Map Join vs Shuffle Join) (0) | 2020.06.09 |
[hive] 하이브 매크로(macro) (0) | 2020.04.22 |
[hive] This command is not allowed on an ACID table default.table_name with a non-ACID transaction manager 오류 해결 방법 (0) | 2020.03.17 |
[hive] 구체화 뷰(Materialized View) (0) | 2020.01.21 |
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- Hadoop
- 오류
- error
- build
- 알고리즘
- bash
- hbase
- 다이나믹
- Tez
- HDFS
- HIVE
- 하이브
- 백준
- S3
- nodejs
- mysql
- AWS
- oozie
- airflow
- 파이썬
- java
- Linux
- 정올
- Python
- yarn
- emr
- ubuntu
- SQL
- SPARK
- 하둡
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
글 보관함