首页 文章

使用CqlStorageHandler进行Hive和Cassandra集成

提问于
浏览
0

我引用了这个git项目,用于使用hive table集成cassandra数据 . 我将相应的cassandra jar复制到hive lib文件夹中 . 但是在对cassandra运行查询时,我收到以下错误 . 请帮我解决 .

https://github.com/milliondreams/hive/tree/cas-support-cql/cassandra-handler

hive> CREATE EXTERNAL TABLE消息(row_key string,col1 string,col2 string)

STORED BY'org.apache.hadoop.hive.cassandra.cql.CqlStorageHandler'WITH SERDEPROPERTIES(“cql.primarykey”=“row_key”)
TBLPROPERTIES(“cassandra.ks.name”=“mycqlks”,“cassandra.ks.stratOptions”=“'DC':1,'DC2':1”,
“cassandra.ks.strategy”= “NetworkTopologyStrategy”);
java.lang.NoSuchMethodError:org.apache.hadoop.hive.metastore.MetaStoreUtils.getSchema(Lorg / apache / hadoop / hive / metastore / api / Table;)Ljava / util / Properties; org.apache.hadoop.hive.cassandra.cql.CqlManager.createColumnFamily(CqlManager.java:238)org.apache.hadoop.hive.cassandra.cql.CqlManager.createCFIfNotFound(CqlManager.java:189)org.apache位于org.apache.hadoop.hive.metastore的org.apache.hadoop.hive.metastore.HiveMetaStoreClient.createTable(HiveMetaStoreClient.java:462)的.hadoop.hive.cassandra.cql.CqlStorageHandler.preCreateTable(CqlStorageHandler.java:247) .HiveMetaStoreClient.createTable(HiveMetaStoreClient.java:455)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:606)atg.apache.hadoop.hive.metastore.RetryingMetaStoreClient.invoke(RetryingMetaStoreClient.java:74)at com.sun.proxy . $ Proxy11 org.apach中org.apache.hadoop.hive.ql.metadata.Hive.createTable(Hive.java:596)的.createTable(未知来源) e.hadoop.hive.ql.exec.DDLTask.createTable(DDLTask.java:3776)位于org.apache.hadoop的org.apache.hadoop.hive.ql.exec.DDLTask.execute(DDLTask.java:256) . 位于org.apache.hadoop.hive.ql的org.apache.hadoop.hive.ql.exec.TaskRunner.runSequential(TaskRunner.java:57)的hive.ql.exec.Task.executeTask(Task.java:144) . Driver.launchTask(Driver.java:1355)org.apache.hadoop.hive.ql.Driver.execute(Driver.java:1139)org.apache.hadoop.hive.ql.Driver.run(Driver.java: 945)org.apache.hadoop.hive.cli.CliDriver.processLocalCmd(CliDriver.java:259)org.apache.hadoop.hive.cli.CliDriver.processCmd(CliDriver.java:216)atg.apache.hadoop .hive.cli.CliDriver.processLine(CliDriver.java:413)org.apache.hadoop.hive.cli.CliDriver.run(CliDriver.java:756)org.apache.hadoop.hive.cli.CliDriver.main (CliDriver.java:614)位于sun.reflect.DelegatingMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)sun.reflect.DelegatingMethodAccessorImpl.invoke的sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) (DelegatingMethodAccessorImpl.java:43)atg.apache.hadoop.util.RunJar.main(RunJar.java:160)java.lang.reflect.Method.invoke(Method.java:606)FAILED:执行错误,返回代码-101来自org.apache.hadoop.hive.ql.exec.DDLTask

1 回答

相关问题