Skip to main content

Platform Mode

In platform mode, vectors are stored directly in your own database alongside your source data.

How It Works

  1. You create a connection to your database (Snowflake or PostgreSQL)
  2. You create a vector table — Embedd.to creates a vector table in your database
  3. On backfill, source data is read, embedded, and written back to your database
  4. Sync keeps vectors up to date as source data changes

When to Use Platform Mode

  • Data residency — Keep vectors in your own infrastructure
  • Join with existing data — Vector tables live alongside source tables, enabling SQL joins
  • Existing database investment — Leverage your Snowflake or PostgreSQL infrastructure

Supported Providers

Snowflake

  • Uses VECTOR(FLOAT, N) type for vector storage
  • Supports Snowflake Cortex for native embeddings (no external embedding provider needed)
  • Uses VARIANT type for metadata storage

PostgreSQL

  • Uses pgvector's vector(N) type for vector storage
  • Requires the pgvector extension to be installed
  • Uses JSONB type for metadata storage
  • HNSW indexes with vector_cosine_ops for fast similarity search
  • Requires an external embedding provider (OpenAI, Gemini)

Atomic Swap Re-Backfill

When you change the embedding model or column configuration, Embedd.to performs an atomic swap:

  1. Creates a new vector table with the updated configuration
  2. Backfills the new table with fresh embeddings
  3. Atomically renames the tables (old → _old, new → live)
  4. Drops the old table

This ensures zero downtime during re-embedding operations.

Architecture

Source DB → Embedd.to → Embedding Provider

Source DB (vector table created by Embedd.to)

Query API (reads from your DB)