1

Spark/Shark クラスターを起動しようとしていますが、同じ問題が発生し続けています。https://github.com/amplab/shark/wiki/Running-Shark-on-a-Clusterの指示に従い、記載されているように Hive に対処しました。

Shark Driver は Hadoop jar の別のバージョンを取得していると思いますが、その理由は不明です。

詳細は次のとおりです。

スパーク/シャーク 0.9.0

Apache Hadoop 2.3.0

Amplabs ハイブ 0.11

スカラ 2.10.3

Java 7

すべてをインストールしましたが、非推奨の警告と例外が表示されます。

14/03/14 11:24:47 INFO Configuration.deprecation: mapred.input.dir.recursive は非推奨です。代わりに、mapreduce.input.fileinputformat.input.dir.recursive を使用してください。

14/03/14 11:24:47 INFO Configuration.deprecation: mapred.max.split.size は廃止されました。代わりに、mapreduce.input.fileinputformat.split.maxsize を使用してください

例外:

Exception in thread "main" org.apache.hadoop.hive.ql.metadata.HiveException: java.lang.RuntimeException: Unable to instantiate org.apache.hadoop.hive.metastore.HiveMetaStoreClient
    at org.apache.hadoop.hive.ql.metadata.Hive.getAllDatabases(Hive.java:1072)
    at shark.memstore2.TableRecovery$.reloadRdds(TableRecovery.scala:49)
    at shark.SharkCliDriver.<init>(SharkCliDriver.scala:275)
    at shark.SharkCliDriver$.main(SharkCliDriver.scala:162)
    at shark.SharkCliDriver.main(SharkCliDriver.scala)
Caused by: java.lang.RuntimeException: Unable to instantiate org.apache.hadoop.hive.metastore.HiveMetaStoreClient
    at org.apache.hadoop.hive.metastore.MetaStoreUtils.newInstance(MetaStoreUtils.java:1139)
    at org.apache.hadoop.hive.metastore.RetryingMetaStoreClient.<init>(RetryingMetaStoreClient.java:51)
    at org.apache.hadoop.hive.metastore.RetryingMetaStoreClient.getProxy(RetryingMetaStoreClient.java:61)
    at org.apache.hadoop.hive.ql.metadata.Hive.createMetaStoreClient(Hive.java:2288)
    at org.apache.hadoop.hive.ql.metadata.Hive.getMSC(Hive.java:2299)
    at org.apache.hadoop.hive.ql.metadata.Hive.getAllDatabases(Hive.java:1070)
    ... 4 more
Caused by: java.lang.reflect.InvocationTargetException
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
    at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
    at org.apache.hadoop.hive.metastore.MetaStoreUtils.newInstance(MetaStoreUtils.java:1137)
    ... 9 more
Caused by: java.lang.UnsupportedOperationException: Not implemented by the DistributedFileSystem FileSystem implementation
4

1 に答える 1

1

私はこれと同じ問題を抱えていました.hadoop/hiveとspark/sharkの互換性のないバージョンが原因だと思います.

次のいずれかを行う必要があります。

  • から hadoop-core-1.0.x.jar を削除しますshark/lib_managed/jars/org.apache.hadoop/hadoop-core/
  • サメをビルドするときは、次のように明示的に設定SHARK_HADOOP_VERSIONします。

    cd shark;
    SHARK_HADOOP_VERSION=2.0.0-mr1-cdh4.5.0 ./sbt/sbt clean
    SHARK_HADOOP_VERSION=2.0.0-mr1-cdh4.5.0 ./sbt/sbt package
    

2番目の方法は、他の問題も解決しました。詳細については、次のトピックもご覧ください: https://groups.google.com/forum/#!msg/shark-users/lTNPcxHJiOQ/EqzyByZrzQMJ

于 2014-07-21T16:49:11.707 に答える