In one batch, you have an RDD containing all the statuses that arrive at a 2-second interval. Then you can process these statuses individually. Here is a quick example:
JavaDStream<Status> inputDStream = TwitterUtils.createStream(ctx, new OAuthAuthorization(builder.build()), filters); inputDStream.foreach(new Function2<JavaRDD<Status>,Time,Void>(){ @Override public Void call(JavaRDD<Status> status, Time time) throws Exception { List<Status> statuses=status.collect(); for(Status st:statuses){ System.out.println("STATUS:"+st.getText()+" user:"+st.getUser().getId());
I hope I didnβt get you wrong.
Zoran
source share