CouchDB可以在同一臺機器上處理數千個不同的數據庫嗎?CouchDB可以處理數千個獨立的數據庫嗎?
想象一下,你有一個集合BankTransaction
s。有成千上萬的記錄。 (編輯:沒有實際存儲事務 - 只是想到了非常大量的非常小的,經常更新的記錄,它基本上是一個來自SQL-land的連接表。)
每天你想要發生的事務的摘要視圖只在您當地的銀行分行。如果所有記錄都在單個數據庫中,則重新生成視圖將處理全部的分支的全部。這是一個更大的工作,對於只關心他特定文檔子集的用戶來說是不必要的。
這使得每個銀行分支似乎都應該劃分到自己的數據庫中,以便以更小的塊生成視圖,並且彼此獨立。但是我從來沒有聽說過任何人這樣做,而且這看起來像是一種反模式(例如,在數千個不同的數據庫中複製相同的設計文檔)。
有沒有不同的方式來模擬這個問題? (分區應該發生在不同的機器之間,而不是單獨的數據庫在同一臺機器上?)如果不是,CouchDB可以處理成千上萬的數據庫以保持分區的小型化嗎?
(謝謝!)
要回答你的問題,是的。 **但是**,使用非事務性存儲進行交易是有風險的...... – ajreal 2012-03-27 10:46:18
@ajreal CouchDB是事務性的,否則它不會通過ACID合規性。每個文檔寫入在文檔級別都是事務性的。您無法一次對> 1文檔執行交易。 – 2012-03-27 21:20:33