+user, -dev It's not clear about `compute` in your question. There are two `compute` here.
1. DStream.compute: it always runs in the driver, and all RDDs are created in the driver. E.g., DStream.foreachRDD(rdd => rdd.count()) "rdd.count()" is called in the driver. 2. RDD.compute: this will run in the executor and the location is not guaranteed. E.g., DStream.foreachRDD(rdd => rdd.foreach { v => println(v) }) "println(v)" is called in the executor. Best Regards, Shixiong Zhu 2015-09-17 3:47 GMT+08:00 Renyi Xiong <renyixio...@gmail.com>: > Hi, > > I want to do temporal join operation on DStream across RDDs, my question > is: Are RDDs from same DStream always computed on same worker (except > failover) ? > > thanks, > Renyi. >