2013-07-18 3 views
5

Я новичок в Hadoop/hive.i у меня есть hasoop и hive.it работают нормально, когда я использую hive в качестве командной строки, но я собираюсь реализовать JDBC улья, тогда введите следующую команду

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

Тогда получите следующее сообщение об ошибке, так пожалуйста помогите мне, как реализовать JDBC улей Pls кто-нибудь помочь мне ...

[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

Спасибо за ответ дорогой, но теперь она получит эту проблему Exception в потоке «пул-1-токарно-1» java.lang. OutOfMemoryError: Java куча пространства \t в org.apache.thrift.protocol.TBinaryProtocol.readStringBody (TBinaryProtocol.java:353) \t в org.apache.thrift.protocol.TBinaryProtocol.readMessageBegin (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'). Однако я предлагаю вам создать новый вопрос, включая фрагмент кода, который обращается к Hive –