Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

To store and query embeddings with pgvector, enable the extension in the database, create a column whose vector dimension matches your embedding model, insert vectors, and sort query results by the distance metric you need. PostgreSQL performs exact nearest-neighbor search by default; add an HNSW or IVFFlat index only when approximate search’s speed-versus-recall trade-off suits your workload.

Enable pgvector and create a vector column

Install pgvector for your PostgreSQL environment, then enable it in each database where you intend to use it. The project README describes pgvector 0.8.6 and PostgreSQL 13+; installation and supported versions can change, so check the pgvector project README for the version deployed on your server.

CREATE EXTENSION vector;

CREATE TABLE items (
  id bigserial PRIMARY KEY,
  embedding vector(3)
);

The number in vector(3) is illustrative. Replace it with the output dimension of the embedding model that populates the column. Each stored vector and each query vector must have the dimension expected by that column.

Insert embeddings and run a nearest-neighbor query

Represent a vector as a bracketed list of numeric values. The following sample uses small illustrative vectors and asks PostgreSQL for the five rows nearest to a query vector under L2 distance:

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
#1 Best Overall
Elebase USB to USB C Adapter for iPhone 18 Pro Max,USBC Car Charger Adapter
  • Read Before You Buy — No Video Output: These adapters support charging and USB 2.0 data transfer, but cannot transmit video signals. Except for standard USB webcams (which use USB data only), they are not compatible with HDMI/DisplayPort cables, video-capable USB-C hubs, or docking stations with video output.
  • Convert USB-A Ports to USB-C: Designed to connect USB-C earphones, cables, flash drives, card readers, and other USB-C accessories to standard USB-A ports. Plug-and-play with no drivers or software required.
  • Aluminum Alloy Housing: Built with a sturdy aluminum alloy shell that aids in heat dissipation and protects against daily wear and scratches. Designed to maintain a stable and secure connection.
  • Compact & Travel-Friendly: The ultra-compact design allows the adapter to stay plugged into your device without blocking adjacent ports or adding bulk, reducing wear and tear on your original USB ports.
  • 12-Month Warranty: Backed by a 12-month manufacturer warranty for peace of mind. Designed to meet strict quality control standards for reliable everyday performance.
INSERT INTO items (embedding)
VALUES ('[1,2,3]'), ('[4,5,6]');

SELECT *
FROM items
ORDER BY embedding <-> '[3,1,2]'
LIMIT 5;

The distance operator in ORDER BY determines what “nearest” means. pgvector documents these operators:

Operator Metric or value How to interpret ascending order
<-> L2 (Euclidean) distance Smaller distance is nearer.
<#> Negative inner product Use the operator as documented in ascending order for index scans; it returns the negative inner product, not the positive inner product.
<=> Cosine distance Smaller distance is nearer.
<+> L1 (Manhattan) distance Smaller distance is nearer.

For cosine distance, change the ordering expression to embedding <=> '[3,1,2]'; for inner product, use embedding <#> '[3,1,2]'; for L1 distance, use embedding <+> '[3,1,2]'. A returned distance is not automatically a similarity score: name and interpret it according to the metric and ordering convention you chose.

Rank #2
Anker USB-C Hub, 5-in-1 USB Hub for Laptops, 4K HDMI Multiport Adapter
  • 5-in-1 USB-C Hub: Experience comprehensive connectivity featuring a Power Delivery input, two USB-A 2.0 ports, a USB-A 3.0 port, and an HDMI port. (Note: The USB-C power delivery input port is only for connecting an external wall charger to power your laptop and cannot power peripheral devices.)
  • 90W Pass-Through Charging: Achieve optimal charging with 90W pass-through power to your laptop, supported by a total input of 100W, with the hub reserving 10W for operational efficiency. (Note: Wall charger not included.)
  • Quick Data Transfers: Accelerate your productivity with rapid data transfers using a high-speed 5Gbps USB 3.0 port and two 480Mbps USB 2.0 ports.
  • 4K HDMI Display: Enhance your visual experience with a hub capable of delivering 4K resolution at 30Hz in both mirror and extend modes. Please note that this hub is compatible with MacBook (macOS 12 and newer), Windows 10 and 11, ChromeOS, and laptops equipped with DP Alt Mode and Power Delivery. Note: This device is not compatible with Linux.
  • What You Get: Anker USB-C Hub (5-in-1, 4K HDMI), welcome guide, 18-month warranty, and our friendly customer service.

Choose between exact search, HNSW, and IVFFlat

Without an approximate index, pgvector performs exact nearest-neighbor search, which gives perfect recall: it returns the true nearest results for the chosen metric. Whether exact search is fast enough depends on the data and query workload. If you add an approximate index, retrieval can become faster, but results can differ from exact search.

Approach Trade-off described by the project When to consider it
Exact search Perfect recall; no approximate index required. Use as a correctness baseline, or keep it when its query performance meets your needs.
HNSW Generally a better speed-recall trade-off than IVFFlat, at higher index-build time and memory cost. It has no training step, so it can be created before the table contains data. Consider it when query speed and recall justify the additional build and memory costs.
IVFFlat Typically faster to build and lower in memory use than HNSW, but lower query performance in the project’s qualitative comparison. It needs data for useful index training. Consider it when lower build and memory costs matter and you can tune lists and probes on representative data.

