Напечатайте Безопасные объединения в Spark, используя Java - PullRequest
0 голосов
/ 27 ноября 2018

У меня есть два набора данных, и я присоединяюсь к ним следующим образом, используя java

Dataset<Row> joineddata = ds1.join(ds2, col("col1").equalTo(col("col2")), "inner");

Может кто-нибудь сказать мне, как объединить два набора данных в Apace Spark безопасным для типов способом, используя java.Я могу найти примеры для безопасного соединения типа в Scala.Но я не могу найти то же самое, используя java.

Может кто-нибудь предложить мне ссылку или что-то, связанное с этим

1 Ответ

0 голосов
/ 06 декабря 2018

ИМХО, я не думаю, что вы можете пока.

Сообщество Scala реализовало это: https://github.com/typelevel/frameless., но, поскольку оно использует Cats, его трудно перенести на Java.и даже с этой библиотекой вы больше не имеете дело с собственным Spark, поэтому не все API Spark поддерживаются в бескаркасном формате.

как только вы присоединитесь к 2 наборам данных, вы получите в результате фрейм данных, что приведет к потере безопасности типов.row.getAs в основном приведение типов, поэтому исключение RT неизбежно.

...