231 karma · joined August 3, 2022
I don't see any fundamental reason why the index in Postgres would be slower than a specialized vector database. The query pattern of the vector database is simply a point query using an index, similar to other queries in an OLTP system.
The only limitation I see is scalability. It's not easy to make PostgreSQL distributed, but solutions like Citus exist, making it still possible.
(I'm the author of pgvecto.rs)
Our index building process is significantly faster than pgvector on hnsw because we can utilize all the cores, whereas pgvector can only use one core. And for the filter support, we do support pre-filtering, which will guarantee enough results no matter the condition is.
- There are some drawbacks with HNSW. It's designed for memory usage but not so suitable as a disk database index. Currently the storage of the HNSW index is managed outside postgres's buffer system, which is not so ideal. We're exploring more indexing method such as DiskANN to see whether we can integrate with postgres more. Fully integration with postgres can make things work like a charm