Spark 从特定位置读取表

问题描述 投票:0回答:1

我使用以下代码将数据框保存为表格:

yearly_calltype.write.option("path", "/home/user/tables/firstProject").saveAsTable('yearly_calltype_count')

但是我如何从这个位置读取这个表呢?

当我尝试这样做时:

spark.read.table("/home/user/tables/firstProject/yearly_calltype_count")

我收到此错误:

[PARSE_SYNTAX_ERROR] Syntax error at or near '/'.(line 1, pos 0)

== SQL ==
/home/user/tables/firstProject/yearly_calltype_count
^^^

我相信当我们尝试阅读表格时,我们无法指定位置。 Spark 尝试从默认的

/home/user/spark-warehouse
位置读取表格。我们可以通过更改
spark.sql.warehouse.dir
配置来更改此位置。但我不想那样做。有没有办法通过在
read.table
中指定表格的位置来读取此表格?

python apache-spark pyspark apache-spark-sql
1个回答
0
投票

def table(tableName: String): org.apache.spark.sql.DataFrame
只需要
tableName
不带桌子
path

您可以像下面这样访问表数据

spark
.read
.option("path","/home/user/tables/firstProject")
.table("yearly_calltype_count")
.show(false)

spark
.read
.table("yearly_calltype_count")
.show(false)
© www.soinside.com 2019 - 2024. All rights reserved.