Wikipedia pagecount数据集的Hadoop
我想构建一个Hadoop作业,它基本上以wikipedia作为输入,并创建一个类似Wikipedia pagecount数据集的Hadoop,hadoop,mapreduce,wikipedia,concept,wikimedia,Hadoop,Mapreduce,Wikipedia,Concept,Wikimedia,我想构建一个Hadoop作业,它基本上以wikipedia作为输入,并创建一个类似 en-Articlename: en:count de:count fr:count 为此,我需要与每种语言相关的不同文章名,即Bruges(en,fr),Brügge(de),MediaWikiApi查询articlewise(http://en.wikipedia.org/w/api.php?action=query&titles=Bruges&prop=langlinks&lllimit=500) en-
en-Articlename: en:count de:count fr:count
为此,我需要与每种语言相关的不同文章名,即Bruges(en,fr),Brügge(de),MediaWikiApi查询articlewise(http://en.wikipedia.org/w/api.php?action=query&titles=Bruges&prop=langlinks&lllimit=500)
en-Articlename: en:count de:count fr:count
我的问题是找到解决这个问题的正确方法
en-Articlename: en:count de:count fr:count
我的大致做法是:
en-Articlename: en:count de:count fr:count
- 逐行处理pagecount文件(行示例“de Brugge 2 48824”)
- 查询MediaApi并编写类似“en-Articlename:process language key:count”的内容
- 将所有en Articlename值聚合到一行(可能在第二个作业中?)
en-Articlename: en:count de:count fr:count
你认为目前的方法可行吗?或者你能想出一个不同的方法吗
en-Articlename: en:count de:count fr:count
附带说明:创建的作业链将用于在我的(小型)Hadoop集群上进行一些时间测量,因此更改任务仍然可以
en-Articlename: en:count de:count fr:count
编辑:
是我刚刚发现的一个非常类似的讨论。我认为在批处理过程中查询MediaApi不是一个好主意,因为:
en-Articlename: en:count de:count fr:count
- 网络延迟(您的处理速度将大大降低)
- 单点故障(如果api或internet连接中断,您的计算将中止)
- 外部依赖性(很难重复计算并得到相同的结果)
- 法律问题和禁止的可能性
en-Articlename: en:count de:count fr:count
然后,您可以在map/reduce作业处理页面计数统计中使用对应关系。如果这样做,您将独立于mediawiki的api,加快数据处理并改进调试。您可以使用一个mediawiki api查询!谢谢,很高兴知道!但整个方法会是“Hadoop式”的吗?
en-Articlename: en:count de:count fr:count