gpt4 book ai didi

hadoop - 在 Map/Reduce 中计算排名

转载 作者:可可西里 更新时间:2023-11-01 14:42:08 25 4
gpt4 key购买 nike

我有一个很难用 SQL 解决的简单问题,我想知道它是否可以在 map-reduce 系统中完成。

我想生成排名。想象一下亚马逊购买数据库(大大简化)

ORDERS
ISBN copies_purchased
AAAA 5
AAAA 1
BBBBB 3
BBBBB 4
CCCC 3

我要制作排名表

rank ISBN     copies_purchased
1 BBBB 7
2 AAAA 6
3 CCCC 3

计算的 copies_purchased 的 map-reduce 是显而易见的;至少对我来说,计算排名没那么重要。

(这不是作业问题。我的实际工作需要这个。那个更好吗?)

编辑我认为从标题、标签和问题的文本中可以看出这一点,但这不是 SQL 问题。我想知道如何在 map/reduce 中做到这一点。是的,我有数百万行。嗯,可能是数十亿。

最佳答案

在 CouchDB 中,map/reduce 构建一维索引,以便 couch 可以通过 key 快速查找任何信息。

首先,正如您所说,map/reduce 构建copies_purchased View 非常容易。但关键空间是 ISBN ID,它是您关心的,但它们没有特定的顺序。

对于小型应用程序,人们只需获取整个数据集并在内存中进行排序。如果您知道自己的要求,那将是一条很好的捷径;但它不会缩放。

可扩展的解决方案是将这些 行放入它们自己的数据库中。 second map/reduce 可以从 copies_purchased 发出键,并将值返回给 ISBN。 (不需要减少步骤。)

Key                 Value
copies_purchased ISBN

7 BBBB
6 AAAA
3 CCCC

您可以获取前 N 行,或者您可以通过 ?skip=6&limit=1 查询找到例如排名第七的书

关于hadoop - 在 Map/Reduce 中计算排名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7211800/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com