azure - 如何高效读取数据湖文件的元数据

标签 azure apache-spark pyspark databricks azure-data-lake-gen2

我想在 databricks 脚本中读取数据湖中文件的上次修改日期时间。如果我在从数据湖读取数据时能够将其作为一列高效地读取,那就完美了。
谢谢:)

enter image description here

更新: 如果您使用 Databricks,自 2022 年 3 月 18 日发布 Databricks 运行时 10.4 以来,dbutils.fs.ls() 命令也会返回文件夹和文件的“modificationTime”: enter image description here

最佳答案

关于该问题,请引用以下代码

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
conf = sc._jsc.hadoopConfiguration()

conf.set(
  "fs.azure.account.key.<account-name>.dfs.core.windows.net",
  "<account-access-key>")

fs = Path('abfss://<container-name>@<account-name>.dfs.core.windows.net/<file-path>/').getFileSystem(sc._jsc.hadoopConfiguration())

status=fs.listStatus(Path('abfss://<container-name>@<account-name>.dfs.core.windows.net/<file-path>/'))

for i in status:
  print(i)
  print(i.getModificationTime())

enter image description here

关于azure - 如何高效读取数据湖文件的元数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68005693/

相关文章:

python - 如何在 PySpark 1.6.1 中将第二个数据帧的列传递到 UDF 中

python - 将 rdd 的 numpy 数组转换为 pyspark 数据帧

python - 将 Pyspark RDD 拆分为不同的列并转换为 Dataframe

regex - 如何查找和替换字符串列中数字之间的空格?

Azure Active Directory - 更新用户 - 目标实体集当前不支持该请求

reactjs - 无法获取index.html Azure Linux Web应用程序

java - 在 Spark (JAVA) 中加入操作后架构顺序更改

java - 在 Spark 结构化流处理中处理二进制数据

c# - 如何知道 Azure 文件存储共享何时已被删除?

azure - 将 Microsoft 监控代理连接到 Azure Log Analytics (OMS) 'Service Connector, 4007'