簡體   English   中英

如何提供對數據庫子集的公共訪問?

[英]How can I provide public access to a subset of a database?

背景

我和我的研究小組正在開發一個數據庫來存儲我們的數據,並且我們正在構建一個軟件工具來簡化對這些數據的訪問。 該數據庫將保存已發布且我們希望提供的數據,以及尚未發布且屬於其他研究人員的數據。

目的

我們希望我們的工作易於再現,因此,在此程度上,我們需要允許公眾對數據運行SELECT語句。 三種可能的解決方案包括:

  1. 對於每個出版物,創建可免費下載的數據庫子集(可能在虛擬機中,以便滿足軟件工具的依賴性)
  2. 對於每個發布,創建一個將數據記錄鏈接到發布的多對多查找表,然后提供公共的SELECT權限來訪問這些記錄。 我們可以輕松地復制數據庫以供公共使用參數化模塊上一代的自動化

但是,有人告訴我,即使允許使用通配符語句也會損害安全性,這就是為什么我認為選項1更合理的原因。 選項1還將使我們能夠存檔與特定出版物一起使用的數據庫。

更新:澄清一下,我希望用戶能夠重現整個計算工作流程,這需要使用SELECT語句,該語句可以將數據表與查找表中的輔助數據(例如協變量,實驗細節)結合在一起。

提供對數據庫子集的公共訪問的最佳方法是什么?

您可以將數據的子集作為SQLite數據庫進行分發 ,即創建一個供人們下載到其自己的計算機上的獨立數據文件。 許多學者,經濟學家等使用SQLite共享數據集,因為它是自包含的,並且安裝過程很輕松(我應該補充說,跨平台)。

創建具有適當訪問權限的視圖,並且用戶只能訪問這些視圖,而不能訪問基礎表。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM