Gon*_*nza 2 python azure azure-data-lake databricks azure-databricks
我正在尝试使用“rename ()”函数通过“import os”库在Azure Databricks中使用Python重命名文件,这确实非常简单,但是在Databricks中执行此操作时我无法到达其中的路径我的文件是。在数据湖中,但是执行命令“% fs ls path_file”是的,我看到了它,我什至可以毫无问题地读取它并使用 pyspark 处理它。
我留下我的代码示例:
import os
old_name = r"/mnt/datalake/path/part-00000-tid-1761178-3f1b0942-223-1-c000.csv"
new_name = r"/mnt/datalake/path/example.csv"
os.rename(old_name, new_name)
Run Code Online (Sandbox Code Playgroud)
上面返回一个错误,指出找不到路径或文件,但“ls”命令可以毫无问题地执行相同的路径。
另一方面,我尝试用 pySpark 重命名该文件,但它使用了我没有安装的 hadoop 库(org.apache.hadoop.conf.Configuration),并且无法在生产环境中安装它......
我会缺少什么?
如果您正在使用os.rename,则需要将文件引用为/dbfs/mnt/...因为您正在使用本地 API 来访问 DBFS。
但实际上,使用dbutils.fs.mv进行文件重命名可能会更好:
old_name = r"/mnt/datalake/path/part-00000-tid-1761178-3f1b0942-223-1-c000.csv"
new_name = r"/mnt/datalake/path/example.csv"
dbutils.fs.mv(old_name, new_name)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3532 次 |
| 最近记录: |