【问题标题】:Why does executing SQL against Hive table using SQLContext in application fail (but the same query in spark-shell works fine)?为什么在应用程序中使用 SQLContext 对 Hive 表执行 SQL 失败(但 spark-shell 中的相同查询工作正常)?
【发布时间】:2016-09-28 08:05:33
【问题描述】:

我正在使用 Spark 1.6。

我正在尝试通过以下方式连接到我的 spark-sql java 代码中的表:

JavaSparkContext js = new JavaSparkContext();
SQLContext sc = new SQLContext(js); 

DataFrame mainFile = sc.sql("Select * from db.table");

它给了我一个找不到表的异常。

但是当我使用 scala 在 spark-shell 中执行此操作时,它工作正常。表被访问,我也可以打印出数据。

关于这个问题的任何意见?

【问题讨论】:

    标签: java hive apache-spark-sql apache-spark-1.6


    【解决方案1】:

    Spark-shell 提供 HiveContext。如果您想在 Java 代码中使用 HiveContext,请在您的应用程序中添加依赖项,然后在 Java 程序中使用。请参考http://spark.apache.org/docs/1.6.2/sql-programming-guide.html#hive-tables

    <dependency>
            <groupId>org.apache.spark</groupId>
            <artifactId>spark-hive_2.10</artifactId>
            <version>1.6.2</version>
    </dependency>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-05-15
      • 1970-01-01
      • 1970-01-01
      • 2023-03-20
      • 1970-01-01
      • 1970-01-01
      • 2016-07-11
      相关资源
      最近更新 更多