Apache Zeppelin - 无法使用 SparkR 从 HIVE table 加载数据帧

Apache Zeppelin - Can't load a dataframe from a HIVE table using SparkR

我需要从 Hive table 加载数据帧,为此我遵循了 Apache Spark 2.3 文档中的这条指令。(https://spark.apache.org/docs/latest/sparkr.html)。我是用 Zeppelin 笔记本做的。

有人可以解释一下如何使用 SparkR 创建数据框吗?或者我做错了什么?任何答案表示赞赏。

文档

查询可以用 HiveQL 表达。 results <- sql("FROM src SELECT key, value")

我的代码:

sp_df <- sql("SELECT * FROM sparkr_test")

我的代码结果:

head(sp_df) [1] “SELECT * FROM sparkr_test”

您的数据位于何处,您是否已将源数据注册为 table?你需要 运行 像这样的东西:

sql("CREATE TABLE IF NOT EXISTS sparkr_test (column1 INT, column2 STRING ...) USING hive")
sql("LOAD DATA LOCAL INPATH 'path/to/data/data.txt' INTO TABLE sparkr_test")

之前可以查询table

我遇到了同样的问题,通过指定库解决了。

SparkR::sql("select * from mytable")