【发布时间】:2021-01-12 01:36:30
【问题描述】:
我的 parquet 文件中有以下格式的扁平化传入数据:
我想将其转换为以下格式,我不扁平化我的结构:
我尝试了以下方法:
Dataset<Row> rows = df.select(col("id"), col("country_cd"),
explode(array("fullname_1", "fullname_2")).as("fullname"),
explode(array("firstname_1", "firstname_2")).as("firstname"));
但它给出了以下错误:
线程 "main" org.apache.spark.sql.AnalysisException 中的异常:每个选择子句只允许一个生成器,但找到了 2 个:explode(array(fullname_1, fullname_2)), explode(array(firstname_1, firstname_2) ));
我理解这是因为您不能在查询中使用超过 1 个爆炸。 我正在寻找在 Spark Java 中执行上述操作的选项。
【问题讨论】:
标签: apache-spark apache-spark-sql databricks