2013-02-27 56 views
0

鑑於下面的「事實」,我從閱讀這本書中收集到的。使用聯盟進行多租戶分區

  1. 聯合是從創建時刻開始的獨立數據庫。
  2. 作爲原件的拷貝,如果我改變原件的模式,它們不會自動改變。
  3. 作爲單獨的數據庫,您不能交叉連接。
  4. 每個聯合會定價爲一個單獨的數據庫。
  5. 我將不得不爲每個我想聯盟的表提供一個TenantId字段。

如果這些都是正確的,那麼使用聯邦在簡單單獨的dbs上實現多租戶有什麼優勢?或者,如果不正確,請直接告訴我。

請注意,我們有少數租戶,也許是20.

回答

1

您的理解是正確的。

聯盟有幾個有趣的方面,您可能會覺得有用。首先它是一個相對靈活的分區環境。例如,根據客戶的使用模式,您可以將10名租戶分爲第一名成員和第二名成員中的50名。或者,您可以簡單地隔離使用系統的單個客戶而不是其他客戶。

另一個重要的概念是每個數據庫可以有多個聯合。例如,您可以有一個Customer聯合和一個SalesHistory聯合。

最後但並非最不重要的是,您可能想閱讀本文,其中討論connection pool fragmentation發生在傳統的分片模型中,但不是SQL數據庫聯合會的問題。