File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 1919** xref:v1.17/37.adoc[pg_cron]
2020** xref:v1.17/38.adoc[pgsql-http]
2121** xref:v1.17/39.adoc[vectorchord]
22+ ** xref:v1.17/40.adoc[pgvectorscale]
2223* Oracle兼容功能列表
2324** xref:v1.17/11.adoc[1、Ivorysql框架设计]
2425** xref:v1.17/12.adoc[2、GUC框架]
Original file line number Diff line number Diff line change @@ -20,7 +20,7 @@ IvorySQL 作为一款兼容 Oracle 且基于 PostgreSQL 的高级开源数据库
2020| xref:v1.17/37.adoc[pg_cron] | 1.6.0 | 提供数据库内部的定时任务调度功能,支持定期执行SQL语句 | 数据清理、定期统计、自动化维护任务
2121| xref:v1.17/38.adoc[pgsql-http] | 1.7.0 | 允许在SQL中发起HTTP请求,与外部Web服务进行交互 | 数据采集、API集成、微服务调用
2222| xref:v1.17/39.adoc[vectorchord] | 0.5.1 | 增强向量检索能力,提供更高效的近似最近邻搜索算法 | 大规模向量检索、AI推理服务、相似性匹配
23- | pgvectorscale | 0.8.0 | 提供向量数据的分片和分布式扩展支持,提升大规模向量处理性能 | 分布式向量数据库、高并发向量查询
23+ | xref:v1.17/40.adoc[ pgvectorscale] | 0.8.0 | 提供向量数据的分片和分布式扩展支持,提升大规模向量处理性能 | 分布式向量数据库、高并发向量查询
2424|====
2525
2626这些插件均经过 IvorySQL 团队的测试和适配,确保在 IvorySQL 环境下稳定运行。用户可以根据业务需求选择合适的插件,进一步提升数据库系统的能力和灵活性。
Original file line number Diff line number Diff line change 1+
2+ :sectnums:
3+ :sectnumlevels: 5
4+
5+ = pgvectorscale
6+
7+ == 概述
8+ pgvectorscale 是 Timescale 公司推出的 PostgreSQL 扩展,旨在对流行的 pgvector 扩展进行高性能、高成本效益的补充。它专为 AI 应用中的大规模向量工作负载而设计,通过引入创新的索引算法和压缩技术,显著提升了向量相似性搜索的性能并降低了存储成本。
9+
10+ 该扩展的核心特性包括基于微软 DiskANN 研究的新索引类型 StreamingDiskANN、改进的统计二进制量化(SBQ)压缩方法,以及支持标签过滤的向量搜索功能。在基准测试中,它在处理大规模嵌入向量时展现出卓越的性能:与专用向量数据库服务相比,可实现高达 28 倍的低延迟和 16 倍的查询吞吐量,同时节省约 75% 的成本。
11+
12+ pgvectorscale 完全兼容 pgvector 的数据类型和查询语法,确保了无缝的集成和迁移体验。它使用 Rust 语言和 PGRX 框架开发,非常适合需要在 PostgreSQL 内进行高效海量向量搜索的生产级应用。
13+
14+ == 安装
15+ IvorySQL的安装包里已经集成了pgvectorscale插件,如果使用安装包安装的IvorySQL,通常不需要再手动安装pgvectorscale即可使用。其它安装方式可以参考下面的源码安装步骤。
16+
17+ [TIP]
18+ 环境中已经安装了IvorySQL1.17及以上版本,安装路径为/usr/local/ivorysql/ivorysql-1
19+
20+ === 源码安装
21+
22+ ** 安装Rust工具链
23+
24+ ```
25+ curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
26+ ```
27+
28+ ** 下载pgvectorscale源码
29+
30+ 从https://github.com/timescale/pgvectorscale/releases/tag/0.8.0 下载 0.8.0的源码包 pgvectorscale-0.8.0.tar.gz
31+ ```
32+ tar xvf pgvectorscale-0.8.0.tar.gz
33+ cd pgvectorscale-0.8.0/pgvectorscale
34+ ```
35+
36+ ** 安装cargo-pgrx
37+
38+ ```
39+ cargo install --locked cargo-pgrx --version $(cargo metadata --format-version 1 | jq -r '.packages[] | select(.name == "pgrx") | .version')
40+ cargo pgrx init --pg14 pg_config
41+ ```
42+
43+ ** 编译并安装扩展
44+
45+ ```
46+ cargo pgrx install --release
47+ ```
48+
49+ == 创建Extension并确认pgvectorscale版本
50+
51+ psql 连接到数据库,执行如下命令:
52+ ```
53+ ivorysql=# CREATE EXTENSION IF NOT EXISTS vectorscale CASCADE;
54+ CREATE EXTENSION
55+
56+ ivorysql=# SELECT * FROM pg_available_extensions WHERE name = 'vectorscale';
57+ name | default_version | installed_version | comment
58+ ----------- +-----------------+-------------------+--------------------------------------------
59+ vectorscale | 0.8.0 | 0.8.0 | diskann access method for vector search.
60+ (1 row)
61+ ```
62+
63+ == 使用
64+ 关于pgvectorscale的使用,请参阅 https://github.com/timescale/pgvectorscale[pgvectorscale官方文档]
You can’t perform that action at this time.
0 commit comments