gpt4 book ai didi

java - 使用 java 在 Apache Spark 中以平面列表形式获取单列值

转载 作者:行者123 更新时间:2023-12-02 00:58:07 24 4
gpt4 key购买 nike

我是 Java 和 Apache Spark 的新手,并试图弄清楚如何从 Spark 中的数据集中将单个列的值作为平面列表获取。

Dataset<Row> sampleData = sparkSession.read()
.....
.option("query", "SELECT COLUMN1, column2 from table1")
.load();

List<Row> columnsList = sampleData.select("COLUMN1")
.where(sampleData.col("COLUMN1").isNotNull()).collectAsList();

String result = StringUtils.join(columnsList, ", ");
// Result I am getting is
[15230321], [15306791], [15325784], [15323326], [15288338], [15322001], [15307950], [15298286], [15327223]
// What i want is":
15230321, 15306791......

如何使用 java 在 Spark 中实现此目的?

最佳答案

Spark 行可以通过编码器转换为字符串:

    List<String> result = sampleData.select("COLUMN1").as(Encoders.STRING()).collectAsList();

关于java - 使用 java 在 Apache Spark 中以平面列表形式获取单列值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61058707/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com