我在大型数据集上运行二等分k-means时得到Can only zip RDDs with same number of elements in each partition
。
我正在使用spark 2.0.0
代码:
data = spark_context.textFile(input_path)
parsed_data = data.map(lambda line: [float(x) for x in line.split(delimiter)])
model = BisectingKMeans.train(parsed_data.map(lambda x: x[1:]), no_clusters, maxIterations=iterations)
pred = model.predict(parsed_data.map(lambda x: x[1:])).collect()
输入文件大小为17 GB。 注意:文件中的第一个字段是ID,所以当我进行聚类时,我正在跳过它。 Spark在内部进行拉链操作。我认为普通kmeans的问题是固定的。 https://issues.apache.org/jira/browse/SPARK-13178?focusedCommentId=15131436&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-15131436