實施多租戶

在 Milvus 中,多租戶是指多個客戶或團隊(稱為租戶)共用同一集群,同時保持隔離的資料環境。

Milvus 支援四種多租戶策略,每種策略都在可擴展性、資料隔離和靈活性之間提供不同的權衡。本指南將介紹每個選項,協助您選擇最適合您使用個案的策略。

多租用策略

Milvus 支援四個層級的多租戶:資料庫資料集分區分區鑰匙

資料庫層級多租戶

使用資料庫級多租戶,每個租戶都會收到一個對應的資料庫,其中包含一個或多個集合。

Database Level Multi Tenancy 資料庫層級多租戶

  • 可擴展性:資料庫層級多租戶策略預設最多支援 64 個租戶。

  • 資料隔離:每個資料庫中的資料完全分離,提供企業級的資料隔離,非常適合受監管的環境或有嚴格合規需求的客戶。

  • 彈性:每個資料庫都可以擁有不同模式的集合,提供高度彈性的資料組織,並允許每個租戶擁有自己的資料模式。

  • 其他:此策略也支援 RBAC,可針對每個租戶的使用者存取進行精細控制。此外,您可以彈性載入或釋放特定租戶的資料,以有效管理冷熱資料。

集合層級多重租用

使用集合層級多租戶功能,每個租戶都會被指派一個集合,提供強大的資料隔離功能。

Collection Level Multi Tenancy 集合層級多租戶

  • 可擴充性:由於群集預設最多可容納 65,536 個集合,因此此策略可在群集中容納相同數量的租戶。

  • 資料隔離:資料集彼此實體隔離。此策略提供強大的資料隔離。

  • 彈性:此策略允許每個集合擁有自己的模式,可容納不同資料模式的租戶。

  • 其他:此策略也支援 RBAC,允許對租戶進行細粒度存取控制。此外,您可以彈性載入或釋放特定租戶的資料,以有效管理冷熱資料。

分割層級多重租用

在磁碟分割層級多重租用中,每個租戶都會被指派到共用集合中手動建立的磁碟分割

Partition Level Multi Tenancy 分割層級多重租用

  • 可擴充性:每個集合最多可容納 1,024 個分割區,讓其中的租戶數目相同。

  • 資料隔離:每個租戶的資料都由分割區實際分隔。

  • 彈性:此策略要求所有租戶共用相同的資料模式。而且需要手動建立分區。

  • 其他:分區層級不支援 RBAC。租戶可以單獨或跨多個分區進行查詢,這使得此方法非常適合涉及跨租戶區段的聚合查詢或分析的場景。此外,您可以彈性載入或釋放特定租戶的資料,以有效管理冷熱資料。

分區鑰匙層級多租戶

使用此策略,所有租戶共用單一集合和模式,但每個租戶的資料會根據分割區金鑰值自動路由至 16 個實體隔離的分割區。雖然每個實體磁碟分割可包含多個租戶,但不同租戶的資料在邏輯上仍是分開的。

Partition Key Level Multi Tenancy 分割區金鑰層級多租戶

  • 可擴充性:磁碟分割金鑰層級策略提供最具擴充能力的方法,可支援數百萬個租戶。

  • 資料隔離:此策略提供相對較弱的資料隔離,因為多位租戶可以共用一個實體磁碟分割。

  • 彈性:由於所有租戶必須共用相同的資料模式,因此此策略提供的資料彈性有限。

  • 其他:分區鑰匙層級不支援 RBAC。租戶可以單獨或跨越多個分區進行查詢,這使得此方法非常適合涉及跨租戶區段的聚合查詢或分析的場景。

選擇正確的多租戶策略

下表全面比較了四種層級的多租戶策略。

資料庫層級

資料集層級

分割層級

分割鑰匙層級

資料隔離

物理層級

實體

實體

物理 + 邏輯

最大租戶數

預設為 64。您可以透過修改 Milvus.yaml 配置檔案中的maxDatabaseNum 參數來增加它。

預設為 65,536。您可以透過修改 Milvus.yaml 配置檔案中的maxCollectionNum 參數來增加。

每個集合最多 1,024 個。

百萬

資料模式彈性

RBAC 支援

不支援

不支援

搜尋效能

中等

中等

跨租户搜索支持

不支援

支援有效處理冷熱資料

No 目前不支援分割區金鑰層級策略。

當您選擇 Milvus 的多租戶策略時,有幾個因素需要考慮。

  1. 擴充性:分割區金鑰 > 分割區 > 集合 > 資料庫

    如果您預期會支援非常多的租戶 (數百萬或更多),請使用分割區金鑰層級策略。

  2. 強大的資料隔離需求:資料庫 = 資料集 > 磁碟分割 > 磁碟分割金鑰

    如果您有嚴格的實體資料隔離要求,請選擇資料庫、集合或磁碟分割層級策略。

  3. 每個租戶資料的彈性資料模式:資料庫 > 資料集 > 磁碟分割 = 磁碟分割金鑰

    資料庫層級和資料集層級策略提供完全彈性的資料模式。如果您租戶的資料結構不同,請選擇資料庫層級或集合層級的多重租用。

  4. 其他

    1. 效能:搜尋效能取決於各種因素,包括索引、搜尋參數和機器配置。Milvus 也支援效能調整。建議您在選擇多租用策略前,先測試實際效能。

    2. 有效處理冷熱資料:目前,資料庫層級、集合層級和分割區層級的策略都支援冷熱資料處理。

    3. 跨租用戶搜尋:只有磁碟分割層級和磁碟分割 key 層級策略支援跨租客查詢。

免費嘗試托管的 Milvus

Zilliz Cloud 無縫接入,由 Milvus 提供動力,速度提升 10 倍。

開始使用
反饋

這個頁面有幫助嗎?