使用 Java 在 Spark 中键入安全连接
Posted
技术标签:
【中文标题】使用 Java 在 Spark 中键入安全连接【英文标题】:Type Safe joins in Spark using Java 【发布时间】:2018-11-27 14:43:49 【问题描述】:我有两个数据集,我正在使用 java 加入它们,如下所示
Dataset<Row> joineddata = ds1.join(ds2, col("col1").equalTo(col("col2")), "inner");
谁能告诉我如何使用 java 以类型安全的方式在 Apace Spark 中加入两个数据集。我可以在 scala 中找到类型安全连接的示例。但是我用 java 找不到。
谁能给我一个链接或与此相关的东西
【问题讨论】:
能否链接您找到的示例并解释为什么不能在 Java 中应用这些示例? @user10465355 示例在此链接中***.com/questions/40605167/… 【参考方案1】:恕我直言,我认为您目前还做不到。
scala 社区已经实现了这个:https://github.com/typelevel/frameless。但由于它使用的是 Cats,因此很难将其移植到 Java 中。即使有了这个库,您也不再需要处理原生 Spark,因此并非所有 Spark API 都支持无框架。
一旦你加入 2 个数据集,你就会得到数据框,因此失去了类型安全性。 row.getAs
基本上是类型转换,所以 RT 异常是不可避免的。
【讨论】:
以上是关于使用 Java 在 Spark 中键入安全连接的主要内容,如果未能解决你的问题,请参考以下文章