Multialojamiento y espacios de nombres

Bases de datos vectoriales para incrustaciones con Pinecone

James Chapman

Curriculum Manager, DataCamp

Multialojamiento

 

  • Atender a varios inquilinos en aislamiento
  • Separar los datos de distintos clientes
    • Seguridad y privacidad
  • Reducir la latencia de consulta

multitenancy.png

Bases de datos vectoriales para incrustaciones con Pinecone

Estrategias de multialojamiento

 

  1. Espacios de nombres
    • Ventajas: reduce la necesidad de más índices
    • Desventajas: los inquilinos comparten recursos; datos complejos
  2. Filtrado por metadatos
    • Ventajas: permite consultar entre varios inquilinos
    • Desventajas: recursos compartidos; seguimiento de costes difícil
  3. Índices separados
    • Ventajas: separa físicamente a los inquilinos; recursos dedicados
    • Desventajas: más esfuerzo y coste
Bases de datos vectoriales para incrustaciones con Pinecone

Espacios de nombres

  • Se crean implícitamente al insertar si no existen
index.upsert(
  vectors=vector_set1, namespace="namespace1"
)
index.upsert(
  vectors=vector_set2, namespace="namespace2"
)
Bases de datos vectoriales para incrustaciones con Pinecone

Inspeccionar espacios de nombres

index.describe_index_stats()
{'dimension': 1536,
 'index_fullness': 0.0,
 'namespaces': {'namespace1': {'vector_count': 5},
                'namespace2': {'vector_count': 5}},
 'total_vector_count': 10}
Bases de datos vectoriales para incrustaciones con Pinecone

Consultar vectores por espacios de nombres

query_result = index.query(
    vector=vector,

namespace='namespace1',
top_k=3 )
Bases de datos vectoriales para incrustaciones con Pinecone

Eliminar vectores por espacios de nombres

index.delete(
    ids=["1", "2"],
    namespace='namespace1'
)
Bases de datos vectoriales para incrustaciones con Pinecone

¡Vamos a practicar!

Bases de datos vectoriales para incrustaciones con Pinecone

Preparing Video For Download...