我知道k-means算法是迭代的。如果我们想使用MapReduce运行它,则必须在每次迭代中重新加载和重新处理整个输入数据,这会增加通信成本。但我的问题是,DBSCAN和SCAN是否也像k-means和k-medoid一样迭代?
答案 0 :(得分:1)
如果您的问题是重新加载,也许您可以尝试使用Spark,它允许缓存中间结果,与Hadoop MapReduce相比,可以缩短处理数据的时间。
DBSCAN需要几乎每个节点的邻居计算,当我们谈论大数据时,这实际上非常昂贵。
在这样的系统上实现良好的DBSCAN非常复杂,并且已经使用Spark here完成了。但是我相信迭代算法比使用DBSCAN等其他人更有效地使用Spark。