2013-07-18 3 views
5

Ich bin neu bei Hadoop/hive.i habe hadoop installiert und hive.it funktioniert gut, wenn ich Hive als Eingabeaufforderung verwende, aber ich werde JDBC von Hive dann implementieren geben Sie den folgenden Befehl

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

erhalten dann folgende Fehler so pls mir helfen, wie jdbc von hive zu implementieren pls mir jemand helfen ...

[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) 

Antwort

6

Dies könnte, weil es ein anderer Prozess ist (vielleicht ein anderes hiveserver) bereits auf Port 10000 hören. Ausgabe netstat -ntulp | grep ':10000', um es zu sehen, das ist der Fall und k ill der Prozess auf einem anderen Port dort oder startet Thrift-Server aufgelistet, zB:

hive --service hiveserver -p 10001

+0

Danke für Ihre Antwort teuer, aber jetzt wird es dieses Problem Exception in thread "Pool-1-Faden-1" java.lang bekommen. OutOfMemoryError: Java Heap-Speicher \t bei org.apache.thrift.protocol.TBinaryProtocol.readStringBody (TBinaryProtocol.java:353) \t bei org.apache.thrift.protocol.TBinaryProtocol.readMessageBegin (TBinaryProtocol.java:215) \t bei org.apache.thrift.TBaseProcessor.process (TBaseProcessor.java:27) \t bei org.apache.thrift.server.TThreadPoolServer $ WorkerProcess. run (TThreadPoolServer.java:206) –

+1

Sie können versuchen, die Größe des Heapspeichers zu erhöhen (setzen Sie es in 'hive-env.sh'). Ich würde Ihnen jedoch empfehlen, eine neue Frage mit Ihrem Code-Snippet zu erstellen, das auf Hive zugreift –

Verwandte Themen