Menerapkan Multi-tenancy

Di Milvus, multi-tenancy berarti beberapa pelanggan atau tim - yang disebut sebagai penyewa- berbagi cluster yang sama dengan tetap mempertahankan lingkungan data yang terisolasi.

Milvus mendukung empat strategi multi-tenancy, masing-masing menawarkan pertukaran yang berbeda antara skalabilitas, isolasi data, dan fleksibilitas. Panduan ini memandu Anda melalui setiap opsi, membantu Anda memilih strategi yang paling sesuai untuk kasus penggunaan Anda.

Strategi multi-penyewaan

Milvus mendukung multi-tenancy pada empat level: Basis Data, Koleksi, Partisi, dan Kunci Partisi.

Penyewaan multi-tenant tingkat basis data

Dengan multi-tenancy tingkat basis data, setiap penyewa menerima basis data yang sesuai yang berisi satu atau beberapa koleksi.

Database Level Multi Tenancy Penyewaan Multi Tingkat Basis Data

  • Skalabilitas: Strategi multi-penyewaan tingkat basis data mendukung maksimum 64 penyewa secara default.

  • Isolasi data: Data di setiap basis data dipisahkan sepenuhnya, menawarkan isolasi data tingkat perusahaan yang ideal untuk lingkungan yang diatur atau pelanggan dengan kebutuhan kepatuhan yang ketat.

  • Fleksibilitas: Setiap basis data dapat memiliki koleksi dengan skema yang berbeda, menawarkan pengaturan data yang sangat fleksibel dan memungkinkan setiap penyewa untuk memiliki skema datanya sendiri.

  • Lainnya: Strategi ini juga mendukung RBAC, memungkinkan kontrol yang lebih baik atas akses pengguna per penyewa. Selain itu, Anda bisa secara fleksibel memuat atau melepaskan data untuk penyewa tertentu untuk mengelola data panas dan dingin secara efektif.

Multi-penyewaan tingkat koleksi

Dengan multi-tenancy tingkat koleksi, setiap penyewa diberi koleksi, menawarkan isolasi data yang kuat.

Collection Level Multi Tenancy Multi Penyewaan Tingkat Koleksi

  • Skalabilitas: Karena sebuah klaster dapat menampung hingga 65.536 koleksi secara default, strategi ini dapat mengakomodasi jumlah penyewa yang sama di dalam klaster.

  • Isolasi data: Koleksi secara fisik terisolasi satu sama lain. Strategi ini memberikan isolasi data yang kuat.

  • Fleksibilitas: Strategi ini memungkinkan setiap koleksi memiliki skema sendiri, mengakomodasi penyewa dengan skema data yang berbeda.

  • Lainnya: Strategi ini juga mendukung RBAC, yang memungkinkan kontrol akses granular atas penyewa. Selain itu, Anda dapat secara fleksibel memuat atau melepaskan data untuk penyewa tertentu untuk mengelola data panas dan data dingin secara efektif.

Multi-penyewaan tingkat partisi

Dalam multi-penyewaan tingkat partisi, setiap penyewa ditugaskan ke partisi yang dibuat secara manual dalam koleksi bersama.

Partition Level Multi Tenancy Multi Penyewaan Tingkat Partisi

  • Skalabilitas: Sebuah koleksi dapat menampung hingga 1.024 partisi per koleksi, sehingga memungkinkan jumlah penyewa yang sama di dalamnya.

  • Isolasi data: Data setiap penyewa dipisahkan secara fisik oleh partisi.

  • Fleksibilitas: Strategi ini mengharuskan semua penyewa berbagi skema data yang sama. Dan partisi perlu dibuat secara manual.

  • Lainnya: RBAC tidak didukung pada tingkat partisi. Penyewa dapat ditanyakan secara individual atau di beberapa partisi, yang membuat pendekatan ini cocok untuk skenario yang melibatkan kueri agregat atau analitik di seluruh segmen penyewa. Selain itu, Anda dapat secara fleksibel memuat atau melepaskan data untuk penyewa tertentu untuk mengelola data panas dan dingin secara efektif.

Mempartisi multi-penyewaan tingkat kunci

