Batasi Jumlah Koleksi

Sebuah instance Milvus memungkinkan hingga 65.536 koleksi. Namun, koleksi yang terlalu banyak dapat menyebabkan masalah kinerja. Oleh karena itu, disarankan untuk membatasi jumlah koleksi yang dibuat dalam sebuah instans Milvus.

Panduan ini menyediakan instruksi tentang cara menetapkan batasan jumlah koleksi dalam sebuah instans Milvus.

Konfigurasi bervariasi tergantung pada cara Anda menginstal instans Milvus.

  • Untuk instans Milvus yang diinstal menggunakan Helm Charts

    Tambahkan konfigurasi ke file values.yaml di bawah bagian config. Untuk detailnya, lihat Mengonfigurasi Milvus dengan Helm Charts.

  • Untuk instans Milvus yang diinstal menggunakan Docker Compose

    Tambahkan konfigurasi ke berkas milvus.yaml yang Anda gunakan untuk memulai instans Milvus. Untuk detailnya, lihat Mengkonfigurasi Milvus dengan Docker Compose.

  • Untuk instans Milvus yang diinstal menggunakan Operator

    Tambahkan konfigurasi ke bagian spec.components pada sumber daya kustom Milvus. Untuk detailnya, lihat Mengkonfigurasi Milvus dengan Operator.

Opsi konfigurasi

rootCoord:
    maxGeneralCapacity: 65536

quotaAndLimits:
    limits:
        maxCollectionNum: 65536
        maxCollectionNumPerDB: 65536

Untuk mengubah batas pengumpulan, Anda perlu memodifikasi ketiga parameter secara bersamaan:

ParameterDeskripsiNilai Default
rootCoord.maxGeneralCapacityJumlah maksimum unit koleksi (pecahan × partisi) yang dapat ditampung oleh instans saat ini.65536
quotaAndLimits.limits.maxCollectionNumJumlah maksimum koleksi yang diizinkan di semua database dalam instance saat ini.65536
quotaAndLimits.limits.maxCollectionNumPerDBJumlah maksimum koleksi yang diizinkan dalam satu database.65536

Misalnya, untuk meningkatkan batas hingga 200.000 koleksi:

rootCoord:
    maxGeneralCapacity: 200000

quotaAndLimits:
    limits:
        maxCollectionNum: 200000
        maxCollectionNumPerDB: 200000

Mengatur hanya maxGeneralCapacity tanpa menyesuaikan maxCollectionNum dan maxCollectionNumPerDB tidak akan berpengaruh. Ketiga parameter harus diatur ke nilai yang sama atau lebih tinggi untuk meningkatkan batas koleksi.

Menghitung jumlah koleksi

Dalam sebuah koleksi, Anda dapat mengatur beberapa pecahan dan partisi. Pecahan adalah unit logika yang digunakan untuk mendistribusikan operasi penulisan data di antara beberapa simpul data. Partisi adalah unit logika yang digunakan untuk meningkatkan efisiensi pengambilan data dengan hanya memuat sebagian data koleksi. Ketika menghitung jumlah koleksi dalam instance Milvus saat ini, Anda juga perlu menghitung pecahan dan partisi.

Sebagai contoh, anggaplah Anda telah membuat 100 koleksi, dengan 2 pecahan dan 4 partisi di 60 koleksi dan dengan 1 pecahan dan 12 partisi di 40 koleksi lainnya. Jumlah total unit koleksi (dihitung sebagai shards × partitions) dapat ditentukan sebagai berikut:

60 (collections) x 2 (shards) x 4 (partitions) + 40 (collections) x 1 (shard) x 12 (partitions) = 960

Dalam contoh ini, jumlah total 960 unit koleksi yang dihitung mewakili penggunaan saat ini. maxGeneralCapacity mendefinisikan jumlah maksimum unit koleksi yang dapat didukung oleh sebuah instans, yang diatur ke 65536 secara default. Ini berarti instance dapat menampung hingga 65.536 unit koleksi. Jika jumlah total melebihi batas ini, sistem akan menampilkan pesan kesalahan berikut:

failed checking constraint: sum_collections(parition*shard) exceeding the max general capacity:

Untuk menghindari kesalahan ini, Anda bisa mengurangi jumlah pecahan atau partisi dalam koleksi yang sudah ada atau yang baru, menghapus beberapa koleksi, atau meningkatkan batas koleksi dengan memodifikasi maxGeneralCapacity, maxCollectionNum, dan maxCollectionNumPerDB secara bersamaan.

Coba Milvus yang Dikelola secara Gratis

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

Mulai
Umpan balik

Apakah halaman ini bermanfaat?