문제 중 하나는 하이브 발생

문제 HQL의 사용에 대한 오늘의 기록이지도 = 100 %가 발생하여 그 결과를 수행 할 수있는 생각 이상 = 100 % 감소, 마지막은 갑자기 버그를보고, 인생은 정말 놀라움의 완전하고 예기치 않은, 나는 단지이 말을 할 수 ... 더 행복 놀라운 일이 없다

그림 삽입 설명 여기

나는이 버그를보고 한 후, 로그는 벌집을 발견 볼, 인터페이스의 구현 하이브가 같은 신문은 상황이 밖으로, 다음 역사 하둡의 사용 무엇을 참조하십시오 8088보기 집계 로그와 여기에 UI가 4의 시작 발견 아무지도 없어야 할 로그가 나타납니다을 줄일 수 없다, A가 감소지도하는 것은지도보기 로그에없는 작업 점을 감소 신문 잘못의 원인을, 문제는, 힙 오버 플로우 및 가상 메모리를 발견하는 선도, 완전하지 않습니다 지도의 원인은 날아했다

그림 삽입 설명 여기

여러 뭔가 간단한 댓글을 디지털에 초점을 맞춘

1기가바이트의 110.2 MB
2.1 GB 가상 메모리의 3.7 GB 사용. 죽이는 용기
1,110.2MB이 작업에 대한 실제 물리적 메모리입니다
2,1GB는 mapreduce.map.memory.mb 세트 (기본값)
3,3.7GB 작업은 가상 메모리를 취할 것입니다
4,2.1GB 수득 mapreduce.map.memory.db 승산 yarn.nodemanager.vmem-pmem 비율 인
yarn.nodemanager.vmem-pmem 비율 가상 메모리의 물리적 메모리의 비율이고 5 제공된 원사를 site.xml은 기본 2.1
I 로컬 3 설정된 경우 계산 값 1 * 3 = 3기가바이트 인

요약하면 로그는 우리가 한도는 여기에 그냥 넘어하지 작업의 않습니다 넘어 메모리는 3.7G 및 시스템 가상 메모리 2.1g의입니다 가상으로 작업입니다 이야기가상 메모리이 지식을 이해하지 못하는 자신의 바이두의 실제 메모리와 차이가 있습니다
다음과 같은 분야에서 솔루션 그래서

가상 메모리 검사 오프 원사를 site.xml 세트에서 (기본값은 진정한 열린 상태입니다)
<property>
  <name>yarn.nodemanager.vmem-check-enabled</name>
  <value>false</value>
  <description>Whether virtual memory limits will be enforced for containers.</description>
</property>

이, 당신은 작업의 실행을 계속할 수 밖에 난 단지이 구성 있도록 잠긴 일반적으로 가상 메모리 검사 메커니즘에 있기 때문에 내 자신의 구성 및 데이터 처리 검색 메모리의 양에 따르면, 충분하다

실 - site.xml의 물리적 메모리가 폐쇄 될 수있는 체크
<property>
  <name>yarn.nodemanager.pmem-check-enabled </name>
  <value>false</value>
  <description>Whether virtual memory limits will be enforced for containers.</description>
</property>

그러나 이러한 설정은 일반적으로 프로그램이 메모리 누수 및 기타 문제가있는 경우, 검사를 취소하기 때문에 사용하지 않는 것이 좋습니다 클러스터의 붕괴로 이어질 수있다.

시작되지 프로그램을 일으킬 수있는 실제 메모리의 부족, 증가 물리적 메모리가
mapred-site.xml의 적절하게 데이터 처리의 양에 따라 다음과 같은 파라미터 값을 조정 :2048 -Xmx1024M적절한 자기 설정 값
<property>
  <name>mapreduce.map.memory.mb</name>
  <value>2048</value>
</property>

<property>
  <name>mapreduce.map.java.opts</name>
  <value>-Xmx1024M</value>
</property>

<property>
  <name>mapreduce.reduce.memory.mb</name>
  <value>2048</value>
</property>

<property>
  <name>mapreduce.reduce.java.opts</name>
  <value>-Xmx2560M</value>
</property>
가상 메모리는 실제 메모리의 비율에 의해 영향을 받으므로, 비율 크기 - 그것은 yarn.nodemanager.vmem의 pmem을 조정할 수 있습니다
하여 기울기 MR 데이터, 메모리 누수와 다른 이유에서 실행중인 프로세스가있을 수 있습니다 그 구체적인 이유의 상세한 분석

원사-site.xml의 구성 파일을 변경 한 후 클러스터 원사를 다시 시작하는 것을 잊지 마십시오

게시 39 개 원래 기사 · 원의 찬양 (13) · 전망 2297

추천

출처blog.csdn.net/qq_43205282/article/details/105081963