我可以获取存储在 Azure Databricks 上的文件元数据或文件统计信息吗

Can I get Metadata of Files, or Stats of Files, Stored on Azure Databricks

正如我在标题中提到的,我很想知道我是否可以获得一堆文件的元数据,基本上是一个 blob 中的所有文件,这些文件加载​​到 Azure Databricks 上。我希望有某种通用脚本可以 运行 提供文件统计信息(主要是 CSV 格式)。我知道在 SQL Server 中获取表格的各种统计数据非常容易,它也是 Microsoft 的产品。或者,也许可以生成某种报告来显示文件的元数据、统计信息等。最终,我想获得一个文件名、文件大小的列表,如果可能的话,还包括字段中的空值计数和所有字段中所有文件中的空值总数。谢谢。

对于文件,唯一可用的是 dbutils.fs.ls,它将列出文件夹中的文件,包括文件大小。

如果不打开 csv 文件并执行查询,您将无法获取其统计信息 - csv 是一个文本文件。

parquet等格式确实存储了数据分布的统计信息。如果您确实需要,可能有 python 和 scala 库可以为您阅读。

如果您在 Databricks (Hive) 中将文件注册为 table,那么可以为查询优化生成统计信息。 https://docs.databricks.com/spark/latest/spark-sql/language-manual/analyze-table.html

link 包含用于查看它们的 DESCRIBE 命令的详细信息。

喜欢SQL 服务器table 统计数据是分布并且只是估计值。例如,他们不会给你真正的空计数。两者都使用它们来提高查询性能,都不打算让用户直接使用统计信息。

此外,Databricks 不是 Microsoft 产品。