【问题标题】:Run Queries with Apache SHARK on Mac OSX在 Mac OSX 上使用 Apache SHARK 运行查询
【发布时间】:2014-02-15 22:46:52
【问题描述】:

我在 Mac OSX 10.8 上本地运行 Shark 查询时遇到问题。我正在尝试对存储在 Hive 中的数据运行一些测试查询。我正在使用 Scala 2.9.3 和 Hive 0.9.0,两者似乎都运行良好。 Hive 数据库使用 MySQL 来存储元数据。

我可以正常启动 Shark。我可以在 Shark 控制台中看到我在 Hive 中的所有数据库。我可以切换到所需的数据库。但是当我尝试查询数据时,我得到了错误。

简单的查询如下所示:

select * from table limit 100;

错误如下所示:

25.351: [Full GC 98320K->17564K(1013632K), 0.1279630 secs]
java.lang.NoSuchMethodError: org.apache.hadoop.hive.shims.HadoopShims.isLocalMode(Lorg/apache/hadoop/conf/Configuration;)Z
    at shark.execution.FileSinkOperator.execute(FileSinkOperator.scala:123)
    at shark.execution.SparkTask.execute(SparkTask.scala:101)
    at org.apache.hadoop.hive.ql.exec.Task.executeTask(Task.java:134)
    at org.apache.hadoop.hive.ql.exec.TaskRunner.runSequential(TaskRunner.java:57)
    at org.apache.hadoop.hive.ql.Driver.launchTask(Driver.java:1326)
    at org.apache.hadoop.hive.ql.Driver.execute(Driver.java:1118)
    at org.apache.hadoop.hive.ql.Driver.run(Driver.java:951)
    at shark.SharkCliDriver.processCmd(SharkCliDriver.scala:294)
    at org.apache.hadoop.hive.cli.CliDriver.processLine(CliDriver.java:406)
    at org.apache.hadoop.hive.cli.CliDriver.processLine(CliDriver.java:341)
    at shark.SharkCliDriver$.main(SharkCliDriver.scala:203)
    at shark.SharkCliDriver.main(SharkCliDriver.scala)
FAILED: Execution Error, return code -101 from shark.execution.SparkTask

【问题讨论】:

    标签: mysql hadoop hive shark-sql


    【解决方案1】:

    这看起来像是最近添加到 Shark 代码中的,https://github.com/amplab/shark/pull/140/files 可能没有使用 Hive 0.9 进行测试?

    当前的HadoopShims.java 确实有isLocalMode(),但Hive 0.9 HadoopShims.java 确实没有isLocalMode() 方法。

    我建议至少使用 Hive 0.10,如果可以的话,甚至更好的是最近的 0.12。

    【讨论】:

    • 嗯,下载 Shark 时,它实际上附带了一个 Hive 版本,即 0.9.0。使用这个版本也没有用。 github.com/amplab/shark/wiki/Running-Shark-Locally
    • 尝试添加-verbose:class,然后分析从哪里加载 shim。也许是错误的 CLASSPATH?我想我自己从来没有跑过鲨鱼。
    • 看起来是版本问题。从这里archive.apache.org/dist/hive/hive-0.9.0 的 Hive 0.9.0 不起作用。但是,使用 Shark 附带的 0.9.0 版本确实有效。现在我正在使用 Shark 附带的 Hive 版本并安装了 mysql 连接器,我的查询正在工作。
    猜你喜欢
    • 2014-09-27
    • 2019-06-15
    • 2011-04-05
    • 1970-01-01
    • 2013-11-02
    • 1970-01-01
    • 2014-07-14
    • 1970-01-01
    • 2013-11-28
    相关资源
    最近更新 更多