pyspark2:k表示输入数据不直接缓存

2024-06-03 01:04:33 发布

您现在位置:Python中文网/ 问答频道 /正文

我不知道我为什么收到这个信息

WARN KMeans: The input data is not directly cached, which may hurt performance if its parent RDDs are also uncached.

当我尝试使用SparkKMeans

^{pr2}$

它说我的输入(数据帧)没有被缓存!!在

我试着打印df_零件已缓存我收到了True,这意味着我的数据帧被缓存了,那么为什么Spark仍然警告我这个呢?在


Tags: the数据信息whichinputdataisperformance
2条回答

这在Spark 2.2.0中已修复。这是Spark-18356。在

这里的讨论也表明这不是什么大问题,但修复可能会稍微减少运行时间,并避免警告。在

此消息是由o.a.s.mllib.clustering.KMeans生成的,如果不修补Spark代码,您将无法真正了解它。在

内部o.a.s.ml.clustering.KMeans

  • DataFrame转换为RDD[o.a.s.mllib.linalg.Vector]。在
  • 执行o.a.s.mllib.clustering.KMeans。在

缓存DataFrame时,内部使用的RDD不会被缓存。这就是你看到警告的原因。虽然这很烦人,但我不会太担心。在

相关问题 更多 >