Connectez Ruche thorugh Java JDBC

Il est question ici se connecter à partir de java pour la Ruche mais le mien est différents

Ma ruche en cours d'exécution sur la machine1 et j'ai besoin de passer quelques requêtes à l'aide de Java server exécutée sur machine2. Ce que je comprends de la Ruche a une interface JDBC dans le but de recevoir des requêtes à distance. J'ai pris le code à partir d'ici - HiveServer2 Clients

J'ai installé les dépendances écrit dans l'article:-

  1. ruche-jdbc*.jar
  2. ruche-service*.jar
  3. libfb303-0.9.0.jar
  4. libthrift-0.9.0.jar
  5. log4j-1.2.16.jar
  6. slf4j-api-1.6.1.jar
  7. slf4j-log4j12-1.6.1.jar
  8. commons-logging-1.0.4.jar

Cependant, je dois java.lang.NoClassDefFoundError erreur lors de la compilation
D'Erreur Complet:

Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/hadoop/conf/Configuration
    at org.apache.hive.jdbc.HiveConnection.createBinaryTransport(HiveConnection.java:393)
    at org.apache.hive.jdbc.HiveConnection.openTransport(HiveConnection.java:187)
    at org.apache.hive.jdbc.HiveConnection.<init>(HiveConnection.java:163)
    at org.apache.hive.jdbc.HiveDriver.connect(HiveDriver.java:105)
    at java.sql.DriverManager.getConnection(DriverManager.java:571)
    at java.sql.DriverManager.getConnection(DriverManager.java:215)
    at com.bidstalk.tools.RawLogsQuerySystem.HiveJdbcClient.main(HiveJdbcClient.java:25)

Une autre question sur StackOverflow recommandé d'ajouter Hadoop API dépendances Maven - La Ruche D'Erreur

Je ne comprends pas pourquoi ai-je besoin d'hadoop API pour un client de se connecter avec la Ruche. Ne devrait pas le pilote JDBC être agnostique de la requête sous-jacente du système? J'ai juste besoin de passer à quelque requête SQL?

Edit:
Je suis à l'aide de Cloudera(5.3.1), je pense que j'ai besoin d'ajouter CDH dépendances. Cloudera instance est en cours d'exécution hadoop 2.5.0 et HiveServer2

Mais les serveurs sont des machines 1. Sur la machine, le code doit au moins de la compilation, et j'aurais des questions à l'exécution seulement!

quelle est la version d'hadoop et de la ruche?

OriginalL'auteur Mangat Rai Modi | 2015-02-27