Skip to content

Commit 5128b73

Browse files
author
hemiao
committed
腾讯云向量数据库(Tencent Cloud VectorDB)说明
1 parent 2d4818d commit 5128b73

File tree

1 file changed

+37
-0
lines changed

1 file changed

+37
-0
lines changed

moql-querier-tcvector/readme.md

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
​ 众所周知,邮件、图片、音频、视频等非结构化数据已占据了我们日常生活数据总量的80%以上。如果想要使用计算机来处理这些数据,需要使用embedding技术将它们转化为向量。腾讯云向量数据库(Tencent Cloud VectorDB)是一款全托管的自研企业级分布式数据库服务,专用于存储、检索、分析多维向量数据,可存储这些向量,并提供基于向量的索引及检索服务。Tencent Cloud VectorDB提供了一套类SQL的数据检索API,方便使用者通过这些API检索数据。由于它与SQL语法间仍有差别,且必须通过编程的方式才能获取数据,使用起来仍不够方便。
2+
3+
​ 为了能让使用者以类似访问关系数据库的交互体验访问腾讯云向量数据库。MOQL Transx继续秉承能SQL化检索数据库就SQL化检索数据库的宗旨。为用户提供了一套可以检索腾讯云向量数据库的SQL语法,并提供了检索接口。使用者可通过该接口输入SQL语句,获得结构化的数据结果,如下列代码示例:
4+
5+
```
6+
// 构建TcVector客户端
7+
ConnectParam connectParam = ConnectParam.newBuilder().withUrl("向量数据库url")
8+
.withUsername("root").withKey("访问key").withTimeout(30).build();
9+
vectorDBClient = new VectorDBClient(connectParam,
10+
11+
// 使用TcVector客户端创建TcVector查询器
12+
TcVectorQuerier querier = new TcVectorQuerier(vectorDBClient);
13+
/* 查询语句含义:从book集合中筛选数据,并返回全部列。筛选条件为,向量字段值为'[[0.3123, 0.43, 0.213], [0.5123, 0.63, 0.413]]'。取前2条命中记录。*/
14+
String sql = "select * from datayoo.book where withVectors('[[0.3123, 0.43, 0.213], [0.5123, 0.63, 0.413]]') limit 2";
15+
// 使用查询器执行sql语句,并返回查询结果
16+
RecordSet recordSet = querier.query(sql);
17+
```
18+
19+
20+
​ TcVector提供的检索接口与SQL语法有一定差异,其SearchParam提供的部分参数可以直接映射为SQL语法的等同语义子句。如:expr参数,其语义与SQL中Where子句语义基本兼容;其OutFields参数为输出结果集的列结构,与SQL语句的Select子句语义相同。但其也有其特殊的查询参数接口,如:针对向量字段匹配的参数接口withVectors、withVectorFieldName;表示匹配一致性级别的withConsistencyLevel接口等。由于这些概念在SQL中没有对应语义的子句,为不增加语法概念,MOQL Transx将这类接口都以Where子句中的函数形式进行表达。这种表达方式可能不是最佳表达方式,如果有人有更好的建议,可以到项目中给我们留言。
21+
22+
​ 下表将给出TcVector查询接口的参数与SQL语法的对照关系:
23+
24+
| TcVector查询参数接口 | SQL语法 |
25+
|------------------------------------------------|---------------|
26+
| withParams | withParams() |
27+
| withVectors | withVectors() |
28+
29+
​ 模块的maven坐标
30+
31+
```
32+
<dependency>
33+
<groupId>org.datayoo.moql</groupId>
34+
<artifactId>moql-querier-tcvector</artifactId>
35+
<version>1.0.0</version>
36+
</dependency>
37+
```

0 commit comments

Comments
 (0)