簡體   English   中英

與關系數據庫模型相對應的benchdb

[英]The couchdb equivalent of a relational database model

我是使用長沙發的新手,但是我在后端編程和關系數據庫方面有背景。

我想將我的知識“從mySQL遷移到CouchDB”。 盡管我發現了很多有關安裝和入門教程的信息,但是我還是很難將關系模型“轉換”到CouchDB文檔存儲中。 而且我知道,我需要完全重新設定我的思維方式...

我想以最好的方式來解決這個問題,所以我開始了一個基本練習。 我有一個來自實際使用的軟件應用程序的簡單關系模型。 為簡單起見,我調低了字段數。

案件

我們有一堆紙牌。 每張卡都有其自己的屬性(id,名稱,imgpath等)。 每個用戶都可以在自己的紙牌集合中從堆棧中隨機挑選一張紙牌集合。

的MySQL

在mySQL中,有3個表:

  • 用戶[ID,名稱,密碼]
  • 卡[id,名稱,value1,value2,imgpath等]
  • UserCards [用戶ID,卡ID]

其他相關信息:

  • 我們有超過1萬名用戶,並且還在不斷增長。
  • 它用於移動應用程序,因此速度非常重要。
  • 我們(現在)為每個用戶使用不同的db.scheme,每個方案為每個方案分配了自己的用戶權限。 (一旦做出有關安全性的決定)。

CouchDB問題

  • 在CouchDB文檔模型中存儲用戶和卡的最有效方法是什么? (因此,如何“翻譯”表?)

  • 為每個用戶創建一個數據庫/方案或將其全部存儲在一個數據庫中是否有效/更安全?


顯然,現實生活中的應用程序本身涉及更多的表和字段,但是我只需要一個堅實的起點,就可以從那里開始。

預先感謝您的幫助!

在CouchDB文檔模型中存儲用戶和卡的最有效方法是什么? (因此,如何“翻譯”表?)

  • 將用戶文檔存儲在內置的_users數據庫中
  • 將卡存儲在單獨的存儲桶(db)中
  • 將映射卡2user實現為視圖

為每個用戶創建一個數據庫/方案或將其全部存儲在一個數據庫中是否有效/更安全?

這取決於應用程序需求:

如果您需要控制對卡的讀訪問,則需要使用db-per-user方法。

如果您只需要控制所有卡的寫訪問權限,那么我的建議是。

兩種情況下,用戶帳戶都存儲在users數據庫中。

暫無
暫無

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

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