2013-07-18 3 views
5

하이브를 새로 사용합니다. 하이브를 명령 프롬프트로 사용할 때 hadoop 및 hive.it을 잘 설치했지만 하이브리드의 JDBC를 구현할 것입니다. 다음 명령을 입력

hive>$HIVE_HOME/bin/hive --service hiveserver 

그리고 ... 오류가 너무 PLS Pls는 사람이 도와 하이브의 JDBC를 구현하는 방법을 도와 다음

[email protected]:~$ $HIVE_HOME/bin/hive --service hiveserver 
Starting Hive Thrift Server 
WARNING: org.apache.hadoop.metrics.jvm.EventCounter is deprecated. Please use org.apache.hadoop.log.metrics.EventCounter in all the log4j.properties files. 
org.apache.thrift.transport.TTransportException: Could not create ServerSocket on address 0.0.0.0/0.0.0.0:10000. 
    at org.apache.thrift.transport.TServerSocket.<init>(TServerSocket.java:93) 
    at org.apache.thrift.transport.TServerSocket.<init>(TServerSocket.java:75) 
    at org.apache.hadoop.hive.metastore.TServerSocketKeepAlive.<init>(TServerSocketKeepAlive.java:34) 
    at org.apache.hadoop.hive.service.HiveServer.main(HiveServer.java:674) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
    at java.lang.reflect.Method.invoke(Method.java:616) 
    at org.apache.hadoop.util.RunJar.main(RunJar.java:156) 

답변

6

다른 프로세스가 있기 때문에 이것은 수 있습니다 (아마도 다른 hiveserver를 얻을 수) 이미 포트 10000에서 수신 대기 중입니다. 문제 netstat -ntulp | grep ':10000'을보고 해당 사례를 확인하고 k 병이 과정이 나열하거나 다른 포트에서 드리프트 서버를 시작, 예를 들면 : 사랑의 답장을

hive --service hiveserver -p 10001

+0

감사하지만 지금은 스레드에서이 문제를 예외 "풀-1 스레드 1"인 java.lang을 얻을 것이다. OutOfMemoryError가 : Java 힙 공간 org.apache.thrift.protocol.TBinaryProtocol.readStringBody에서 \t (TBinaryProtocol.java:353) org.apache.thrift.protocol.TBinaryProtocol.readMessageBegin에서 \t (TBinaryProtocol.java:215) \t에서 org.apache.thrift.TBaseProcessor.process (TBaseProcessor.java:27) \t at org.apache.thrift.server.TThreadPoolServer $ WorkerProcess. run (TThreadPoolServer.java:206) –

+1

힙 크기를 늘리려고 시도 할 수 있습니다 ('hive-env.sh'에서 설정). 그러나 하이브에 액세스하는 코드 스 니펫을 포함하여 새로운 질문을 만드는 것이 좋습니다. –