3

我设法使用 Kaggle API 从 Kaggle 下载数据集。数据存放在/databricks/driver目录下。

%sh pip install kaggle
%sh
export KAGGLE_USERNAME=my_name
export KAGGLE_KEY=my_key
kaggle competitions download -c ncaaw-march-mania-2021
%sh unzip ncaaw-march-mania-2021.zip

问题是:如何在 DBFS 中使用它们?以下是我如何读取数据以及尝试使用 pyspark 读取 csv 文件时遇到的错误:

spark.read.csv('/databricks/driver/WDataFiles_Stage1/Cities.csv')
AnalysisException: Path does not exist: dbfs:/databricks/driver/WDataFiles_Stage1/Cities.csv
4

1 回答 1

2

spark.read...默认情况下使用 DBFS 路径,因此您有两种选择:

  • 用于file:/databricks/driver/...强制从本地文件系统读取 - 它适用于社区版,因为它是单节点集群。它不适用于分布式集群

  • dbutils.fs.cp使用命令 ( docs )将文件复制到 DBFS并从 DBFS 读取:

dbutils.fs.cp("file:/databricks/driver/WDataFiles_Stage1/Cities.csv", 
   "/FileStore/Cities.csv")
df = spark.read.csv("/FileStore/Cities.csv")
....
于 2021-08-07T15:08:24.707 回答