VectorChord 使用教程

VectorChord 使用教程

VectorChord Scalable, fast, and disk-friendly vector search in Postgres, the successor of pgvecto.rs. VectorChord 项目地址: https://gitcode.com/gh_mirrors/ve/VectorChord

1. 项目目录结构及介绍

VectorChord 是一个为 PostgreSQL 设计的扩展,用于可扩展的、高性能的、磁盘高效的向量相似性搜索。项目的目录结构如下:

  • crates: 存放 Rust 编写的相关库。
  • docker: 包含 Docker 相关的配置和脚本。
  • licenses: 存放项目的许可证文件。
  • scripts: 包含项目构建和部署的脚本。
  • sql: 包含 SQL 文件,用于 PostgreSQL 的扩展。
  • src: VectorChord 的主要源代码目录。
  • tests: 包含项目的单元测试和集成测试。
  • tools: 存放项目开发过程中使用的工具脚本。
  • .cargo: Cargo 的配置文件。
  • .github/workflows: GitHub Actions 工作流文件,用于自动化测试和部署。
  • Cargo.lock: Cargo 锁文件,记录项目依赖的具体版本。
  • Cargo.toml: Cargo 配置文件,定义项目的元数据和依赖。
  • LICENSE: 项目许可证文件。
  • README.md: 项目说明文件。
  • build.rs: Rust 构建脚本。
  • rust-toolchain.toml: Rust 工具链配置文件。
  • rustfmt.toml: Rust 格式化配置文件。
  • taplo.toml: Taplo 配置文件,用于格式化 TOML 文件。
  • vchord.control: PostgreSQL 扩展的控制文件。

2. 项目的启动文件介绍

项目的启动主要是通过 Docker 来进行的。在 docker 目录下,你可以找到 Dockerfile,它是用于构建 Docker 镜像的指令文件。

使用以下命令来启动 VectorChord 的 Docker 容器:

docker run \
--name vectorchord-demo \
-e POSTGRES_PASSWORD=mysecretpassword \
-p 5432:5432 \
-d tensorchord/vchord-postgres:pg17-v0.2.2

启动容器后,你可以使用 psql 命令行工具连接到 PostgreSQL 数据库:

psql -h localhost -p 5432 -U postgres

默认的用户名是 postgres,密码是启动容器时设置的 mysecretpassword

3. 项目的配置文件介绍

VectorChord 的配置主要通过 SQL 命令来完成。在 sql 目录中,你会找到创建扩展和索引的 SQL 文件。

以下是一个简单的配置例子:

创建一个带有向量列的表:

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

插入一些数据到表中:

INSERT INTO items (embedding)
SELECT ARRAY[random(), random(), random()]::real[] FROM generate_series(1, 1000);

创建一个 vchordrq 索引:

CREATE INDEX ON items USING vchordrq (embedding vector_l2_ops) WITH (options = 'residual_quantization=true [build(internal)] lists=[]');

进行向量搜索:

SET vchordrq.probes TO '';
SELECT * FROM items ORDER BY embedding <@ '>[3,1,2]' LIMIT 5;

这些 SQL 命令可以根据实际情况进行调整,以满足不同的搜索需求。

VectorChord Scalable, fast, and disk-friendly vector search in Postgres, the successor of pgvecto.rs. VectorChord 项目地址: https://gitcode.com/gh_mirrors/ve/VectorChord

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

万钧瑛Hale

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值