我已经下载了我的收件箱,我正在使用Pig和Hadoop处理我的电子邮件。我使用Pig和Wonderdog在ElasticSearch中索引这些电子邮件。
现在我正在为收件箱中的每个电子邮件地址创建一个网页,以显示这些地址发送的邮件。
我可以通过两种方式做到这一点:
1)通过Pig中的电子邮件地址分组,存储到MongoDB(或ElasticSearch)。
2)查询ElasticSearch,使用facets从电子邮件索引中为我返回此列表。
哪一个是首选答案,依据是什么?
答案 0 :(得分:1)
选项1 - 通过Pig中的电子邮件地址分组,存储到MongoDB(或ElasticSearch):
您正在预先计算结果并存储到MongoDB或ElasticSearch。如果数据很大并且没有经常更新,这是一件好事。
选项2 - 使用构面查询ElasticSearch以从电子邮件索引返回此列表。
如果数据经常更新,甚至是小数据集,最好通过此选项查询数据(在正确的字段上编制索引)将获得快速结果,您不必依赖于预处理。