PG Vector测试

通过psql客户端进行连接,相应命令可以参照;

powershell 复制代码
CREATE OR REPLACE FUNCTION random_array(dim integer) 
    RETURNS INT[]
AS $$ 
    SELECT array_agg(random()) 
    FROM generate_series(1, dim); 
$$ 
LANGUAGE SQL 
VOLATILE 
COST 1;

CREATE TABLE vtest(id INT, v VECTOR(1536));

INSERT INTO vtest SELECT i, random_array(1536)::VECTOR(1536) FROM generate_series(1, 1000000) AS i;

1000

CREATE INDEX ON vtest USING ivfflat(v vector_cosine_ops) WITH(lists = 1000);

CREATE INDEX ON vtest USING hnsw (v vector_l2_ops) WITH (m = 2, ef_construction = 8);

set hnsw.ef_search=1;

set ivfflat.probes=1;

//查看nsw索引加载情况

SELECT phase, round(100.0 * blocks_done / nullif(blocks_total, 0), 1) AS "%" FROM pg_stat_progress_create_index;

//查看执行计划

EXPLAIN SELECT * FROM vtest ORDER BY v <-> (SELECT random_array(1536)::VECTOR(1536)) LIMIT 50;

pgbench -f ./test.sql -c1 -T60 -P5 -n postgres

相关推荐
Decay__32 分钟前
12_MySQL InnoDB 内存与锁调优 —— Buffer Pool、redo log、隔离级别与锁等待
运维·数据库·sql·mysql·架构
笃行3501 小时前
AI数据库的库内四层结构,KingbaseES 产品拆解
数据库
我是大猴子3 小时前
redis
数据库·redis·缓存
苏宸啊5 小时前
MySQL(一)
数据库·mysql
2603_969694855 小时前
JDBC 基础学习笔记:API 核心原理解析与 CRUD 代码实操
数据库·笔记·mysql·学习方法·database·sql注入
这个DBA有点耶6 小时前
库内语义构建 vs 外挂向量库:业务语义缺失,才是RAG“胡说八道”的根源
数据库·mysql·aigc
kobe_OKOK_7 小时前
mysql 开启 binlog 日志
数据库·mysql
鸽芷咕8 小时前
KingbaseES 调参先看执行计划,参数是答案不是起点
数据库
这个DBA有点耶8 小时前
MySQL 8.0直方图:统计信息升级了,执行计划为什么还是选错?
数据库·mysql·代码规范
老纪的技术唠嗑局10 小时前
把 seekdb 塞进 iOS App:让混合检索嵌入手机
数据库