Multitenancy en namespaces

Vector-databases voor embeddings met Pinecone

James Chapman

Curriculum Manager, DataCamp

Multitenancy

 

  • Meerdere tenants geïsoleerd bedienen
  • Data van verschillende klanten scheiden
    • Beveiliging en privacy
  • Query-latency verlagen

multitenancy.png

Vector-databases voor embeddings met Pinecone

Multitenancy-strategieën

 

  1. Namespaces
    • Voordelen: Minder extra indexen nodig
    • Nadelen: Tenants delen resources, complexe data
  2. Metadatafiltering
    • Voordelen: Query’s over meerdere tenants
    • Nadelen: Gedeelde resources, lastig kosten bijhouden
  3. Gescheiden indexen
    • Voordelen: Fysieke scheiding, eigen resources per tenant
    • Nadelen: Meer werk en kosten
Vector-databases voor embeddings met Pinecone

Namespaces

  • Implicit aangemaakt bij upsertion als ze niet bestaan
index.upsert(
  vectors=vector_set1, namespace="namespace1"
)
index.upsert(
  vectors=vector_set2, namespace="namespace2"
)
Vector-databases voor embeddings met Pinecone

Namespaces inspecteren

index.describe_index_stats()
{'dimension': 1536,
 'index_fullness': 0.0,
 'namespaces': {'namespace1': {'vector_count': 5},
                'namespace2': {'vector_count': 5}},
 'total_vector_count': 10}
Vector-databases voor embeddings met Pinecone

Vectors opvragen uit namespaces

query_result = index.query(
    vector=vector,

namespace='namespace1',
top_k=3 )
Vector-databases voor embeddings met Pinecone

Vectors verwijderen uit namespaces

index.delete(
    ids=["1", "2"],
    namespace='namespace1'
)
Vector-databases voor embeddings met Pinecone

Laten we oefenen!

Vector-databases voor embeddings met Pinecone

Preparing Video For Download...