2012-01-09 3 views
3

Я получаю следующие ошибки во время работы улья. Я просто использую db-файл по умолчанию.hive show tables дает ошибки

Я использую следующие Hadoop версии

[email protected]:~/dse-1.0.1/bin# dse hadoop version 
Hadoop 0.20.204.1-dse1-SNAPSHOT 
Subversion git://ip-10-98-83-84/ on branch (no branch) -r e44f689b34165e7909e7c7c48c7f1a5a9171e8c7 
Compiled by hudson on Thu Nov 3 16:05:34 EDT 2011 



hive> show tables; 
java.lang.NoSuchMethodError: org.apache.thrift.meta_data.FieldValueMetaData.<init>(BZ)V 
     at org.apache.cassandra.thrift.CfDef.<clinit>(CfDef.java:296) 
     at org.apache.cassandra.thrift.KsDef.read(KsDef.java:753) 
     at org.apache.cassandra.thrift.Cassandra$describe_keyspaces_result.read(Cassandra.java:21498) 
     at org.apache.cassandra.thrift.Cassandra$Client.recv_describe_keyspaces(Cassandra.java:1153) 
     at org.apache.cassandra.thrift.Cassandra$Client.describe_keyspaces(Cassandra.java:1129) 
     at com.datastax.bdp.util.CassandraProxyClient.initialize(CassandraProxyClient.java:213) 
     at com.datastax.bdp.util.CassandraProxyClient.<init>(CassandraProxyClient.java:180) 
     at com.datastax.bdp.util.CassandraProxyClient.newProxyConnection(CassandraProxyClient.java:119) 
     at com.datastax.bdp.hadoop.hive.metastore.CassandraClientHolder.<init>(CassandraClientHolder.java:66) 
     at com.datastax.bdp.hadoop.hive.metastore.CassandraHiveMetaStore.setConf(CassandraHiveMetaStore.java:69) 
     at org.apache.hadoop.util.ReflectionUtils.setConf(ReflectionUtils.java:62) 
     at org.apache.hadoop.util.ReflectionUtils.newInstance(ReflectionUtils.java:117) 
     at org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.getMS(HiveMetaStore.java:316) 
     at org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.executeWithRetry(HiveMetaStore.java:268) 
     at org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.createDefaultDB(HiveMetaStore.java:413) 
     at org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.init(HiveMetaStore.java:194) 
     at org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.<init>(HiveMetaStore.java:159) 
     at org.apache.hadoop.hive.metastore.HiveMetaStoreClient.<init>(HiveMetaStoreClient.java:108) 
     at org.apache.hadoop.hive.ql.metadata.Hive.createMetaStoreClient(Hive.java:1868) 
     at org.apache.hadoop.hive.ql.metadata.Hive.getMSC(Hive.java:1878) 
     at org.apache.hadoop.hive.ql.metadata.Hive.getDatabase(Hive.java:1024) 
     at org.apache.hadoop.hive.ql.metadata.Hive.databaseExists(Hive.java:1013) 
     at org.apache.hadoop.hive.ql.exec.DDLTask.showTables(DDLTask.java:1691) 
     at org.apache.hadoop.hive.ql.exec.DDLTask.execute(DDLTask.java:289) 
     at org.apache.hadoop.hive.ql.exec.Task.executeTask(Task.java:130) 
     at org.apache.hadoop.hive.ql.exec.TaskRunner.runSequential(TaskRunner.java:57) 
     at org.apache.hadoop.hive.ql.Driver.launchTask(Driver.java:1063) 
     at org.apache.hadoop.hive.ql.Driver.execute(Driver.java:900) 
     at org.apache.hadoop.hive.ql.Driver.run(Driver.java:748) 
     at org.apache.hadoop.hive.cli.CliDriver.processCmd(CliDriver.java:164) 
     at org.apache.hadoop.hive.cli.CliDriver.processLine(CliDriver.java:241) 
     at org.apache.hadoop.hive.cli.CliDriver.main(CliDriver.java:456) 
     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) 

Любая помощь будет оценена.

Благодаря

ответ

1

Кажется, у вас есть неправильные банки в CLASSPATH. Ошибка NoSuchMethodError возникает, когда у вас установлена ​​более старая версия (или неподдерживаемая версия) Jars.

+0

Как я могу найти и очистить путь к классам. – user1106775

0

Путь к классу может быть ошибочно определен.

шагов, как я следовал при настройке Hive

  1. Installed улья в локальной машине

  2. Открыта .bash_profile файла и добавил две строки

    экспорта HIVE_HOME =/дом/Hadoop/Desktop/улей-0,6,0

    export PATH = $ PATH: $ HIVE_HOME/bin

    [Необязательно: Для запуска улей без ввода его бен папку]

  3. источник типа ~/.bash_profile в терминале

  4. Наконец, тип улья в терминале

незлой столб меня так, как вы установили Улей

Смежные вопросы