Tom*_*ker 3 apache-spark pyspark databricks
我现在正在做EdX的Spark课程简介.是否有可能在我的计算机上保存Databricks的数据帧.
我问这个问题,因为这个课程提供了Databricks笔记本,在课程结束后可能无法使用.
在笔记本中使用命令导入数据:
log_file_path ='dbfs:/'+ os.path.join('databricks-datasets','cs100','lab2','data-001','apache.access.log.PROJECT')
我找到了这个解决方案,但它不起作用:
df.select( '年', '模式').write.format( 'com.databricks.spark.csv').保存( 'newcars.csv')
MrC*_*ine 11
Databricks运行云VM,并且不知道本地计算机的位置.如果要保存DataFrame的CSV结果,可以运行,display(df)并且可以选择下载结果.
Tri*_*mus 11
您还可以将其保存到文件存储并通过其句柄下载,例如
df.coalesce(1).write.format("com.databricks.spark.csv").option("header", "true").save("dbfs:/FileStore/df/df.csv")
Run Code Online (Sandbox Code Playgroud)
您可以在 Databricks GUI 中找到句柄,方法是转到 Data > Add Data > DBFS > FileStore > your_subdirectory > part-00000-...
在这种情况下下载(对于 Databricks 西欧实例)
https://westeurope.azuredatabricks.net/files/df/df.csv/part-00000-tid-437462250085757671-965891ca-ac1f-4789-85b0-akq7bc6a8780-3597-1-c000.csv
Run Code Online (Sandbox Code Playgroud)
我还没有测试过它,但我会假设通过@MrChristine 提到的答案下载它时你会有 100 万行的行限制在这里不适用。
尝试这个。
df.write.format("com.databricks.spark.csv").save("file:///home/yphani/datacsv")
Run Code Online (Sandbox Code Playgroud)
这会将文件保存到 Unix 服务器中。
如果您仅提供 /home/yphani/datacsv 它会在 HDFS 上查找路径。