为什么在应用程序中使用 SQLContext 对 Hive table 执行 SQL 失败(但 spark-shell 中的相同查询工作正常)?
Why does executing SQL against Hive table using SQLContext in application fail (but the same query in spark-shell works fine)?
我正在使用 Spark 1.6。
我正在尝试通过 :
连接到我的 spark-sql java 代码中的 table
JavaSparkContext js = new JavaSparkContext();
SQLContext sc = new SQLContext(js);
DataFrame mainFile = sc.sql("Select * from db.table");
它给了我一个 table 未找到异常。
但是当我在 spark-shell 中使用 scala 执行此操作时,它有效 fine.The table 被访问并且我也可以打印出数据。
对此问题有任何意见吗?
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>
我正在使用 Spark 1.6。
我正在尝试通过 :
连接到我的 spark-sql java 代码中的 tableJavaSparkContext js = new JavaSparkContext();
SQLContext sc = new SQLContext(js);
DataFrame mainFile = sc.sql("Select * from db.table");
它给了我一个 table 未找到异常。
但是当我在 spark-shell 中使用 scala 执行此操作时,它有效 fine.The table 被访问并且我也可以打印出数据。
对此问题有任何意见吗?
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>