有没有办法利用Hadoop工具管理对外部源的并行REST API调用?

时间:2013-03-20 13:35:30

标签: api graph hadoop amazon-sqs

我正在编写创建大型图形数据库的软件。该软件需要访问数十种不同的REST API,并提供数百万个请求。然后,数据将由Hadoop集群处理。每个API的速率限制因请求/秒,每个窗口,每天和每个用户(通常通过OAuth)而异。

有没有人对如何使用Map功能或其他Hadoop生态系统工具来管理这些查询有任何建议?目标是利用Hadoop中的并行处理。

由于速率限制的变化,在等待重置的第一个限制时切换到不同的API查询通常是有意义的。一个示例是一个API调用,它在图中创建节点,另一个API丰富该节点的数据。在等待第一个API限制重置时,我可以让系统外出并丰富新节点的数据。

我尝试在EC2上使用SQS队列来管理各种API限制和状态(为每个API调用创建一个队列),但发现它的速度非常慢。

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

看起来我的场景的最佳选择是使用Storm,或者特别是Trident抽象。它为工作负载管理和流程管理提供了最大的灵活性