用Java对大型数据集进行聚类

用Java对大型数据集进行聚类,java,cluster-analysis,large-data,dbscan,Java,Cluster Analysis,Large Data,Dbscan,我的应用程序每天从受监控的应用程序收集100万个日志/错误事件样本。我的数据点每个都有10个属性,我需要对这些样本进行聚类,以发现受监控应用程序中的异常和异常行为。然而,对100万个样本进行聚类似乎是一项艰巨的任务。我使用DBSCAN是因为我的数据有我想要消除的噪声,并且我不知道数据集中的集群数量 我试过SPMF和ELKI,有索引和没有索引。下面是我的16GB windows笔记本电脑的测试结果。(它将是ubuntu的产品,但我仍在研究生产中使用的硬件。可能是AWS CR1实例) SPMF的DB

我的应用程序每天从受监控的应用程序收集100万个日志/错误事件样本。我的数据点每个都有10个属性,我需要对这些样本进行聚类,以发现受监控应用程序中的异常和异常行为。然而,对100万个样本进行聚类似乎是一项艰巨的任务。我使用DBSCAN是因为我的数据有我想要消除的噪声,并且我不知道数据集中的集群数量

我试过SPMF和ELKI,有索引和没有索引。下面是我的16GB windows笔记本电脑的测试结果。(它将是ubuntu的产品,但我仍在研究生产中使用的硬件。可能是AWS CR1实例)

SPMF的DBSCAN即使对于50K数据集,也会使用-Xmx11g标志耗尽内存。ELKI比SPMF做得更好。ELKI的无索引DBSCAN大约需要26分钟,有索引的DBSCAN大约需要10分钟来集群100k数据集

因此,对于我的100万样本量来说,这些结果看起来并不令人鼓舞。如何加速集群?Mahout/Hadoop是解决方案吗