有没有一种方法可以利用hadoop工具来管理对外部源的并行restapi调用?

vq8itlhq  于 2021-06-03  发布在  Hadoop
关注(0)|答案(1)|浏览(245)

我正在写一个创建大型图形数据库的软件。软件需要访问数十个不同的restapi,总请求数为数百万。这些数据随后将由hadoop集群进行处理。这些api中的每一个都有速率限制,这些限制因请求/秒、每个窗口、每天和每个用户(通常通过oauth)而异。
有人对我如何使用map函数或其他hadoop生态系统工具来管理这些查询有什么建议吗?目标是利用hadoop中的并行处理。
由于速率限制不同,在等待第一个限制重置时切换到不同的api查询通常是有意义的。例如,一个api调用在图中创建节点,另一个api调用丰富该节点的数据。我可以让系统在等待第一个api限制重置的同时,为新节点充实数据。
我曾尝试在ec2上使用sqs队列来管理各种api限制和状态(为每个api调用创建一个队列),但发现它的速度慢得离谱。
有什么想法吗?

yqkkidmi

yqkkidmi1#

对于我的场景来说,最好的选择是使用storm,或者特别是trident抽象。它为我的工作负载管理和流程管理提供了最大的灵活性

相关问题