pg_vectorsearch
Overview
| Package | Version | Category | License | Language |
|---|---|---|---|---|
pg_vectorsearch | 0.1.0 | RAG | PostgreSQL | C |
| ID | Extension | Bin | Lib | Load | Create | Trust | Reloc | Schema |
|---|---|---|---|---|---|---|---|---|
| 1990 | pg_vectorsearch | No | Yes | No | Yes | No | No | - |
| Related | vector vectorscale |
|---|
Alpha; PG18 packages; OpenBLAS required; no pgvector dependency; no in-place RC upgrade.
Version
| Type | Repo | Version | PG Ver | Package | Deps |
|---|---|---|---|---|---|
| EXT | PIGSTY | 0.1.0 | 1817161514 | pg_vectorsearch | - |
| RPM | PIGSTY | 0.1.0 | 1817161514 | pg_vectorsearch_$v | - |
| DEB | PIGSTY | 0.1.0 | 1817161514 | postgresql-$v-vectorsearch | - |
| OS / PG | PG18 | PG17 | PG16 | PG15 | PG14 |
|---|---|---|---|---|---|
| el8.x86_64 | PIGSTY 0.1.0 el8.x86_64.pg18 : pg_vectorsearch_18 pg_vectorsearch_18-0.1.0-1PGSTY.el8.x86_64.rpm
| N/A | N/A | N/A | N/A |
| el8.aarch64 | PIGSTY 0.1.0 el8.aarch64.pg18 : pg_vectorsearch_18 pg_vectorsearch_18-0.1.0-1PGSTY.el8.aarch64.rpm
| N/A | N/A | N/A | N/A |
| el9.x86_64 | PIGSTY 0.1.0 el9.x86_64.pg18 : pg_vectorsearch_18 pg_vectorsearch_18-0.1.0-1PGSTY.el9.x86_64.rpm
| N/A | N/A | N/A | N/A |
| el9.aarch64 | PIGSTY 0.1.0 el9.aarch64.pg18 : pg_vectorsearch_18 pg_vectorsearch_18-0.1.0-1PGSTY.el9.aarch64.rpm
| N/A | N/A | N/A | N/A |
| el10.x86_64 | PIGSTY 0.1.0 el10.x86_64.pg18 : pg_vectorsearch_18 pg_vectorsearch_18-0.1.0-1PGSTY.el10.x86_64.rpm
| N/A | N/A | N/A | N/A |
| el10.aarch64 | PIGSTY 0.1.0 el10.aarch64.pg18 : pg_vectorsearch_18 pg_vectorsearch_18-0.1.0-1PGSTY.el10.aarch64.rpm
| N/A | N/A | N/A | N/A |
| d12.x86_64 | PIGSTY 0.1.0 d12.x86_64.pg18 : postgresql-18-vectorsearch postgresql-18-vectorsearch_0.1.0-1PGSTY~bookworm_amd64.deb
| N/A | N/A | N/A | N/A |
| d12.aarch64 | PIGSTY 0.1.0 d12.aarch64.pg18 : postgresql-18-vectorsearch postgresql-18-vectorsearch_0.1.0-1PGSTY~bookworm_arm64.deb
| N/A | N/A | N/A | N/A |
| d13.x86_64 | PIGSTY 0.1.0 d13.x86_64.pg18 : postgresql-18-vectorsearch postgresql-18-vectorsearch_0.1.0-1PGSTY~trixie_amd64.deb
| N/A | N/A | N/A | N/A |
| d13.aarch64 | PIGSTY 0.1.0 d13.aarch64.pg18 : postgresql-18-vectorsearch postgresql-18-vectorsearch_0.1.0-1PGSTY~trixie_arm64.deb
| N/A | N/A | N/A | N/A |
| u22.x86_64 | PIGSTY 0.1.0 u22.x86_64.pg18 : postgresql-18-vectorsearch postgresql-18-vectorsearch_0.1.0-1PGSTY~jammy_amd64.deb
| N/A | N/A | N/A | N/A |
| u22.aarch64 | PIGSTY 0.1.0 u22.aarch64.pg18 : postgresql-18-vectorsearch postgresql-18-vectorsearch_0.1.0-1PGSTY~jammy_arm64.deb
| N/A | N/A | N/A | N/A |
| u24.x86_64 | PIGSTY 0.1.0 u24.x86_64.pg18 : postgresql-18-vectorsearch postgresql-18-vectorsearch_0.1.0-1PGSTY~noble_amd64.deb
| N/A | N/A | N/A | N/A |
| u24.aarch64 | PIGSTY 0.1.0 u24.aarch64.pg18 : postgresql-18-vectorsearch postgresql-18-vectorsearch_0.1.0-1PGSTY~noble_arm64.deb
| N/A | N/A | N/A | N/A |
| u26.x86_64 | PIGSTY 0.1.0 u26.x86_64.pg18 : postgresql-18-vectorsearch postgresql-18-vectorsearch_0.1.0-1PGSTY~resolute_amd64.deb
| N/A | N/A | N/A | N/A |
| u26.aarch64 | PIGSTY 0.1.0 u26.aarch64.pg18 : postgresql-18-vectorsearch postgresql-18-vectorsearch_0.1.0-1PGSTY~resolute_arm64.deb
| N/A | N/A | N/A | N/A |
Build
You can build the RPM / DEB packages for pg_vectorsearch using pig build:
Install
You can install pg_vectorsearch directly. First, make sure the PGDG and PIGSTY repositories are added and enabled:
Install the extension using pig or apt/yum/dnf:
Create Extension:
Usage
Sources:
- README.md
- sql/pg_vectorsearch.sql
- docs/maintenance.md
- docs/tuning.md
- CHANGELOG.md
- VERSION
- meson.build
- pg_vectorsearch.control.in
pg_vectorsearch 0.1.0 is an alpha extension for approximate nearest-neighbor search with the PRISM index. It supports PostgreSQL 18 and 19, native vec32 / vec16 types and optional pgvector interoperability. It is intended for testing, with evolving behavior and maintenance requirements.
Core Workflow
Operational Boundaries
Install as a superuser; no preload is required and the extension is not relocatable. The prism access method has vec32_l2_ops, vec32_ip_ops, vec32_cosine_ops and corresponding vec16 operator classes; <->, <#> and <=> express L2, negative inner product and cosine distance. prism.nprobe trades recall for query work; zero selects automatic tuning, not exact recall.
Load representative data before building the index. Indexed dimensions are limited to 1968; expression and unlogged indexes are unsupported. Keep prism.leaf_refine_threshold at zero. Filtering can return fewer rows than LIMIT, and candidate buffers bounded by work_mem can truncate large or unbounded results. Measure against an exact baseline.
Inspect prism_index_settings and follow the maintenance guide for churn. prism_rebalance supports only flat RaBitQ centroid-page indexes with centroid_fastscan off, not the default multilevel format. DELETE leaves tombstones, and retired pages are reclaimed only by REINDEX. There is no in-place upgrade from the earlier release candidates.
Was this page helpful?
Thanks—your feedback helps us improve this page.
What got in the way? (optional)