[HADOOP] 모든 쿼리의 하이브 오류 : 작업 핸들과 관련된 로그를 찾을 수 없습니다.
HADOOP모든 쿼리의 하이브 오류 : 작업 핸들과 관련된 로그를 찾을 수 없습니다.
Hadoop에서 실행중인 모든 하이브 쿼리에 오류 발생.
존재하는 테이블에서 select 문을 실행하고 다음 결과를 얻습니다.
Fetching results ran into the following error(s):
Couldn't find log associated with operation handle:
OperationHandle[opType=EXECUTE_STATEMENT,
getHandleIdentifier()=263df9c3-c076-454f-a025-23f5b919e957]
그리고 해당 쿼리에 대한 로그는 다음과 같습니다.
해결법
-
==============================
1.이 오류는 즉 ( "hive.server2.logging.operation.log.location") 로그를 작성하지 않는 위치를 가리키는 경우에 발생할 수 있습니다.
이 오류는 즉 ( "hive.server2.logging.operation.log.location") 로그를 작성하지 않는 위치를 가리키는 경우에 발생할 수 있습니다.
OperationManager.java의 코드를 보라.
OperationLog operationLog = getOperation(opHandle).getOperationLog(); if (operationLog == null) { throw new HiveSQLException("Couldn't find log associated with operation handle: " + opHandle); }
-
==============================
2.색조를 사용할 때 Cloudera 배포판에서이를 볼 수 있다면 Cloudera Manager의 hive-site.xml에 대한 하이브 서비스 고급 구성 미리보기 (안전 밸브)에 다음을 추가하십시오 (또는 hive-site.xml을 다른 배포판) :
색조를 사용할 때 Cloudera 배포판에서이를 볼 수 있다면 Cloudera Manager의 hive-site.xml에 대한 하이브 서비스 고급 구성 미리보기 (안전 밸브)에 다음을 추가하십시오 (또는 hive-site.xml을 다른 배포판) :
<property> <name>hive.server2.logging.operation.enabled</name> <value>true</value> </property>
-
==============================
3.AWS EMR을 사용하는 경우 hive-site.xml 파일 (/etc/hive/conf.dist/hive-site.xml)에 다음을 추가하십시오.
AWS EMR을 사용하는 경우 hive-site.xml 파일 (/etc/hive/conf.dist/hive-site.xml)에 다음을 추가하십시오.
<property> <name>hive.server2.logging.operation.enabled</name> <value>true</value> </property>
그런 다음 마스터 노드에 로그인하고 색조 및 하이브 서버를 다시 시작하십시오.
sudo stop hive-server2 sudo stop hue sudo start hue sudo start hive-server2
이것은 나를 위해 고쳤습니다 (릴리스 레이블 emr-4.6.0에서 테스트 됨).
-
==============================
4.쉘 스크립트 또는 자바 프로그램으로 인해이 문제가 발생하는 경우 연결 문자열을 먼저 확인해야합니다. 몇 달 전에 비슷한 문제가 생겼습니다. 스크립트에서 이러한 방식으로 쿼리를 실행했을 때 :
쉘 스크립트 또는 자바 프로그램으로 인해이 문제가 발생하는 경우 연결 문자열을 먼저 확인해야합니다. 몇 달 전에 비슷한 문제가 생겼습니다. 스크립트에서 이러한 방식으로 쿼리를 실행했을 때 :
beeline -u jdbc:hive2:// -e "show databases;"
이것은 연결 문자열을 수정하고 쿼리를 실행하면 적절한 하이브 연결 문자열이 누락되어서 발생했지만 아무런 문제없이 실행되었습니다.
beeline -u jdbc:hive2://server.enterprise.org:10000/default -e "show databases;"
이 답변은 Hue / Cloudera 배포판의 스크립트 나 코드를 사용하는 개발자에게만 해당되며 친절하게도 위의 답변을 참조하십시오.
건배!
-
==============================
5.Windows 8.1에서는 하이브 쿼리 파트 내부에서도 같은 문제가 발생했습니다.
Windows 8.1에서는 하이브 쿼리 파트 내부에서도 같은 문제가 발생했습니다.
org.apache.hive.service.cli.HiveSQLException: Couldn't find log associated with operation handle: OperationHandle [opType=EXECUTE_STATEMENT, getHandleIdentifier()=230485c4-a1be-4a17-94c8-a1ebce426319]
따라서 % HIVE_HOME % / conf / hive-site.xml에 가서 hive.server2.logging.operation.log.location 속성 이름을 이전 값 $ {system : user.name} / operation_logs로 변경했습니다.
<property> <name>hive.server2.logging.operation.log.location</name> <value>/tmp/${user.name}/operation_logs</value> <description>Top level directory where operation logs are stored if logging functionality is enabled</description> </property>
또한 $ {system : user.name}을 포함하는 모든 값을 /tmp/${user.name}에 바꿔 놓았습니다. 그러면 하이브의 작업 로깅 문제로 인해 나를 데려옵니다.
-
==============================
6.Azure에서는 다음을 사용할 수 있습니다.
Azure에서는 다음을 사용할 수 있습니다.
beeline -u 'jdbc:hive2://headnodehost:10001/;transportMode=http'
from https://stackoverflow.com/questions/32090918/hive-error-on-all-queries-couldnt-find-log-associated-with-operation-handle by cc-by-sa and MIT license
'HADOOP' 카테고리의 다른 글
[HADOOP] 원사 : 전체 클러스터 리소스를 활용하는 방법? (0) | 2019.07.29 |
---|---|
[HADOOP] Hadoop에서 Snappy를 컨테이너 형식으로 사용하는 방법 (0) | 2019.07.29 |
[HADOOP] hadoop 설치를 찾을 수 없습니다 : $ HADOOP_HOME이 설정되어 있거나 hadoop이 경로에 있어야합니다. (0) | 2019.07.29 |
[HADOOP] 새 Hadoop API를 사용하여 MultipleTextOutputFormat을 사용하려면 어떻게해야합니까? (0) | 2019.07.29 |
[HADOOP] MRJob에서 각지도 단계의 입력을 구체적으로 결정하는 방법은 무엇입니까? (0) | 2019.07.29 |