我使用的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)(要在web上显示的结果)
绘制概率密度图
用k-均值算法对值进行聚类
只有使用sql才能得到上述结果吗?如果是,表现如何(要求的响应时间小于2秒)如果没有,您能推荐更好的方法吗?
如果有10个数据节点 NoSQL
以及 Mahout
,是否有可能在2秒内得到每个查询的结果,特别是当每秒有5个查询时?如果不是,需要多少个数据节点?
所以,请推荐我的系统架构,如果你知道任何解决方案,我目前遇到的麻烦。
1条答案
按热度按时间uz75evzq1#
这是一个有点长的评论。
你的期望有点极端。它可能会满足需求,使用大量定制代码和具有大量处理器和大量内存的系统。
首先,你似乎不明白k-means是怎么工作的。距离度量是多少?
其次,您没有解释为什么需要为每个查询重新聚集记录。通常,聚类更多的是一种离线活动,而评分(或分配聚类)是在线的。
最后,我不建议对原始文本使用k-means聚类。还有其他聚类文本的算法,很可能更适合您的实际问题。我建议你学习一下数据挖掘(什么是k-means算法?什么有用?什么是期望最大化聚类?什么是奇异值分解?)我还建议您学习文本分析(什么是标记化?什么是词干?什么是语言袋?什么是语义分析?)。你的问题表明你对这两个问题都不了解。