时序表操作接口
更新时间:2024-10-11
创建bucket
描述
在指定database下创建一个bucket,bucket name限制字符个数1-255,满足正则:[a-zA-Z_][a-za-z0-9\_]{0,254},以字母或下划线开头。
创建bucket是一个异步流程,提交创建请求成功后,用户需要调用获取bucket状态的API接口,当bucket状态为Normal后方可使用此bucket。
请求
uri | /api/v2/buckets | |
Verb | POST | |
Body | name(required): bucket名称 retentionRules(required):Array,实际只支持1个 >82800,数据的保留时间(秒),默认值是259200 |
curl --request POST "http://localhost:8086/api/v2/buckets \  --header "Authorization: IAM认证串" \  --header "DataBase: database名称" \  --header "Accept: application/json" \  --header "Content-Type: application/json" \  --data '{    "name": "air_sensor",    "retentionRules": [       {          "type": "expire",          "everySeconds": 2592000,       }],       "storageType": "CommonPerformance",       }' |
请求参数
参数名称 | 参数类型 | 是否必填 | 说明 |
---|---|---|---|
name | string | 是 | bucket name |
retentionRules | list | 是 | 该bucket的retentionRules |
+type | string | 否 | 默认为expire |
+everySeconds | int | 是 | 数据生存时间,单位为秒 |
storageType | string | 否 | bucket存储介质,默认同database |
响应参数
参数名称 | 参数类型 | 说明 |
---|---|---|
id | string | bucket id |
name | string | bucket name |
createdAt | string | 创建bucket的UTC时间 |
retentionRules | list | 该bucket的retentionRules |
+type | string | 默认为expire |
+everySeconds | int | 数据生存时间,单位为秒 |
错误码
http_code | code | 说明 |
---|---|---|
201 | - | 请求被接受,后端异步处理创建bucket,将在一分钟内创建成功 |
400 | invalid | Bad Request,请求参数错误等,message按具体错误来定 |
401 | unauthorized | 鉴权失败,在此表示IAM认证鉴权失败 |
403 | AccessDenied | 请求受限,message按具体错误来定 |
500 | internal error | 服务器内部错误,message按具体错误来定 |
请求示例
POST /api/v2/buckets HTTP/1.1
HOST: bts.bd.baidubce.com
Authorization: bce-auth-v1/{table-access-key}/2024-05-24T13:41:13Z/1800/x-bce-date/{signature}
Content-Type: application/json
Content-Length: {payloadSizeBytes}
x-bce-date: 2024-05-24T13:41:13Z
{
"name": "test1",
"retentionRules": [{
"type": "expire",
"everySeconds": 86400
}],
"storageType": "CommonPerformance"
}
响应示例
HTTP/1.1 201 Created
Date: Sat, 18 Aug 2024 18:18:18 GMT
Content-Type: application/json; charset=utf-8
Content-Length: {payloadSizeBytes}
x-bce-request-id: 7869616F-7A68-6977-656E-406261696475
{
"id": "a387d62200000048",
"name": "test1",
"retentionRules": [{
"type": "expire",
"everySeconds": 86400
}],
"createAt": "2024-08-18T06:52:43Z",
"updateAt": "2024-08-18T06:52:43Z"
}
更新bucket
描述
更新bucket的数据生存时间。
请求
uri | /api/v2/buckets/{bucketID} | |
Verb | Patch | |
Body | retentionRules(required):Array[object]保留策略 everySeconds(required):integer > 82800,默认值是259200;数据的保留时间(秒) type:"expire",目前只支持此类型,表示数据过期删除,用户可不填 |
curl --request PATCH "http://localhost:8086/api/v2/buckets/BUCKET_ID \    --header "Authorization: IAM认证串" \    --header "DataBase: database名称" \   --header "Accept: application/json" \   --header "Content-Type: application/json" \   --data '{      "retentionRules": [        {          "type": "expire",          "everySeconds": 2592000        }]      }' |
请求参数
参数名称 | 是否必须 | 参数类型 | 说明 |
---|---|---|---|
name | 是 | string | bucket name |
retentionRules | 是 | list | 数据生存策略,该数组只能有一个元素 |
+type | 否 | string | 当前只有一个值为expire,默认为expire |
+everySeconds | 是 | int | 数据ttl,单位为秒,最小为82800 |
响应参数
参数名称 | 参数类型 | 说明 |
---|---|---|
id | string | bucket id |
name | string | bucket name |
createdAt | string | 创建bucket的UTC时间 |
updatedAt | string | 更新bucket的UTC时间 |
retentionRules | list | 该bucket的retentionRules |
+type | string | 默认为expire |
+everySeconds | int | 数据生存时间,单位为秒 |
错误码
http_code | code | 说明 |
---|---|---|
201 | - | 请求被接受,后端异步处理更新bucket,将在一分钟内更新成功 |
400 | invalid | Bad Request,请求参数错误等,message按具体错误来定 |
401 | unauthorized | 鉴权失败,在此表示IAM认证鉴权失败 |
403 | AccessDenied | 请求受限,message按具体错误来定 |
404 | not found | bucket不存在 |
500 | internal error | 服务器内部错误,message按具体错误来定 |
请求示例
PATCH /api/v2/buckets/a387d62200000048 HTTP/1.1
HOST: bts.bd.baidubce.com
Authorization: bce-auth-v1/{table-access-key}/2024-05-24T13:41:13Z/1800/x-bce-date/{signature}
Content-Type: application/json
Content-Length: {payloadSizeBytes}
x-bce-date: 2024-05-24T13:41:13Z
{
"retentionRules": [{
"type": "expire",
"everySeconds": 864000
}]
}
响应示例
HTTP/1.1 200 OK
Date: Sat, 18 Aug 2024 18:18:18 GMT
Content-Type: application/json; charset=utf-8
Content-Length: {payloadSizeBytes}
x-bce-request-id: 7869616F-7A68-6977-656E-406261696475
{
"retentionRules": [{
"type": "expire",
"everySeconds": 864000
}]
}
删除bucket
描述
删除指定的bucket。
请求
uri | /api/v2/buckets/{bucketID} |
Verb | DELETE |
Body | 无 |
示例 | curl --request DELETE "http://localhost:8086/api/v2/buckets/BUCKET_ID" \    --header "Authorization: IAM认证串" \    --header "DataBase: database名称" |
请求参数
无
响应参数
无
错误码
http_code | code | 说明 |
---|---|---|
204 | - | 请求被接受,后端异步处理删除bucket,将在一分钟内删除成功 |
400 | invalid | Bad Request,请求参数错误等,message按具体错误来定 |
401 | unauthorized | 鉴权失败,在此表示IAM认证鉴权失败 |
403 | AccessDenied | 请求受限,message按具体错误来定 |
404 | not found | bucket不存在 |
500 | internal error | 服务器内部错误,message按具体错误来定 |
请求示例
DELETE /api/v2/buckets/a387d62200000048 HTTP/1.1
HOST: bts.bd.baidubce.com
Authorization: bce-auth-v1/{table-access-key}/2024-05-24T13:41:13Z/1800/x-bce-date/{signature}
Content-Type: application/json
Content-Length: {payloadSizeBytes}
x-bce-date: 2024-05-24T13:41:13Z
响应示例
HTTP/1.1 204 No Content
Date: Sat, 18 Aug 2024 18:18:18 GMT
Content-Type: application/json; charset=utf-8
Content-Length: {payloadSizeBytes}
x-bce-request-id: 7869616F-7A68-6977-656E-406261696475
查询bucket
描述
查询指定bucket信息。
请求
uri | /api/v2/buckets/{bucketID} |
Verb | GET |
示例 | curl --request GET "http://localhost:8086/api/v2/buckets/BUCKET_ID" \    --header "Authorization: IAM认证串" \    --header "DataBase: database名称" |
请求参数
无
响应参数
参数名称 | 参数类型 | 说明 |
---|---|---|
id | string | bucket id |
name | string | bucket name |
createdAt | string | 创建bucket的UTC时间 |
updatedAt | string | 更新bucket的UTC时间 |
retentionRules | list | 该bucket的retentionRules |
+type | string | 默认为expire |
+everySeconds | int | 数据生存时间,单位为秒 |
错误码
http_code | code | 说明 |
---|---|---|
201 | - | 请求被接受,后端异步处理更新bucket,将在一分钟内更新成功 |
400 | invalid | Bad Request,请求参数错误等,message按具体错误来定 |
401 | unauthorized | 鉴权失败,在此表示IAM认证鉴权失败 |
403 | AccessDenied | 请求受限,message按具体错误来定 |
404 | not found | bucket不存在 |
500 | internal error | 服务器内部错误,message按具体错误来定 |
请求示例
GET /api/v2/buckets/a387d62200000048 HTTP/1.1
HOST: bts.bd.baidubce.com
Authorization: bce-auth-v1/{table-access-key}/2024-05-24T13:41:13Z/1800/x-bce-date/{signature}
Content-Type: application/json
Content-Length: {payloadSizeBytes}
x-bce-date: 2024-05-24T13:41:13Z
响应示例
HTTP/1.1 200 OK
Date: Sat, 18 Aug 2024 18:18:18 GMT
Content-Type: application/json; charset=utf-8
Content-Length: {payloadSizeBytes}
x-bce-request-id: 7869616F-7A68-6977-656E-406261696475
{
"id": "a387d62200000048",
"name": "test1",
"retentionRules": [{
"type": "expire",
"everySeconds": 864000
}],
"createAt": "2024-09-05T06:52:43Z",
"updateAt": "2024-09-05T07:04:10Z"
}
列举bucket
描述
列举指定database中所有bucket。
请求
uri | /api/v2/buckets |
Verb | GET |
Query参数 | |
Body | 无 |
示例 | curl --request GET "http://localhost:8086/api/v2/buckets?name=_monitoring" \    --header "Authorization: IAM认证串" \    --header "DataBase: database名称" \    --header "Accept: application/json" |
请求参数
无
响应参数
参数名称 | 参数类型 | 说明 |
---|---|---|
buckets | list | bucket列表 |
+id | string | bucket id |
+name | string | bucket name |
+createdAt | string | 创建bucket的UTC时间 |
+updatedAt | string | 更新bucket的UTC时间 |
+retentionRules | list | 该bucket的retentionRules |
++type | string | 默认为expire |
++everySeconds | int | 数据生存时间,单位为秒 |
错误码
http_code | code | 说明 |
---|---|---|
201 | - | 请求被接受,后端异步处理更新bucket,将在一分钟内更新成功 |
400 | invalid | Bad Request,请求参数错误等,message按具体错误来定 |
401 | unauthorized | 鉴权失败,在此表示IAM认证鉴权失败 |
403 | AccessDenied | 请求受限,message按具体错误来定 |
500 | internal error | 服务器内部错误,message按具体错误来定 |
请求示例
GET /api/v2/buckets HTTP/1.1
HOST: bts.bd.baidubce.com
Authorization: bce-auth-v1/{table-access-key}/2024-05-24T13:41:13Z/1800/x-bce-date/{signature}
Content-Type: application/json
Content-Length: {payloadSizeBytes}
x-bce-date: 2024-05-24T13:41:13Z
响应示例
HTTP/1.1 200 OK
Date: Sat, 18 Aug 2024 18:18:18 GMT
Content-Type: application/json; charset=utf-8
Content-Length: {payloadSizeBytes}
ETag: 3f80f-1b6-3e1cb03b
x-bce-request-id: 7869616F-7A68-6977-656E-406261696475
{
"buckets": [{
"id": "a387d62200000048",
"name": "test1",
"retentionRules": [{
"type": "expire",
"everySeconds": 864000
}],
"createAt": "2024-09-05T06:52:43Z",
"updateAt": "2024-09-05T07:04:10Z"
}]
}