【问题标题】:Type Safe joins in Spark using Java使用 Java 在 Spark 中键入安全连接
【发布时间】: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 apache-spark join apache-spark-sql apache-spark-dataset


【解决方案1】:

恕我直言,我认为您目前还做不到。

scala 社区已经实现了这个:https://github.com/typelevel/frameless。但由于它使用的是 Cats,因此很难将其移植到 Java 中。即使有了这个库,您也不再需要处理原生 Spark,因此并非所有 Spark API 都支持无框架。

一旦你加入 2 个数据集,你就会得到数据框,因此失去了类型安全性。 row.getAs 基本上是类型转换,所以 RT 异常是不可避免的。

【讨论】:

    猜你喜欢
    • 2017-09-26
    • 1970-01-01
    • 1970-01-01
    • 2015-11-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-03-09
    • 1970-01-01
    相关资源
    最近更新 更多