Index 操作
更新时间:2025-10-10
创建索引
接口描述
为指定表和字段新建索引,当前仅支持新建向量索引、FILTERING索引与二级索引。支持同时建立多个索引(针对不同字段)。
请求结构
JSON
1POST /v{version}/index?create HTTP/1.1
2HOST: {Endpoint}
3Authorization: {Authorization}
4{
5 "database": "db_name",
6 "table": "table_name",
7 "indexes": [
8 {
9 "field": "vector_field",
10 "indexName": "vector_idx",
11 "indexType": "HNSW",
12 "metricType": "L2",
13 "params": {
14 "M": 32,
15 "efConstruction": 200
16 },
17 "autoBuild": true,
18 "autoBuildPolicy": {
19 "policyType": "timing",
20 "timing": "2024-01-01 12:00:00"
21 }
22 }
23 ]
24}
请求头域
除公共头域外,无其它特殊头域。
请求参数
| 参数名称 | 类型 | 是否必填 | 参数位置 | 描述 |
|---|---|---|---|---|
| version | String | 是 | URL参数 | API版本号,当前取1。 |
| database | String | 是 | RequestBody参数 | 指定库的名称。 |
| table | String | 是 | RequestBody参数 | 指定表的名称。 |
| indexes | List Index | 是 | RequestBody参数 | 索引定义详情列表。 |
Index参数
参数结构与Table操作-创建表中的Index参数保持一致。需要注意的是,创建索引接口目前不支持创建倒排索引,仅支持各类向量索引、FILTERING索引与二级索引。
响应头域
除公共头域外,无其它特殊头域。
响应参数
| 参数名称 | 类型 | 描述 |
|---|---|---|
| code | Int | 返回码 |
| msg | String | 返回信息 |
请求示例
JSON
1POST http://vdb.nXWNyPCOSLci.vdb.bj.baidubce.com/v1/index?create
2Host: vdb.nXWNyPCOSLci.vdb.bj.baidubce.com
3Authorization: Bearer account=root&api_key=eC4bLRy2va******************************
4{
5 "database": "db_name",
6 "table": "table_name",
7 "indexes": [
8 {
9 "field": "vector_field",
10 "indexName": "vector_idx",
11 "indexType": "HNSW",
12 "metricType": "L2",
13 "params": {
14 "M": 32,
15 "efConstruction": 200
16 }
17 }
18 ]
19}
响应示例
JSON
1HTTP/1.1 200 OK
2Content-Type: application/json;charset=UTF-8
3Date: Wed, 08 Jul 2015 03:28:11 GMT
4Request-ID: d8752367-38e8-45e4-b4c7-e53be3137ce5
5{
6 "code": 0,
7 "msg": "Success"
8}
查询索引详情
接口描述
查询指定索引的详情。
请求结构
JSON
1POST /v{version}/index?desc HTTP/1.1
2HOST: {Endpoint}
3Authorization: {Authorization}
4{
5 "database": "db_name",
6 "table": "table_name",
7 "indexName": "vector_idx"
8}
请求头域
除公共头域外,无其它特殊头域。
请求参数
| 参数名称 | 类型 | 是否必填 | 参数位置 | 描述 |
|---|---|---|---|---|
| version | String | 是 | URL参数 | API版本号,当前取1。 |
| database | String | 是 | RequestBody参数 | 指定库的名称。 |
| table | String | 是 | RequestBody参数 | 指定表的名称。 |
| indexName | String | 是 | RequestBody参数 | 指定索引的名称。 |
响应头域
除公共头域外,无其它特殊头域。
响应参数
Index参数
参数结构与Table操作-创建表中的Index参数保持一致。此外,本接口中的Index结构额外增加了如下字段:
| 参数名称 | 参数类型 | 描述 |
|---|---|---|
| indexMajorVersion | Uint64 | 返回当前索引的版本,只在手动rebuild index建索引完成时增加。仅向量索引类型显示。 |
| state | String | 索引状态。取值如下: |
| indexBuildingInfo | IndexBuildingInfo | 返回当前索引的版本,只在手动rebuild index建索引完成时增加。仅向量索引类型显示。 |
IndexBuildingInfo参数
| 参数名称 | 参数类型 | 描述 |
|---|---|---|
| finishRate | Float | 已完成向量索引构建的副本数占总副本数的比率。 |
请求示例
JSON
1POST http://vdb.nXWNyPCOSLci.vdb.bj.baidubce.com/v1/index?desc
2Host: vdb.nXWNyPCOSLci.vdb.bj.baidubce.com
3Authorization: Bearer account=root&api_key=eC4bLRy2va******************************
4{
5 "database": "db_test",
6 "table": "table_test",
7 "indexName": "vector_idx"
8}
响应示例
JSON
1HTTP/1.1 200 OK
2Content-Type: application/json;charset=UTF-8
3Date: Wed, 08 Jul 2015 03:28:11 GMT
4Request-ID: d8752367-38e8-45e4-b4c7-e53be3137ce5
5{
6 "index": {
7 "indexName": "vector_idx",
8 "field": "vector_field",
9 "autoBuild": false,
10 "indexType": "HNSW",
11 "metricType": "L2",
12 "params": {
13 "M": 32,
14 "efConstruction": 200
15 },
16 "state": "NORMAL"
17 },
18 "code": 0,
19 "msg": "Success"
20}
重建索引
接口描述
重建指定索引,仅支持重建向量索引。
请求结构
JSON
1POST /v{version}/index?rebuild HTTP/1.1
2HOST: {Endpoint}
3Authorization: {Authorization}
4{
5 "database": "db_name",
6 "table": "table_name",
7 "indexName": "vector_idx"
8}
请求头域
除公共头域外,无其它特殊头域。
请求参数
| 参数名称 | 类型 | 是否必填 | 参数位置 | 描述 |
|---|---|---|---|---|
| version | String | 是 | URL参数 | API版本号,当前取1。 |
| database | String | 是 | Request Body参数 | 指定库的名称。 |
| table | String | 是 | Request Body参数 | 指定表的名称。 |
| indexName | Index | 是 | Request Body参数 | 指定索引的名称。 |
响应头域
除公共头域外,无其它特殊头域。
响应参数
| 参数名称 | 类型 | 描述 |
|---|---|---|
| code | Int | 返回码 |
| msg | String | 返回信息 |
请求示例
JSON
1POST http://vdb.nXWNyPCOSLci.vdb.bj.baidubce.com/v1/index?rebuild
2Host: vdb.nXWNyPCOSLci.vdb.bj.baidubce.com
3Authorization: Bearer account=root&api_key=eC4bLRy2va******************************
4{
5 "database": "db_test",
6 "table": "table_test",
7 "indexName": "vector_idx"
8}
响应示例
JSON
1HTTP/1.1 200 OK
2Content-Type: application/json;charset=UTF-8
3Date: Wed, 08 Jul 2015 03:28:11 GMT
4Request-ID: d8752367-38e8-45e4-b4c7-e53be3137ce5
5{
6 "code": 0,
7 "msg": "Success"
8}
删除索引
接口描述
删除指定索引。
请求结构
JSON
1DELETE /v{version}/index HTTP/1.1
2HOST: {Endpoint}
3Authorization: {Authorization}
4{
5 "database": "db_name",
6 "table": "table_name",
7 "indexName": "index_name"
8}
请求头域
除公共头域外,无其它特殊头域。
请求参数
| 参数名称 | 类型 | 是否必填 | 参数位置 | 描述 |
|---|---|---|---|---|
| version | String | 是 | URL参数 | API版本号,当前取1。 |
| database | String | 是 | Query参数 | 指定库的名称。 |
| table | String | 是 | Query参数 | 指定表的名称。 |
| indexName | Index | 是 | Query参数 | 指定索引的名称。 |
响应头域
除公共头域外,无其它特殊头域。
响应参数
| 参数名称 | 类型 | 描述 |
|---|---|---|
| code | Int | 返回码 |
| msg | String | 返回信息 |
请求示例
JSON
1DELETE http://vdb.nXWNyPCOSLci.vdb.bj.baidubce.com/v1/index
2Host: vdb.nXWNyPCOSLci.vdb.bj.baidubce.com
3Authorization: Bearer account=root&api_key=eC4bLRy2va******************************
4{
5 "database": "db_test",
6 "table": "table_test",
7 "indexName": "vector_idx"
8}
响应示例
JSON
1HTTP/1.1 200 OK
2Content-Type: application/json;charset=UTF-8
3Date: Wed, 08 Jul 2015 03:28:11 GMT
4Request-ID: d8752367-38e8-45e4-b4c7-e53be3137ce5
5{
6 "code": 0,
7 "msg": "Success"
8}
修改索引
接口描述
修改向量索引信息,目前只支持修改autoBuild属性。
请求结构
JSON
1POST /v{version}/index?modify HTTP/1.1
2HOST: {Endpoint}
3Authorization: {Authorization}
4{
5 "database": "db_name",
6 "table": "table_name",
7 "index": {
8 "indexName": "vector_idx",
9 "autoBuild": true,
10 "autoBuildPolicy": {
11 "policyType": "PERIODICAL",
12 "periodInSecond": 5000,
13 "timing": "2026-01-01 12:00:00"
14 }
15 }
16}
请求头域
除公共头域外,无其它特殊头域。
请求参数
| 参数名称 | 类型 | 是否必填 | 参数位置 | 描述 |
|---|---|---|---|---|
| version | String | 是 | URL参数 | API版本号,当前取1。 |
| database | String | 是 | RequestBody参数 | 指定库的名称。 |
| table | String | 是 | RequestBody参数 | 指定表的名称。 |
| index | Index | 是 | RequestBody参数 | 索引定义详情。 |
Index参数
| 参数名称 | 参数类型 | 描述 |
|---|---|---|
| indexName | String | 索引名称,要求表内唯一。索引名称的命名要求如下: 1. 仅支持大小写字母、数字以及下划线(_),必须以字母开头; 2. 长度限制为1~255。 |
| autoBuild | Boolean | 是否自动构建索引。 |
| autoBuildPolicy | AutoBuildPolicy | 构建索引策略。 |
AutoBuildPolicy
| 参数名称 | 类型 | 描述 |
|---|---|---|
| policyType | String | 自动构建索引策略类型,大小写不敏感,支持的类型如下: |
| timing | String | |
| periodInSecond | Uint64 | 周期性构建索引的参数,每过periodInSecond构建一次索引,只在policyType为periodical时生效。可以指定从某个时间点开始,通过上面的timing参数传入。周期不能低于3600 |
| rowCountIncrement | Uint64 | 当tablet(不是table)增加或者减少行数大于rowCountIncrement时构建一次索引,只在policyType为row_count_increment时生效。不能低于10000 |
| rowCountIncrementRatio | double | 当tablet增加或者减少行数百分比大于rowCountIncrementRatio时构建一次索引,只在policyType为row_count_increment时生效。不能小于等于0 |
响应头域
除公共头域外,无其它特殊头域。
响应参数
| 参数名称 | 类型 | 描述 |
|---|---|---|
| code | Int | 返回码 |
| msg | String | 返回信息 |
请求示例
JSON
1POST http://vdb.nXWNyPCOSLci.vdb.bj.baidubce.com/v1/index?create
2Host: vdb.nXWNyPCOSLci.vdb.bj.baidubce.com
3Authorization: Bearer account=root&api_key=eC4bLRy2va******************************
4{
5 "database": "db_name",
6 "table": "table_name",
7 "index": {
8 "indexName": "vector_idx",
9 "autoBuild": true,
10 "autoBuildPolicy": {
11 "policyType": "PERIODICAL",
12 "periodInSecond": 5000,
13 "timing": "2026-01-01 12:00:00"
14 }
15 }
16}
响应示例
JSON
1HTTP/1.1 200 OK
2Content-Type: application/json;charset=UTF-8
3Date: Wed, 08 Jul 2015 03:28:11 GMT
4Request-ID: d8752367-38e8-45e4-b4c7-e53be3137ce5
5{
6 "code": 0,
7 "msg": "Success"
8}