These are qualitative project-level comparisons, not performance guarantees for a particular PostgreSQL deployment. Compare approximate results with exact results on representative data, and measure query latency, recall, build time, and resource use before choosing an index.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Rank #3
Sale
Anker USB C Hub, 7in1 Multi-Port USB Adapter, 4K@60Hz USBC to HDMI Splitter
  • Sleek 7-in-1 USB-C Hub: Features an HDMI port, two USB-A 3.0 ports, and a USB-C data port, each providing 5Gbps transfer speeds. It also includes a USB-C PD input port for charging up to 100W and dual SD and TF card slots, all in a compact design.
  • Flawless 4K@60Hz Video with HDMI: Delivers exceptional clarity and smoothness with its 4K@60Hz HDMI port, making it ideal for high-definition presentations and entertainment. (Note: Only the HDMI port supports video projection; the USB-C port is for data transfer only.)
  • Double Up on Efficiency: The two USB-A 3.0 ports and a USB-C port support a fast 5Gbps data rate, significantly boosting your transfer speeds and improving productivity.
  • Fast and Reliable 85W Charging: Offers high-capacity, speedy charging for laptops up to 85W, so you spend less time tethered to an outlet and more time being productive.
  • What You Get: Anker USB-C Hub (7-in-1), welcome guide, 18-month warranty, and our friendly customer service.

Create an index for the metric you query

Approximate indexes need an operator class compatible with the distance operator used in the query. For example, an HNSW index using L2 distance can be created as follows:

CREATE INDEX ON items USING hnsw (embedding vector_l2_ops);

Match the operator class to the metric: the project documents vector_l2_ops for L2 distance, vector_cosine_ops for cosine distance, vector_ip_ops for inner product, and vector_l1_ops for L1 distance. For example, a cosine index uses vector_cosine_ops with the <=> operator. The project README covers index options and query details in its indexing documentation.

Rank #4
Sale
UGREEN USB to USB C Adapter Combo 4-Pack, 10Gbps USB C Converter Space Gray
  • Dual Converters, Infinite Potential:Includes 2× USB C male to USB A female adapters and 2× USB A male to USB C female adapters. Perfect for a wide range of uses—tablets with Bluetooth keyboards, expand USB ports on macbook, and more. Two different converters for all your daily needs
  • Next-Level 10Gbps & 3A Charging: No more slow 480Mbps, this usb to usb c adapter has a transfer speed of up to 10Gbps, allowing you to do more transferring in less time. This usb adapter fits both USB A and USB C charger, supporting up to 3A fast charging
  • Upgraded Exquisite Craftsmanship: With an aluminum alloy housing and metal connector, the usbc to usb adapter is extremely durable and sturdy. Rigorously tested to withstand more than 10,000 times of plugging and unplugging, ensuring long-lasting performance
  • Broad Compatible: The usb c to usb adapter widely supports all USB C/ USB A devices like laptops, tablets, cellphones, car chargers, and phone chargers. Such as compatible with MacBook Pro/Air 2023/2022, Thunderbolt 4/3 Devices,Apple MagSafe Watch 9/8/7/SE/Ultra, iPad Pro 2022/2021, Samsung Galaxy S23/S20/S10, and iPhone 17/16/15 Pro. Plug and play
  • Please Note: To reach 10Gbps speed, keep the cable under 3.3 ft. For USB A Male to USB C adapters, try flipping the USB C connector. USB C Male to USB A adapters support bidirectional 10Gbps transfer within 3.3 ft

IVFFlat needs populated data to train its lists, so create that index after loading data. The README gives approximate starting heuristics: use about rows / 1000 lists for up to one million rows, and about sqrt(rows) lists above one million rows. Probes can start around sqrt(lists); increasing probes generally improves recall at a speed cost. These are tuning starting points, not universal settings. Benchmark with your data and queries.

Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Handle filters and tenant isolation

A filtered nearest-neighbor query may have different behavior with an approximate index than an unfiltered one. Approximate index filtering happens after the index scan. If a WHERE condition is selective, too few scanned candidates may pass the filter to fill the requested result limit.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Best Value
Anker USB C Hub, 5-in-1 USBC to HDMI Splitter with 4K Display
  • 5-in-1 Connectivity: Equipped with a 4K HDMI port, a 5 Gbps USB-C data port, two 5 Gbps USB-A ports, and a USB C 100W PD-IN port. Note: The USB C 100W PD-IN port supports only charging and does not support data transfer devices such as headphones or speakers.
  • Powerful Pass-Through Charging: Supports up to 85W pass-through charging so you can power up your laptop while you use the hub. Note: Pass-through charging requires a charger (not included). Note: To achieve full power for iPad, we recommend using a 45W wall charger.
  • Transfer Files in Seconds: Move files to and from your laptop at speeds of up to 5 Gbps via the USB-C and USB-A data ports. Note: The USB C 5Gbps Data port does not support video output.
  • HD Display: Connect to the HDMI port to stream or mirror content to an external monitor in resolutions of up to 4K@30Hz. Note: The USB-C ports do not support video output.
  • What You Get: Anker 332 USB-C Hub (5-in-1), welcome guide, our worry-free 18-month warranty, and friendly customer service.

The project README illustrates the effect: if a filter matches 10% of rows and HNSW uses the default hnsw.ef_search of 40, an average of four matching rows would be expected from that scan. This is an illustration of filtering behavior, not a general performance benchmark.

Choose a strategy based on how many values the filter has and how selective it is:

  • Try exact search with a filter-column index when the filter selects a small fraction of rows; exact search can perform well for that case.
  • Use iterative index scans when an approximate scan needs to continue further to find enough rows after filtering.
  • Consider a partial index when there are only a few commonly queried filter values.
  • Consider partitioning when there are many distinct filter values.
  • For tenant isolation, use list partitioning or separate tables. With tenants sharing an approximate index, vectors belonging to one tenant can affect another tenant’s recall and speed.

Validate the chosen approach with the actual filters, tenant distribution, and requested result limits. A query that works well without a filter may not return enough filtered candidates from the same approximate scan.

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.