Dengan strategi ini, semua penyewa berbagi satu koleksi dan skema, tetapi data setiap penyewa secara otomatis dialihkan ke dalam 16 partisi yang terisolasi secara fisik berdasarkan nilai kunci partisi. Meskipun setiap partisi fisik dapat berisi beberapa penyewa, data dari penyewa yang berbeda tetap terpisah secara logis.

Partition Key Level Multi Tenancy Tingkat Kunci Partisi Multi Penyewaan

  • Skalabilitas: Strategi tingkat kunci partisi menawarkan pendekatan yang paling skalabel, mendukung jutaan penyewa.

  • Isolasi data: Strategi ini menawarkan isolasi data yang relatif lemah karena beberapa penyewa dapat berbagi partisi fisik.

  • Fleksibilitas: Karena semua penyewa harus berbagi skema data yang sama, strategi ini menawarkan fleksibilitas data yang terbatas.

  • Lainnya: RBAC tidak didukung pada tingkat kunci partisi. Penyewa dapat ditanyakan secara individual atau di beberapa partisi, yang membuat pendekatan ini sangat cocok untuk skenario yang melibatkan kueri agregat atau analitik di seluruh segmen penyewa.

Memilih strategi multi-penyewaan yang tepat

Tabel di bawah ini menawarkan perbandingan komprehensif antara empat tingkat strategi multi-tenancy.

Tingkat basis data

Tingkat koleksi

Tingkat partisi

Tingkat kunci partisi

Isolasi Data

Fisik

Fisik

Fisik

Fisik + Logis

Maks. jumlah penyewa

Secara default, 64. Anda dapat meningkatkannya dengan memodifikasi parameter maxDatabaseNum di file konfigurasi Milvus.yaml.

Secara default, 65.536. Anda dapat meningkatkannya dengan memodifikasi parameter maxCollectionNum dalam file konfigurasi Milvus.yaml.

Hingga 1.024 per koleksi.

Jutaan

Fleksibilitas skema data

Tinggi

Sedang

Rendah

Rendah

Dukungan RBAC

Ya

Ya

Tidak

Tidak

Performa pencarian

Kuat

Kuat

Sedang

Sedang

Dukungan pencarian lintas penyewa

Tidak ada

Tidak

Ya

Ya

Dukungan untuk penanganan data panas dan dingin yang efektif

Ya

Ya

Ya

Tidak Saat ini, tidak didukung untuk strategi tingkat kunci partisi.

Ada beberapa faktor yang perlu dipertimbangkan ketika Anda memilih strategi multi-tenancy di Milvus.

  1. Skalabilitas: Kunci Partisi > Partisi > Koleksi > Basis Data

    Jika Anda berharap dapat mendukung penyewa dalam jumlah yang sangat banyak (jutaan atau lebih), gunakan strategi tingkat kunci partisi.

  2. Persyaratan isolasi data yang kuat: Basis data = Koleksi > Partisi > Kunci Partisi

    Pilih strategi tingkat basis data, koleksi, atau partisi jika Anda memiliki persyaratan isolasi data fisik yang ketat.

  3. Skema data yang fleksibel untuk setiap data penyewa: Database > Koleksi > Partisi > Kunci Partisi

    Strategi tingkat basis data dan tingkat koleksi memberikan fleksibilitas penuh dalam skema data. Jika struktur data penyewa Anda berbeda, pilihlah multi-tenancy tingkat basis data atau tingkat koleksi.

  4. Lainnya

    1. Performa: Performa pencarian ditentukan oleh berbagai faktor, termasuk indeks, parameter pencarian, dan konfigurasi mesin. Milvus juga mendukung penyetelan kinerja. Disarankan untuk menguji performa aktual sebelum Anda memilih strategi multi-tenancy.

    2. Penanganan data panas dan dingin yang efektif: Saat ini, strategi tingkat basis data, tingkat koleksi, dan tingkat partisi semuanya mendukung penanganan data panas dan dingin.

    3. Pencarian lintas penyewa: Hanya strategi tingkat partisi dan tingkat kunci partisi yang mendukung pencarian lintas penyewa.

Coba Milvus yang Dikelola secara Gratis

Zilliz Cloud bebas masalah, didukung oleh Milvus dan 10x lebih cepat.

Mulai
Umpan balik

Apakah halaman ini bermanfaat?