【发布时间】:2019-05-06 09:45:23
【问题描述】:
我正在编写一个验证函数,它应该检查:
-
Dataset<Row> ds具有列col1和col2。它也可能包含其他列。 - 验证
col1和col2中没有缺失值(NaN、NULL、null 等)。
代码应该是 Java 代码。这是我到目前为止所拥有的
private static boolean isSleepDataValid(SparkSession spark, Dataset<Row> ds) {
ds.createOrReplaceTempView("validityData");
if (spark.sql("SELECT col1 FROM validityData WHERE col1 IS NULL").count() > 0) {
return false;
}
if (spark.sql("SELECT col2 FROM validityData WHERE col2 IS NULL").count() > 0) {
return false;
}
return true;
}
但是,这很丑陋,我正在寻找一种更好更清洁的方法。我想避免签名中的SparkSession spark 和函数体中的SQL。
【问题讨论】:
-
也许这会有所帮助(尽管在 python 中):stackoverflow.com/questions/55964196/…
标签: java apache-spark