单击按钮时的大数据处理

时间:2011-05-16 20:15:14

标签: web-applications architecture statistics data-mining

如果您的应用程序对大型数据集执行了大量计算,并且只需单击按钮就可以尽快返回结果,那么用于大规模工作的一些架构设计是什么? ?

例如,应用程序运行模拟来预测未来结果,然后对该数据以及历史数据进行一些统计分析。有大量的CPU来运行模拟和DB重插入,然后大量的DB读取来收集历史数据,以及更多的CPU进行统计分析。

本质上,需要处理大量数据(CPU和IO密集型),理论上只需单击按钮即可显示结果。

据我所知,根据强度,这并不总是一个现实的目标,但是完成这项任务的典型架构是什么?

2 个答案:

答案 0 :(得分:3)

Google会这样做以返回搜索结果。

查看Hadoop - http://hadoop.apache.org/ - 特别是MapReduce。

“Hadoop MapReduce是一种编程模型和软件框架,用于编写在大型计算节点集群上并行快速处理大量数据的应用程序。”

答案 1 :(得分:1)

Rob提出了一种使用MapReduce的好方法。

我认为这种处理是数据挖掘过程的一部分,数据挖掘过程与传统的请求响应模型有不同的方法。

至少

创建一个表(非规范化)并将所有必要信息存储在此表中,然后当用户实时需要信息时,只需进行表查找并尽快获取信息。

但是这种方法存在挑战,其中一个主要挑战是填充此非规范化表中的数据。

大多数情况下,可以通过夜间工作或者在负载最小时填充此表的东西离线完成!

这种方法是在典型的电子商务应用程序中看到“购买此商品的客户也购买”时使用的方法之一。

有关更多信息和参考,请参阅

1- Sql Server Analysis Services

2-项目到项目协作过滤(特别是参考亚马逊实施