簡體   English   中英

循環中的聯合火花數據集

[英]Union spark Datasets in loop

我正在嘗試將數據集附加到循環中的空數據集。 但結果數據集始終為空。

我試圖通過僅執行代碼中注釋的第 1 行來消除循環中的變量failedRows ,但仍然得到空的failedRows數據集。

Dataset<Row> failedRows = sparkSession.createDataFrame(new ArrayList<>(), itemsDS.schema());
failedRows.count();
Dataset<Row> filteredDs;
for(String tagName: mandatoryTagsList){
    //failedRows.union(itemsDS.filter(functions.col(tagName).isNull()));//Line 1
    filteredDs = itemsDS.filter(functions.col(tagName).isNull());
    if(filteredDs.count()>0){
        failedRows.union(filteredDs);//Line 2
        failedRows.count();
    }
}

有誰知道為什么工會沒有產生預期的結果。

您每次都需要保存到一個新變量。

與 Spark 中所有分布式集合相同的Dataset是不可變的。

failedRows = failedRows.union(filteredDs);//Line 2

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM