spark java dataset api没有提供迭代器
所以处理一些列表内部数据关联转换,而不是只处理单条数据的转换得换成javaRdd api。
下面是一个简单例子。通过进入宿舍的时间 找到后面的第一条离开宿舍的记录。并合并成一条完整的宿舍的 进出记录。
这种业务,直接获得列表的当前对象,不能获得整个列表是很难实现的。
static final Encoder inoutEncoder = Encoders.bean(AccessInout.class);
public static void main(String[] args) {
SparkSession spark = SparkSession
.builder().master("local")
.appName("Java Spark SQL data sources example")
.config("spark.some.config.option", "some-value")
.getOrCreate();
runJdbcDatasetExample(spark);
//spark.stop();
}
private static void runJdbcDatasetExample(SparkSession spark) {
Properties connectionProperties = new Properties();
connectionProperties.put("user", "root");
connectionProperties.put("password", "0000000&