【问题标题】:Python - Spark - HiveContext - Can't find tablesPython - Spark - HiveContext - 找不到表
【发布时间】:2018-12-12 17:56:06
【问题描述】:

我正在使用带有 Spark 1.6.0 的 VM,我正在尝试使用来自 Hive 的 dat 创建一个数据帧。

我在默认数据库中有 2 个表,但是当我尝试使用 Spark 显示所有表时,我没有得到任何结果:

sqlContext.sql("show tables").collect()
[]
sqlContext.sql("show databases").collect()
[Row(result=u'default')]

我的 Hive 表是直接在默认数据库上的 Hive 上创建的:

CREATE TABLE team
(id INT, sports STRING, players INT)
ROW FORMAT DELIMITED
FIELDS TERMINATED BY ","
LOCATION "/user/cloudera/data/sports";

为什么我看不到我的桌子?

谢谢!

【问题讨论】:

  • 你在使用HiveContext吗?
  • 是的,Spark 将 HiveContext 创建为 sqlContext
  • 你可以试试sqlContext.sql("show tables in default").show()
  • @GaurangShah it retuns "Caused by: ERROR XJ040: Failed to start database 'metastore_db' with class loader org.apache.spark.sql.hive.client.IsolatedClientLoader$$anon$1@2dd31aac,见下一个例外的细节。”

标签: python apache-spark hive


【解决方案1】:

您应该将 hive-site.xml 文件复制到 spark conf 目录。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-05-19
    • 1970-01-01
    • 1970-01-01
    • 2016-03-12
    • 1970-01-01
    • 2016-09-08
    • 1970-01-01
    • 2019-03-21
    相关资源
    最近更新 更多