私のsparkジョブで10Mエントリを持つキャッシュからigniteRDD
を作成すると、10MすべてがSparkコンテキストにロードされますか?参考までに私のコードを見つけてください。Apache IgniteとApache Sparkの統合、IgniteRDDを使用したSpark Contextへのキャッシュのロード
SparkConf conf = new SparkConf().setAppName("IgniteSparkIntgr").setMaster("local");
JavaSparkContext context = new JavaSparkContext(conf);
JavaIgniteContext<Integer, Subscriber> igniteCxt = new JavaIgniteContext<Integer,Subscriber>(context,"example-ignite.xml");
JavaIgniteRDD<Integer,Subscriber> cache = igniteCxt.fromCache("subscriberCache");
DataFrame query_res = cache.sql("select id, lastName, company from Subscriber where id between ? and ?", 12, 15);
DataFrame input = loadInput(context);
DataFrame joined_df = input.join(query_res,input.col("id").equalTo(query_res.col("ID")));
System.out.println(joined_df.count());
上記のコードでは、subscriberCache
は10M以上のエントリを持っています。上記のコードのどの時点でも、10M SubscriberオブジェクトがJVMにロードされますか?または、クエリ出力のみを読み込みますか? FYI
: