创建数据库
使用influxctl database create
命令在InfluxDB集群中创建数据库。
如果您还没有安装,请下载并安装
influxctl
CLI。运行
influxctl database create
命令并提供以下信息- 可选: 数据库保留期 (默认为无限)
- 可选: 数据库表(度量)限制 (默认为500)
- 可选: 数据库列限制 (默认为250)
- 可选: 在分区模板中使用的InfluxDB标签
- 可选: 在分区模板中使用的InfluxDB标签桶
- 可选: 指定分区模板中时间格式的Rust strftime日期和时间字符串,并确定分区的时间间隔 (默认为
%Y-%m-%d
) - 数据库名称 (见数据库命名限制)
InfluxDB Clustered支持分区模板中最多7个标签或标签桶。
influxctl database create \
--retention-period 30d \
--max-tables 500 \
--max-columns 250 \
--template-tag tag1 \
--template-tag tag2 \
--template-tag-bucket tag3,100 \
--template-tag-bucket tag4,300 \
--template-timeformat '%Y-%m-%d' \
DATABASE_NAME
保留期语法
使用--retention-period
标志为数据库定义特定的保留期。保留期值是一个由数值加持续时间单位组成的时间持续时间值。例如,30d
表示30天。零持续时间(0d
)保留期是无限的,数据不会过期。保留期值不能是负数或包含空格。
有效的时间单位包括
- m:分钟
- h:小时
- d:天
- w:周
- mo:月
- y:年
示例保留期值
0d
:无限/无3d
:3天6w
:6周1mo
:1个月(30天)1y
:1年30d30d
:60天2.5d
:60小时
数据库命名限制
数据库名称必须遵守以下命名限制
- 不允许包含空格、标点符号或特殊字符。仅允许字母数字、下划线(
_
)、破折号(-
)和正斜杠(/
)字符。 - 不应以下划线(
_
)开头。 - 最大长度为64个字符。
InfluxQL DBRP命名约定
在InfluxDB 1.x中,数据存储在数据库和保留策略中。在InfluxDB Clustered中,数据库和保留策略已合并为数据库,其中数据库具有保留期,但保留策略不再是数据模型的一部分。由于InfluxQL使用1.x数据模型,必须将数据库映射到v1数据库和保留策略(DBRP)才能使用InfluxQL进行查询。
当使用InfluxQL查询数据库时,请使用以下命名约定来自动将v1 DBRP组合映射到InfluxDB Clustered数据库
database_name/retention_policy_name
数据库命名示例
v1 数据库名称 | v1 保留策略名称 | 新数据库名称 |
---|---|---|
db | rp | db/rp |
telegraf | autogen | telegraf/autogen |
webmetrics | 1w-downsampled | webmetrics/1w-downsampled |
表和列限制
在InfluxDB Clustered中,可以使用--max-tables
和--max-columns
标志配置表(度量)和列限制。
表限制
默认最大表数: 500
每个度量在数据库中由一个表表示。您可以将数据库的表限制从默认的500个限制提高到更高。InfluxData有生产集群的示例,多个数据库中有20,000+个活动表。
增加您的表限制会影响您的InfluxDB集群,以下是一些方式
列限制
默认最大列数: 250
时间、字段和标签分别由表中的列表示。增加您的列限制会影响您的InfluxDB集群,以下是一些方式
自定义分区
InfluxDB 集群允许您为每个数据库定义自定义分区策略。一个 分区 是在 InfluxDB v3 存储引擎中存储的以 Apache Parquet 格式存储的数据的逻辑分组。默认情况下,数据按日分区,但根据您的模式和负载,自定义分区策略可以提高查询性能。
使用 --template-tag
、--template-tag-bucket
和 –template-timeformat
标志来定义用于生成数据库分区键的分区模板部分。有关更多信息,请参阅管理数据分区。
分区模板只能在使用时应用
您只能在创建数据库时应用分区模板。您不能在现有数据库上更新分区模板。
这个页面有帮助吗?
感谢您的反馈!