3

我在 R 中使用我与 RMySQL(和 DBI)连接的 MySQL 数据库。

我有一个函数可以在用户需要时动态读取 SQL 表(并将它们作为 R 对象导入)。他可以经常读表还是很长时间不向数据库发送查询,我不知道。

唯一允许的 SQL 操作是读取表(SELECT *,无条件)。

实际上,每次我需要读取一个新表然后关闭连接时,我都会打开一个新连接。但我正在寻找一些建议和最佳实践。

我精确地创建了一个连接函数作为“单例”,以避免并行打开到同一个数据库的两个连接。

重复向数据库发送连接请求是不是很糟糕?(即使之前的连接已关闭)我可以让 SQL 连接长时间打开,即使没有交互?

4

1 回答 1

1

在 98% 的情况下,您不应手动管理数据库连接,而应将其留给 ActiveRecord 以根据需要进行连接。RMySQL 适配器可能已经针对大多数情况进行了优化。注意不要预先优化,只在严格需要的基础上使用持久连接

于 2015-04-24T15:16:27.863 回答