Databrick创建一个dataFrames列表及其大小

时间:2018-10-19 15:21:50

标签: apache-spark dataframe apache-spark-sql databricks

我正在研究Databricks,我想列出所有数据框及其观测值的列表。

是否可以在DataLake中具有每个数据帧的大小(行数)?

我发现了如何列出所有数据帧:

display(dbutils.fs.ls("dbfs:/mnt/adls/fraud/qal/landing"))*

我知道如何计算。

是否可以列出我的数据框和大小?

谢谢

1 个答案:

答案 0 :(得分:2)

您可以从文件列表和行数创建DataFrame。以下代码假定您的所有表均为Parquet格式。如果不是这种情况,则需要更改阅读代码。

def namesAndRowCounts(root: String) =
  spark.createDataFrame(
    dbutils.fs.ls(root).map { info =>
      (info.name, spark.read.load(info.path).count)
    }
  ).toDF("name", "rows").orderBy('name)

display(namesAndRowCounts("/mnt/adls/fraud/qal/landing"))