ParadeDB, relevance ranked full text search inside PostgreSQL: a BM25 index over your text columns, queried with ordinary SQL.
ParadeDB's pg_search extension puts a real search engine inside PostgreSQL. It builds a BM25 index, backed by the Tantivy search library, over whichever text columns you choose, and searching is then an ordinary SQL query: a match operator selects the rows and a scoring function returns the relevance score you sort and filter on. Because the index lives in the same database as the data, there is no separate search cluster to operate and no synchronisation pipeline to keep correct, and a search can join to the rest of your schema like any other query.
The extension requires pgvector and so ships with it enabled, which means the same database serves keyword relevance and vector similarity over embeddings side by side, and hybrid retrieval is a single statement. This suits a corpus that fits comfortably in one PostgreSQL where search should be a query against data already stored transactionally: product and catalogue search, log and ticket search, document retrieval for an assistant. It is honestly not a replacement for a multi node search cluster, because it is one database: there is no sharding across nodes and no separate analyzer plugin ecosystem, and serving BM25 searches from a read replica is an upstream Enterprise feature rather than part of the AGPL Community extension this image ships. It is the right answer when a dedicated search tier was only ever there to add ranking to data that already lives in Postgres.
ParadeDB is an open core company, so cloudimg gates the licence rather than assuming it: the build pins the upstream package by digest, opens it before installing, and verifies that the licence shipped inside is the verbatim GNU Affero GPL v3 and that no source available licence or enterprise tree is present anywhere in the payload. The extension is a Rust build, and the image installs the vendor's own compiled package, so no compiler, linker or Rust toolchain is ever introduced, which the build proves by planting one and requiring its detector to see it before asserting absence. Search is proven to work rather than merely to install: the build indexes a twenty thousand document corpus, requires the query planner to choose the BM25 index, and shows the same query falling back to a full table scan at a far higher cost when the index is taken away. There is no default password and no shared database: the captured image contains no database cluster at all, so every instance runs its own initialisation on first boot with its own cluster identity, its own TLS certificate and its own generated passwords, written to a file only root can read, and the database listens on loopback until you choose to open it. Every instance is paired with a deployment guide tested against this exact build and carries 24/7 support.