【限时免费】 VectoRex 技术文档:纯Java高性能向量数据库使用指南

VectoRex 技术文档:纯Java高性能向量数据库使用指南

【免费下载链接】VectoRex VectoRex 是一个 纯 Java 实现 的高性能、可扩展的向量数据库,专为现代 AI 和大数据应用设计。它结合了高效的向量索引(HNSW)和强大的标量索引(倒排索引、范围索引),支持复杂的混合查询(向量 + 标量),适用于推荐系统、图像搜索、自然语言处理等场景。 【免费下载链接】VectoRex 项目地址: https://gitcode.com/javpower/VectoRex

1. 安装指南

1.1 环境要求

  • Java 8及以上版本
  • Maven 3.0+(如需源码编译)
  • Docker(如需容器化部署)

1.2 安装方式

方式一:Maven依赖集成

Spring Boot项目添加以下依赖:

<dependency>
    <groupId>io.github.javpower</groupId>
    <artifactId>vectorex-starter</artifactId>
    <version>1.5.3</version>
</dependency>

Solon框架项目添加:

<dependency>
    <groupId>io.github.javpower</groupId>
    <artifactId>vectorex-solon-plugin</artifactId>
    <version>1.5.3</version>
</dependency>
方式二:Docker部署独立服务
docker run -d -p 8080:8382 --name vectorrex-server javpower/vectorex-server:v1.0.0
方式三:客户端SDK集成

Java客户端

<dependency>
    <groupId>io.github.javpower</groupId>
    <artifactId>vectorrex-client</artifactId>
    <version>1.5.3</version>
</dependency>

Go客户端

go get gitee.com/javpower/VectoRex/vectorex-client-go

2. 使用说明

2.1 核心概念

  • 集合(Collection):存储向量数据的逻辑单元
  • 向量(Vector):高维数值数组,支持浮点/二进制类型
  • 标量字段(Scalar Field):结构化数据字段(如ID、标签等)

2.2 快速入门

// 初始化客户端(以Java为例)
VectoRexClient client = new VectoRexClient("http://localhost:8080");

// 创建集合
CollectionSchema schema = new CollectionSchema()
    .addVectorField("feature", 128, DataType.FLOAT)
    .addScalarField("id", DataType.INT64);
client.createCollection("products", schema);

// 插入数据
List<Float> vector = Arrays.asList(0.1f, 0.2f, ..., 0.128f);
Map<String, Object> scalarData = Map.of("id", 1001);
client.insert("products", vector, scalarData);

// 相似度搜索
SearchResult result = client.search("products", queryVector, 10);

3. API使用文档

3.1 集合管理API

方法参数说明
createCollection(String name, CollectionSchema schema)创建新集合
dropCollection(String name)删除集合
listCollections()获取所有集合列表

3.2 数据操作API

方法参数说明
insert(String collection, List vector, Map<String,Object> scalarData) 插入单条数据
batchInsert(String collection, List records) 批量插入数据
search(String collection, List queryVector, int topK) 相似度搜索

3.3 高级查询API

// 混合查询示例
HybridQuery query = new HybridQuery()
    .withVector(queryVector)
    .withFilter("category == 'electronics' && price < 1000")
    .setTopK(5);
client.hybridSearch("products", query);

4. 进阶配置

4.1 索引配置

// 创建时指定索引参数
IndexParams params = new HNSWParams()
    .setM(16)
    .setEfConstruction(200);
client.createCollection("images", schema, params);

4.2 持久化配置

通过配置文件设置存储路径:

# application.properties
vectorex.storage.path=/data/vectorex
vectorex.storage.auto-flush-interval=60s

4.3 性能调优建议

  1. 根据数据规模调整HNSW的M参数(16-64)
  2. 批量插入时建议每批1000-5000条
  3. 查询时合理设置efSearch参数平衡精度与速度

本技术文档提供了VectoRex的核心使用指南,如需更详细参数说明或特殊场景配置,请参考项目完整文档。该数据库特别适用于需要低延迟、高吞吐量的向量检索场景,开发者可根据实际需求选择嵌入式或独立服务部署模式。

【免费下载链接】VectoRex VectoRex 是一个 纯 Java 实现 的高性能、可扩展的向量数据库,专为现代 AI 和大数据应用设计。它结合了高效的向量索引(HNSW)和强大的标量索引(倒排索引、范围索引),支持复杂的混合查询(向量 + 标量),适用于推荐系统、图像搜索、自然语言处理等场景。 【免费下载链接】VectoRex 项目地址: https://gitcode.com/javpower/VectoRex

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

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

抵扣说明:

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

余额充值