我们正尝试从Spark rdd创建Ignite RDD,如下所示
def storeDataframeInCache(sc: SparkContext, rdd: RDD[Row]): Unit ={
var igniteContext: IgniteContext[String, Row] = new IgniteContext[String, Row](sc, () => IgniteConfig.getIgniteConf(true), false)
var igniteRDD = igniteContext.fromCache("rdd")
igniteRDD.saveValues(rdd)
}
这里saveValues需要花费太多时间。
有更好的方法吗?
提前致谢!!!
答案 0 :(得分:0)
表现不佳可能有不同的原因。您应该弄清楚问题是在Spark还是Ignite中,并开始优化慢速问题。
缓存性能很大程度上取决于其配置。群集中存储的相同数据的副本越多,它的工作速度就越慢。如果希望缓存快速运行,则应选择分区模式而不是复制并禁用备份。持久性也可能会对缓存的性能产生负面影响。您可以参考文档以获取更多信息:https://apacheignite.readme.io/docs/performance-tips