Vector Databases: Pinecone, Weaviate & pgvector · Pelajaran

Multi-Penyewaan di Weaviate

Pelajari cara mengisolasi data untuk setiap penyewa dalam satu koleksi Weaviate guna mendukung aplikasi multi-pelanggan yang aman dan dapat diskalakan.

Pelajaran 4 dari 413 langkah

Multi-Penyewaan di Weaviate adalah pelajaran Vector Databases: Pinecone, Weaviate & pgvector gratis di CoddyKit. Ini adalah pelajaran 4 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Vector Databases: Pinecone, Weaviate & pgvector, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Vector Databases: Pinecone, Weaviate & pgvector mencakup 4 pelajaran total.

Bagian dari pelajaran ini belum diterjemahkan dan ditampilkan dalam bahasa Inggris.

Why Multi-Tenancy?

Multi-tenancy lets one Weaviate collection serve many isolated customers (tenants) while keeping their data physically and logically separated.

  • One schema, many tenants
  • Strong data isolation
  • Efficient resource use vs. one collection per customer

Enabling Multi-Tenancy

You enable multi-tenancy at collection creation time by setting multiTenancyConfig.enabled = true. Once enabled, every object must belong to a tenant.

{
  "class": "Article",
  "multiTenancyConfig": { "enabled": true }
}

Creating Tenants

Tenants are added to a collection explicitly. Each tenant has a unique name and an activity status.

  • HOT: active, queryable
  • COLD: offloaded, must be activated first
POST /v1/schema/Article/tenants
[
  { "name": "customer-a" },
  { "name": "customer-b" }
]

Inserting Tenant Data

When inserting objects you must specify which tenant owns the object. Data for one tenant is never visible to another.

{
  "class": "Article",
  "tenant": "customer-a",
  "properties": { "title": "Hello" }
}

Querying Per Tenant

Every query must include the tenant parameter. Weaviate scopes the search to that tenant's shard only, improving both isolation and performance.

{
  Get {
    Article (tenant: "customer-a", limit: 5) {
      title
    }
  }
}

Tenant Isolation Guarantees

Each tenant gets its own shard. This means:

  • No cross-tenant data leakage
  • Independent indexing per tenant
  • Per-tenant lifecycle management

Activity Status & Offloading

Inactive tenants can be set to COLD to free memory, or offloaded to cloud storage. Reactivate them on demand to query again.

PUT /v1/schema/Article/tenants
[
  { "name": "customer-b", "activityStatus": "COLD" }
]

Listing & Deleting Tenants

You can list all tenants of a collection or delete a tenant entirely. Deleting a tenant removes all its data permanently.

GET /v1/schema/Article/tenants
DELETE /v1/schema/Article/tenants
["customer-b"]

Scaling with Many Tenants

Weaviate supports thousands of tenants efficiently because inactive shards consume minimal resources. Use COLD status aggressively for rarely-used tenants.

Python Client Example

The Python client makes tenant operations explicit via a tenant-scoped handle.

import weaviate
client = weaviate.connect_to_local()
articles = client.collections.get('Article')
tenant_a = articles.with_tenant('customer-a')
tenant_a.data.insert({'title': 'Edge case'})
client.close()

Best Practices

Guidelines for multi-tenant Weaviate:

  • Use one tenant per customer, not per request
  • Set unused tenants to COLD
  • Always validate the tenant param server-side to prevent enumeration

Quick Check

Test your understanding of multi-tenancy.

Recap

You learned to enable multi-tenancy, create and manage tenants, insert and query tenant-scoped data, and use COLD status for scaling. Multi-tenancy is the key to building secure, multi-customer apps on a single Weaviate collection.

Gratis untuk memulai

Belajar Vector Databases: Pinecone, Weaviate & pgvector dengan tutor AI — gratis

Tulis dan jalankan kode asli di browser kamu, dapatkan bantuan instan dari tutor AI 24/7, dan lanjutkan di mana kamu tinggalkan di web atau aplikasi.

Kursus
12
Pelajaran
48

Pertanyaan yang Sering Diajukan

Apakah pelajaran “Multi-Penyewaan di Weaviate” gratis?

Ya — teks lengkap “Multi-Penyewaan di Weaviate” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Vector Databases: Pinecone, Weaviate & pgvector, upgrade ke CoddyKit PRO. Kursus Vector Databases: Pinecone, Weaviate & pgvector mencakup 4 pelajaran total.

Apa yang akan aku pelajari di “Multi-Penyewaan di Weaviate”?

Pelajari cara mengisolasi data untuk setiap penyewa dalam satu koleksi Weaviate guna mendukung aplikasi multi-pelanggan yang aman dan dapat diskalakan. Kamu berlatih Vector Databases: Pinecone, Weaviate & pgvector dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.

Apakah aku perlu pengalaman untuk memulai Vector Databases: Pinecone, Weaviate & pgvector?

Tidak diperlukan pengalaman sebelumnya. Vector Databases: Pinecone, Weaviate & pgvector di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 4 dari 4.

Berapa lama pelajaran “Multi-Penyewaan di Weaviate” memakan waktu?

Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.

Bisakah aku menulis dan menjalankan kode dalam pelajaran Vector Databases: Pinecone, Weaviate & pgvector ini?

Ya. Setiap pelajaran Vector Databases: Pinecone, Weaviate & pgvector menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.

Semua pelajaran dalam kursus ini

  1. Pencarian Semantik dan Hibrida
  2. Menggunakan Modul Weaviate
  3. Strategi Pencadangan dan Pemulihan
  4. Multi-Penyewaan di Weaviate
← Kembali ke Vector Databases: Pinecone, Weaviate & pgvector