我有jsut开始使用数据砖,我使用社区云,我试图读取json文件.我已经尝试这样做如下:
from pyspark.sql import SparkSession
df=spark.read.json('people')
但是我得到了错误:
IllegalArgumentException:路径必须是绝对路径:人民
我尝试用不同的写法访问people.json文件:
“people.json”、“/people.json”、“Data/deault/people "等,最后一个基于我对数据存储位置的理解:
然而,这并不起作用,我不断得到相同的错误信息。
每当我尝试用sql.Context.sql读取它时,它都会显示表:
df=sqlContext.sql("SELECT * FROM people")
df.show()
>>>
+----+-------+
| age| name|
+----+-------+
|null|Michael|
| 30| Andy|
| 19| Justin|
+----+-------+
那么我的问题是如何用spark.read.json打开json文件?
3条答案
按热度按时间dy2hfwbg1#
你为什么要用
spark.read.json
?在你的图片中,“人”显然是一张table。如果你想在spark中读取一个表,你可以:
spark.table("people")
。当你想读取一个json文件时,你可以使用
spark.read.json
。在这种情况下,你可以:spark.read.json("absolute/path/to/json/file")
但你需要知道该路径(这正是你得到的错误)。我不知道你的文件存储在哪里,这完全取决于你知道它。你把它们放在哪里了?ldfqzlk82#
1.导航到“数据”-〉“创建表”
1.将people.json文件拖放到“文件”窗格(Like this)
1.不要点击“Create Table with UI”按钮,只需复制文件下方自动创建的路径即可。例如“/FileStore/tables/people.json”
1.现在你可以粘贴正确的路径并使用read.json命令。它看起来像这样:df =Spark.读取.json('/FileStore/表格/人. json')
ac1kyiln3#
您可能需要尝试:df=spark.read.json('default. people')
但如上所述-对于表,它将是:df=spark.table('default. people')