Skip to content

Instantly share code, notes, and snippets.

@jacace
jacace / gist:6965669d626aefb1eb2bb5db4d14bd1c
Created March 8, 2021 19:56
Joins in Java Spak Streaming API
private static void joinDemo(JavaDStream<ConsumerRecord<String, String>> productStream,
JavaDStream<ConsumerRecord<String, String>> salesStream) {
ObjectMapper jacksonParser = new ObjectMapper();
JavaPairDStream<Object, Object> s1 = productStream.mapToPair(record -> new Tuple2<Object, Object>(record.key(),
jacksonParser.readValue(record.value(), Item.class)));
JavaPairDStream<Object, Object> s2 = salesStream.mapToPair(record -> new Tuple2<Object, Object>(record.key(),
jacksonParser.readValue(record.value(), DailySales.class)));
JavaPairDStream<Object, Tuple2<Object, Object>> s3 = s1.join(s2);
s3.foreachRDD(new VoidFunction<JavaPairRDD<Object, Tuple2<Object, Object>>>() {