【发布时间】:2019-02-24 20:19:59
【问题描述】:
我有一个要求,我必须读取 HDFS 中不同目录中的 parquet 文件。目录按客户端细分,每个客户端都有不同的架构(命名约定)。
我正在使用 scala 将这些文件读入数据帧。有没有一种方法可以通过使用客户端名称作为输入参数来动态更改输入字段名称。我有近 30 个客户可供阅读。
提前致谢
【问题讨论】:
标签: scala apache-spark hadoop hdfs parquet
我有一个要求,我必须读取 HDFS 中不同目录中的 parquet 文件。目录按客户端细分,每个客户端都有不同的架构(命名约定)。
我正在使用 scala 将这些文件读入数据帧。有没有一种方法可以通过使用客户端名称作为输入参数来动态更改输入字段名称。我有近 30 个客户可供阅读。
提前致谢
【问题讨论】:
标签: scala apache-spark hadoop hdfs parquet
您可以首先使用StructType 以编程方式构建架构
类 https://spark.apache.org/docs/latest/sql-programming-guide.html#programmatically-specifying-the-schema ,然后做类似的事情
spark.read.schema(myGeneratedSchema).parquet(path)
【讨论】: