1
0
mirror of https://github.com/tensorchord/pgvecto.rs.git synced 2025-08-01 06:46:52 +03:00
Files
pgvecto.rs/tests/sqllogictest/quantization.slt
Usamoi 727d69feab feat: transactional CREATE/DROP (#279)
* feat: transactional CREATE/DROP

Signed-off-by: usamoi <usamoi@outlook.com>

* test: transaction ddl

Signed-off-by: usamoi <usamoi@outlook.com>

---------

Signed-off-by: usamoi <usamoi@outlook.com>
2024-01-17 11:47:02 +00:00

66 lines
1.4 KiB
Plaintext

statement ok
SET search_path TO pg_temp, vectors;
# product quantization
statement ok
CREATE TABLE t (val vector(3));
statement ok
INSERT INTO t (val) SELECT ARRAY[random(), random(), random()]::real[] FROM generate_series(1, 1000);
statement ok
CREATE INDEX ON t USING vectors (val vector_l2_ops)
WITH (options = "[indexing.hnsw.quantization.product]");
statement ok
INSERT INTO t (val) VALUES ('[0.6,0.6,0.6]');
query I
SELECT COUNT(1) FROM (SELECT 1 FROM t ORDER BY val <-> '[0.5,0.5,0.5]' limit 10) t2;
----
10
query I
SELECT COUNT(1) FROM (SELECT 1 FROM t ORDER BY val <=> '[0.5,0.5,0.5]' limit 10) t2;
----
10
query I
SELECT COUNT(1) FROM (SELECT 1 FROM t ORDER BY val <#> '[0.5,0.5,0.5]' limit 10) t2;
----
10
statement ok
DROP TABLE t;
# scalar quantization
statement ok
CREATE TABLE t (val vector(3));
statement ok
INSERT INTO t (val) SELECT ARRAY[random(), random(), random()]::real[] FROM generate_series(1, 1000);
statement ok
CREATE INDEX ON t USING vectors (val vector_l2_ops)
WITH (options = "[indexing.hnsw.quantization.scalar]");
statement ok
INSERT INTO t (val) VALUES ('[0.6,0.6,0.6]');
query I
SELECT COUNT(1) FROM (SELECT 1 FROM t ORDER BY val <-> '[0.5,0.5,0.5]' limit 10) t2;
----
10
query I
SELECT COUNT(1) FROM (SELECT 1 FROM t ORDER BY val <=> '[0.5,0.5,0.5]' limit 10) t2;
----
10
query I
SELECT COUNT(1) FROM (SELECT 1 FROM t ORDER BY val <#> '[0.5,0.5,0.5]' limit 10) t2;
----
10
statement ok
DROP TABLE t;