【发布时间】:2011-05-26 19:15:05
【问题描述】:
背景
我和我的研究小组正在开发一个database 来存储我们的数据,我们正在构建一个software tool 来简化对这些数据的访问。该数据库将包含已发布且我们希望提供的数据,以及尚未发布且属于其他研究人员的数据。
目标
我们希望我们的工作能够轻松重现,在这种情况下,我们需要允许公众对数据运行 SELECT 语句。三种可能的解决方案包括:
- 为每个出版物创建一个可免费下载的数据库子集(可能在虚拟机中,以便满足软件工具的依赖关系)
- 为每个发布创建一个多对多查找表,将数据记录链接到发布,然后提供公共
SELECT访问这些记录的权限。我们可以轻松复制数据库以供公众使用 参数化模块 上一代的自动化
但是,有人告诉我,即使允许通配符语句也会损害安全性,这就是为什么我认为选项 1 更合理的原因。选项 1 还使我们能够将数据库存档,因为它与特定出版物一起使用。
更新: 澄清一下,我希望用户能够重现整个计算工作流程,这需要使用可以将数据表与辅助数据(如协变量、实验细节)连接起来的 SELECT 语句) 在查找表中。
问题
提供对数据库子集的公共访问的最佳方式是什么?
【问题讨论】: