何时使用Hadoop,何时使用ElasticSearch for group by / facets?

时间:2012-04-11 18:59:13

标签: search mongodb hadoop apache-pig faceted-search

我已经下载了我的收件箱,我正在使用Pig和Hadoop处理我的电子邮件。我使用Pig和Wonderdog在ElasticSearch中索引这些电子邮件。

现在我正在为收件箱中的每个电子邮件地址创建一个网页,以显示这些地址发送的邮件。

我可以通过两种方式做到这一点:

1)通过Pig中的电子邮件地址分组,存储到MongoDB(或ElasticSearch)。

2)查询ElasticSearch,使用facets从电子邮件索引中为我返回此列表。

哪一个是首选答案,依据是什么?

1 个答案:

答案 0 :(得分:1)

选项1 - 通过Pig中的电子邮件地址分组,存储到MongoDB(或ElasticSearch):

您正在预先计算结果并存储到MongoDB或ElasticSearch。如果数据很大并且没有经常更新,这是一件好事。

选项2 - 使用构面查询ElasticSearch以从电子邮件索引返回此列表。

如果数据经常更新,甚至是小数据集,最好通过此选项查询数据(在正确的字段上编制索引)将获得快速结果,您不必依赖于预处理。