01 When is pgvector a better Operational AI fit than a separate vector database?
pgvector is strongest when semantic candidates must be joined to current PostgreSQL rows on nearly every request, such as an account, asset, entitlement, case state, policy version, or approval record. Its official documentation emphasizes that vectors stay with the rest of the PostgreSQL data and retain PostgreSQL features such as joins, ACID transactions, and point-in-time recovery. MetaCTO still benchmarks a vector-native service when the retrieval workload needs independent scaling, specialized search behavior, or operating ownership that should not compete with the transactional database.
02 Should a production pgvector workflow use exact search, HNSW, or IVFFlat?
Start with the exact search that pgvector uses by default because it provides the reference result set for recall testing. Add an approximate index only after representative filters, concurrency, latency, and corpus size show the need: pgvector documents HNSW as offering a better speed-recall tradeoff with slower builds and higher memory use, while IVFFlat builds faster and uses less memory but depends on representative training data and careful list and probe settings. MetaCTO chooses from measured workflow behavior, not a universal index preference, and keeps the exact baseline available for regression checks.
03 Can pgvector filters or PostgreSQL row-level security enforce tenant access by themselves?
They are useful controls, but neither should be the only boundary. pgvector applies filters after an approximate index scan, so a selective filter can return fewer rows than requested unless the query, index strategy, and iterative-scan limits are designed and tested for that distribution. PostgreSQL row-level security can restrict normal reads and writes, but its documentation notes that superusers, BYPASSRLS roles, and normally table owners bypass it. MetaCTO resolves tenant and purpose on the server, uses a least-privilege non-owner role, applies trusted SQL predicates and tested row policies, and treats an underfilled result as an explicit no-evidence state rather than broadening access.
04 How should a team update embeddings without mixing old and new evidence?
Store each vector with a stable source identity, source version, content checksum, embedding configuration, and publication state. Generate the replacement outside the business transaction, upsert it idempotently, compare the new retrieval behavior with the accepted reference set, and only then switch the published version; revoked or superseded sources need an equally deterministic removal path. MetaCTO also keeps the original source location beside every result so a reviewer can distinguish a current passage from a stale or partially reprocessed one during a cutover.
05 What production controls are still required when pgvector runs inside PostgreSQL?
PostgreSQL recovery and replication features cover the stored vector and its database state, and pgvector recommends monitoring approximate recall against exact search as well as normal database performance. They do not prove that the evidence was sufficient, that a model interpreted it correctly, or that a consequential write-back was authorized. MetaCTO records the trusted filters, returned source IDs, distances, retrieval strategy, failed rules, reviewer decision, and idempotent action receipt; timeouts, filtered underfill, stale ingestion, and uncertain writes go to bounded retry or a named manual queue, while backup restore and index rebuild procedures are tested together.