(1)共享表架構(gòu)
共享表架構(gòu)即所有的用戶共享相同的數(shù)據(jù)庫實例和相同的數(shù)據(jù)庫表,但可以通過用戶ID等字段來區(qū)分?jǐn)?shù)據(jù)的從屬關(guān)系。
由于共享表架構(gòu)最大化地利用了單個數(shù)據(jù)庫實例的存儲能力,所以這種架構(gòu)的硬件成本非常低廉。但對于程序開發(fā)者來說,卻增加了額外的復(fù)雜度,因為多個用戶數(shù)據(jù)共同存儲在相同的數(shù)據(jù)庫表內(nèi),這需要額外的業(yè)務(wù)邏輯來隔離每個用戶的數(shù)據(jù)。此外,這種架構(gòu)的災(zāi)備成本也會很高,因為這不僅需要專門編寫數(shù)據(jù)備份的程序,而且在恢復(fù)數(shù)據(jù)時,需要對數(shù)據(jù)庫表進(jìn)行大量的刪除和插入操作,一旦數(shù)據(jù)庫表包含大量其他客戶的數(shù)據(jù),勢必對系統(tǒng)性能和其他客戶的體驗帶來巨大影響。