Bigdata, Hadoop ecosystem, Semantic IoT등의 프로젝트를 진행중에 습득한 내용을 정리하는 곳입니다.
필요한 분을 위해서 공개하고 있습니다.
문의사항은 gooper@gooper.com로 메일을
보내주세요.
ps -ef | grep HIVESEVER2 로 프로세스ID를 찾은 다음에 아래의 1,2는 시간을 두고 여러 번 수행해서 전후를 비교해야 원인 파악하기가 수월하다.
(예, 프로세스ID가 72787인 경우)
1. sudo -u hive /usr/java/jdk/bin/jstack -l 72787 >> jstack.out
2. sudo -u hive pstack 72787 >> pstack.out
3. sudo -u hive /usr/java/jdk/bin/jmap -dump:live,format=b,file=jmap.hprof 72787
Dumping heap to /tmp/hsperfdata_hive/jmap.hprof ...
Heap dump file created
1. jstack
1) 자바 Thread dump확인시 사용.
2) jstack [PID] : 프로세스 번호를 넣어 실행한다. ( -l 옵션을 사용하면 각 Thread의 Lock정보까지 획득.)
3) thread dump내용중 prio(thread priority)는 1부터 10까지 있으며, thread의 우선순위를 가진다.
2. pstack
1) pstack은 리눅스 OS레벨의 Thread덤프를 제공한다.
3. Thread status
1) NEW : Thread를 생성하였지만 아직 시작하지 않은 상태.
2) RUNNABLE : 실행중인 상태
3) BLOCKED : 다른 Thread가 소유하고 있는 Monitor를 소유하기 위하여 대기 중인 상태.
(Monitor? 각 자바객체가 소유하고 있는 공간으로 한번에 하나의 Thread만이 접근할 수 있다.)
4) WAITING : Object.wait(), Thread.join()등의 메서드에 의해 대기중인 상태.
5) TIMED_WAITING : Object.wait(), Thread.join(), Thread.sleep()등의 메소드에 의해 대기중인상태
(WAITING과 차이점은 최대 대기시간이 지정됨.)
6) TERMINATED : 실행을 종료하였거나 Exception이 발생한 상태.
댓글 0
번호 | 제목 | 글쓴이 | 날짜 | 조회 수 |
---|---|---|---|---|
681 | dual table만들기 | 총관리자 | 2014.05.16 | 825 |
680 | 특정파일이 생성되어야 action이 실행되는 oozie job만들기(coordinator.xml) | 총관리자 | 2014.05.20 | 984 |
679 | source의 type을 spooldir로 하는 경우 해당 경로에 파일이 들어오면 파일단위로 전송함 | 총관리자 | 2014.05.20 | 687 |
678 | hive에서 insert overwrite directory.. 로 하면 default column구분자는 'SOH'혹은 't'가 됨 | 총관리자 | 2014.05.20 | 999 |
677 | import 혹은 export할때 hive파일의 default 구분자는 --input-fields-terminated-by " |