2017-08-02 59 views
2

比方說,我有一個名爲「旅行者」的應用程序,我想存儲人物和地點。這兩份文件都具有截然不同的性質和不同的觀點。CouchDB的數據庫和設計文檔在數據類型方面的作用

我看到兩個邏輯方法來存儲這樣的數據:

  1. 在分開的CouchDB數據庫,每個數據庫具有單個設計文件稱爲traveler包含在那個特定的數據類型的視圖。例如:/people/_design/traveler/_view/by-name
  2. 在一個名爲traveler的單個CouchDB數據庫中,每個數據類型都有一個設計文檔,並使用類似"type"屬性(或其他ducktyping方式)來過濾視圖。例如:/traveler/_design/people/_view/by-name

什麼是地道方法?

回答

3

兩者都是完全有效的方法,具體取決於您的需求。

要考慮的主要問題是您是否想要在視圖中合併這些文檔。通過使用單獨的數據庫,您將排除這種可能性,因爲視圖不能跨越多個數據庫。當然,你可以在你的應用程序層中執行任何類型的連接,所以如果你不想在數據庫中這樣做,那對你來說沒有任何區別。

一般而言,我發現堅持第二種方法會更容易。