Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/55.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mapreduce 在浏览器中运行延迟作业的最佳方法_Mapreduce_Sinatra_Delayed Job_Riak - Fatal编程技术网

Mapreduce 在浏览器中运行延迟作业的最佳方法

Mapreduce 在浏览器中运行延迟作业的最佳方法,mapreduce,sinatra,delayed-job,riak,Mapreduce,Sinatra,Delayed Job,Riak,我必须开发一个API,它在后台执行一些map-reduce作业,然后返回结果。它是一个带有Riak No sql数据库的sinatra应用程序。问题是,作业运行大约需要5-10分钟。请求在这段时间内超时。在后台运行此类工作的最佳方式是什么 您可以使用操作系统计划程序 类似于DelayedJob的东西,上面有一层类似Redis的东西(用于跟踪作业状态),可通过唯一的路由(您的Sinatra API)访问。然后创建一个不同的页面(浏览器客户端的网页),通过AJAX调用API,并定期轮询它。这是一个r

我必须开发一个API,它在后台执行一些map-reduce作业,然后返回结果。它是一个带有Riak No sql数据库的sinatra应用程序。问题是,作业运行大约需要5-10分钟。请求在这段时间内超时。在后台运行此类工作的最佳方式是什么

您可以使用操作系统计划程序


类似于DelayedJob的东西,上面有一层类似Redis的东西(用于跟踪作业状态),可通过唯一的路由(您的Sinatra API)访问。然后创建一个不同的页面(浏览器客户端的网页),通过AJAX调用API,并定期轮询它。

这是一个ruby应用程序,运行在mac机器上。数据集是否足够大(要分析的数据不适合RAM),您真的需要MapReduce,或者您是否使用它在Riak中查询任意数据?为关键/价值建立适当的数据模型比一切都依赖MapReduce要好得多;正如您所注意到的,MapReduce更适合于批处理作业。