Mysql R并行进程的数据库连接池
我使用包Mysql R并行进程的数据库连接池,mysql,r,postgresql,parallel-processing,Mysql,R,Postgresql,Parallel Processing,我使用包RPostgreSQL与PostgreSQL建立了数据库连接。目前我做了以下工作: 从我的数据库中检索列表 通过for循环运行列表,进行计算并将值写回数据库 我对这个过程的并行化感兴趣。显而易见的是在同名包中使用foreach功能。但是,我们需要使用连接池:在这种情况下,如果有人知道我可以用来共享数据库连接的并行后端,我很感兴趣。以下是一个未解决的具体示例: 在上述情况下,registerDoMC并行后端中没有连接池,在每个dopar工作进程中都有打开和关闭连接的方法。从snow包查看
RPostgreSQL
与PostgreSQL
建立了数据库连接。目前我做了以下工作:
foreach
功能。但是,我们需要使用连接池:在这种情况下,如果有人知道我可以用来共享数据库连接的并行后端,我很感兴趣。以下是一个未解决的具体示例:
在上述情况下,registerDoMC
并行后端中没有连接池,在每个dopar
工作进程中都有打开和关闭连接的方法。从snow
包查看registerDoSnow
并行后端也没有提供此功能
另一种选择是使用
mclappy
而不是dopar
。在这种情况下,是否有人知道是否或如何与每个mclappy
worker共享数据库连接?在任何通用R并行编程包中,您不能在不同的worker之间共享数据库连接,因为worker是独立的进程。但是,您可以为每个工作人员创建一个连接,并让工作人员对其执行的每个任务使用该连接。我在回答问题时讨论了如何做到这一点谢谢!我将不得不尝试这个,但它看起来很有希望!