获得概率密度图& k-means集群有3亿行

时间:2014-08-11 14:45:39

标签: mysql sql hadoop mahout nosql

我使用的DBMS是MySQL(MariaDB)。

表格方案如下:

CREATE TABLE MyTable (
ID     INT     PRIMARY KEY,
TEXT   VARCHAR(200),
VALUE  DECIMAL(15,2) )

该表有3亿行或更多。

我希望通过从文本中提取值来获取以下两个过程的结果(例如,SELECT VALUE FROM MyTable WHEN TEXT LIKE '%any keywords%'; SQL)(结果将在网络上显示)

  1. 绘制概率密度图
  2. 使用K-Means算法聚类值
  3. 是否可以仅使用SQL获取上述结果?如果是这样,性能如何? (所需的响应时间少于2秒)如果没有,你能推荐更好的方法吗?

    如果有10个数据节点具有NoSQLMahout的组合,是否可以在2秒内从每个查询中获取结果,尤其是每秒有5个查询?如果没有,需要多少个数据节点?

    所以,如果您知道我目前遇到的麻烦的任何解决方案,请向我推荐系统架构。

1 个答案:

答案 0 :(得分:1)

评论时间有点长。

你的期望有点极端。使用大量自定义代码和具有大量处理器和大量内存的系统,可能会满足要求。

首先,您似乎并不了解k-means的工作原理。什么是距离指标?

其次,您没有解释为什么需要为每个查询重新聚类记录。通常,群集更多是离线活动,而评分(或分配群集)是在线的。

最后,我不建议在原始文本上进行k-means聚类。还有其他用于群集文本的算法,这些算法可能更适合您的实际问题。我建议你学习一些关于数据挖掘的知识(什么是k-means算法?什么是有用的?什么是期望最大化聚类?什么是奇异值分解?)我还建议你学习文本分析(什么标记化是什么?什么是词干?什么是词袋方法?什么是语义分析?)。你的问题表明对这两个主题缺乏了解。