创建唯一值缓存
使用 influxdb3 create distinct_cache 命令 来创建一个Distinct Value Cache (DVC)。提供以下信息:
数据库 (
-d,--database): (必需) 要与DVC关联的数据库名称。您也可以使用INFLUXDB3_DATABASE_NAME环境变量来指定数据库。Token (
--token): (必需) 您的 InfluxDB 3 Core 认证令牌。您也可以使用INFLUXDB3_AUTH_TOKEN环境变量来指定令牌。表 (
-t,--table): (必需) 要与DVC关联的表名称。列 (
--columns): (必需) 指定要缓存其Distinct Value的列。这些通常是标签列,但也可以是字符串字段。最大基数 (
--max-cardinality): 指定缓存中要存储的Distinct Value组合的最大数量。默认的最大基数是100000。最大年龄 (
--max-age): 以 humantime 格式指定DVC中要保留的Distinct Value的最大年龄。默认的最大年龄是24 hours。缓存名称: 缓存的唯一名称。如果您不提供,InfluxDB会自动为您生成一个缓存名称。
influxdb3 create distinct_cache \
--database DATABASE_NAME \
--token AUTH_TOKEN \
--table TABLE_NAME \
--columns COLUMNS \
--max-cardinality MAX_CARDINALITY \
--max-age MAX_AGE \
DVC_NAME使用 HTTP API
要使用HTTP API创建Distinct Value Cache,请向 /api/v3/configure/distinct_cache 端点发送一个 POST 请求。
POST /api/v3/configure/distinct_cache
curl -X POST "https://:8181/api/v3/configure/distinct_cache" \
--header "Authorization: Bearer AUTH_TOKEN" \
--json '{
"db": "DATABASE_NAME",
"table": "TABLE_NAME",
"name": "DVC_NAME",
"columns": ["COLUMNS"],
"max_cardinality": MAX_CARDINALITY,
"max_age": MAX_AGE
}'示例
curl -X POST "https://:8181/api/v3/configure/distinct_cache" \
--header "Authorization: Bearer 00xoXX0xXXx0000XxxxXx0Xx0xx0" \
--json '{
"db": "example-db",
"table": "wind_data",
"name": "windDistinctCache",
"columns": ["country", "county", "city"],
"max_cardinality": 10000,
"max_age": 86400
}'响应码
201: 成功。Distinct Cache 已创建。204: 未创建。具有此配置的Distinct Cache已存在。400: 请求无效。
API参数差异
- 列格式: API使用JSON数组 (
["country", "county", "city"]) 而不是CLI的逗号分隔格式 (country,county,city)。 - 最大年龄格式: API使用秒 (
86400) 而不是CLI的 humantime格式 (24h,1 day)。
替换以下内容:
DATABASE_NAME: 要与DVC关联的数据库名称AUTH_TOKEN: 您的 InfluxDB 3 Core 认证令牌TABLE_NAME: 要与DVC关联的表名称COLUMNS: 要缓存其Distinct Value的列的逗号分隔列表 – 例如:country,county,cityMAX_CARDINALITY: 要缓存的Distinct Value组合的最大数量 – 例如:10000MAX_AGE: 要在缓存中保留的Distinct Value的最大年龄,以 humantime 格式表示 – 例如:6h,1 day,1 weekDVC_NAME: DVC的唯一名称
缓存将从表中导入Distinct Value并开始缓存它们。
DVC大小和持久性
DVC存储在内存中,因此考虑缓存的大小和持久性很重要。有关更多信息,请参阅 关于Distinct Value Cache的要点。
此页面是否有帮助?
感谢您的反馈!
支持和反馈
感谢您成为我们社区的一员!我们欢迎并鼓励您对 InfluxDB 3 Core 和本文档提供反馈和错误报告。要获得支持,请使用以下资源
具有年度合同或支持合同的客户可以 联系 InfluxData 支持。