创建一个存储桶
使用 InfluxDB 用户界面 (UI)、influx 命令行界面 (CLI) 或 InfluxDB HTTP API 创建一个桶。
默认情况下,存储桶具有implicit schema-type,并且其模式符合您的数据。为了要求测量具有特定的列和数据类型,并防止不符合的写入请求,使用explicit schema-type创建一个存储桶。
您可以在用户界面的两个地方创建一个存储桶。
从加载数据菜单创建存储桶
- 在左侧的导航菜单中,选择 加载数据 > 桶 。
- 点击 创建存储桶 在右上角。
- 为存储桶输入一个名称 (见 存储桶命名限制)。
- 选择何时删除数据:
- 永不以永久保留数据。
- 超过以选择特定的保留期限。
- 点击 创建 以创建存储桶。
在数据探索器中创建一个桶
- 在左侧导航菜单中,选择 *探索 (数据探索器)。
- 在来源面板中,选择
+ 创建存储桶。 - 为存储桶输入一个名称 (参见 存储桶命名限制)。
- 选择何时删除数据:
- 从不永久保留数据。
- 超过以选择特定的保留期。
- 点击 创建 以创建存储桶。
使用influx CLI创建一个bucket
要使用 influx CLI 创建一个存储桶,使用 influx bucket create 命令 并为以下标志指定值:
-o,--org: 组织名称-n,--name: 存储桶名称 (请参见 存储桶命名限制)-r,--retention: 保留期持续时间
以下示例创建一个保留期限为 72 小时的存储桶:
influx bucket create \
--name my-bucket \
--org {INFLUX_ORG} \
--retention 72h
要使用InfluxDB HTTP API创建一个存储桶,请向以下端点发送请求:
POST https://cloud2.influxdata.com/api/v2/buckets
在您的请求中包含以下内容:
- 头部:
- 授权:
Token方案与你的 InfluxDB API token - 内容类型:
application/json
- 授权:
- 请求主体: 包含以下字段的 JSON 对象:
* 必填- * name: 存储桶名称
- orgID: InfluxDB 组织 ID
- description: 存储桶描述
- * retentionRules: 包含以下字段的单个对象的 JSON 数组:
- type: 过期
- everySecond: 保留数据的秒数 (0表示永久)
- shardGroupDuration: 保留分片组的秒数 (0表示永久)
以下示例创建了一个保留期为 86,400 秒,即 24 小时的存储桶:
INFLUX_TOKEN=YOUR_API_TOKEN
INFLUX_ORG_ID=YOUR_ORG_ID
curl --request POST \
"http://localhost:8086/api/v2/buckets" \
--header "Authorization: Token ${INFLUX_TOKEN}" \
--header "Content-type: application/json" \
--data '{
"orgID": "'"${INFLUX_ORG_ID}"'",
"name": "iot-center",
"retentionRules": [
{
"type": "expire",
"everySeconds": 86400,
"shardGroupDurationSeconds": 0
}
]
}'
有关 InfluxDB API 选项和响应代码 的信息,请参见 InfluxDB API Buckets 参考文档.
创建一个强制显式模式的存储桶
一个具有 explicit 模式类型的存储桶强制执行 您为存储桶定义的度量模式,并拒绝不符合任何模式的写入。
使用influx CLI或InfluxDB HTTP API创建一个具有explicit schema-type的桶。
使用 influx bucket create 命令并指定 --schema-type=explicit 标志:
influx bucket create \
--name my_schema_bucket \
--schema-type explicit
使用HTTP API /api/v2/buckets 端点,并在请求体中将 schemaType 属性值设置为 explicit——例如:
POST https://cloud2.influxdata.com/api/v2/buckets
{
"orgID": "{INFLUX_ORG_ID}",
"name": "my-explicit-bucket",
"description": "My Explicit Bucket",
"rp": "string",
"retentionRules": [
{
"type": "expire",
"everySeconds": 86400,
"shardGroupDurationSeconds": 0
}
],
"schemaType": "explicit"
}
接下来,看看如何创建一个明确的桶模式来进行度量。
存储桶命名限制
桶名称必须遵循以下命名限制:
- 必须包含两个或更多字符
- 不能以下划线 (
_) 开头 - 不能包含双引号 (
")