gpt4 book ai didi

java - 在java中,如何链接原始RDD和转换后得到的RDD

转载 作者:行者123 更新时间:2023-12-01 09:57:18 27 4
gpt4 key购买 nike

我有一个自定义对象的 RDD,比如说 Person 。然后每次我得到一个新的 RDD 时,我都会在这个 RDD 上使用几个窄的(尽管可能是宽的)转换。最后我得到了一个不同类型的 RDD,比如说 Integer 。现在我想以某种方式知道什么Integer链接到每个Person ,并像这样打印它:

person a -> 3
person b -> 1
person c -> 7

我尝试过: JavaPairRDD resultRDD = myRDD.mapToPair(rec -> new Tuple2(rec, new SomeFunction.call(rec)));

这段代码对我有用,因为我可以获取每个元组并打印它。但我不确定当有很多转换时这是否是实现此目的的好方法(是吗?)

考虑使用另一个选项:transformedRDD.parent(number,evidence)并以这种方式获取原始 RDD,然后了解如何识别 Person 和 Integer 之间的引用。

注:evidencescala.reflect.ClassTag<U>而且我对 scala 不熟悉,所以我不太明白在那里写什么

任何帮助将不胜感激!

最佳答案

我会一直随身携带一把 key 。这样更容易避免错过识别,因为每个对象每次都有它的 ID。换句话说:

persons
.map(p => (id, p))
.map( (id, p) => (id, transformation1(p)) )
.map( (id, p) => (id, transformation2(p)) )
....

关于java - 在java中,如何链接原始RDD和转换后得到的RDD,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37092296/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com