[英]File metadata such as timein Azure Storage from Databricks
我正在尝试获取 creationfile 元数据。
文件在: Azure 存储
访问数据抛出: Databricks
现在我正在使用:
file_path = my_storage_path
dbutils.fs.ls(file_path)
但它返回
[FileInfo(path='path_myFile.csv', name='fileName.csv', size=437940)]
我没有任何关于创建时间的信息,有没有办法获得这些信息?
Stackoverflow 中的其他解决方案是指已经在 databricks 中的文件 databricks dbfs 是否支持文件元数据,例如文件/文件夹创建日期或修改日期在我的情况下,我们从 Databricks 访问数据,但数据位于 Azure 存储中。
这实际上取决于您使用的 Databricks Runtime (DBR) 的版本。 例如,如果您使用 DBR 10.2,则可以使用修改时间戳(未使用 10.0/10.1 进行测试,但在 9.1 上绝对不可用):
如果您需要获取该信息,您可以通过 Py4j 网关使用Hadoop FileSystem API ,如下所示:
URI = sc._gateway.jvm.java.net.URI
Path = sc._gateway.jvm.org.apache.hadoop.fs.Path
FileSystem = sc._gateway.jvm.org.apache.hadoop.fs.FileSystem
Configuration = sc._gateway.jvm.org.apache.hadoop.conf.Configuration
fs = FileSystem.get(URI("/tmp"), Configuration())
status = fs.listStatus(Path('/tmp/'))
for fileStatus in status:
print(f"path={fileStatus.getPath()}, size={fileStatus.getLen()}, mod_time={fileStatus.getModificationTime()}")
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.