Merge branch 'master' into pbarnett/add-influxdb3-explorer-info

pbarnett/add-influxdb3-explorer-info
Scott Anderson 2025-04-15 07:16:52 -06:00 committed by GitHub
commit 3bdfd85866
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
102 changed files with 2479 additions and 361 deletions

View File

@ -120,9 +120,9 @@
}
}
&.beta {
&.new {
.product-info h3::after {
content: "beta";
content: "New";
margin-left: .5rem;
font-size: 1rem;
padding: .25em .5em .25em .4em;

View File

@ -99,6 +99,26 @@
pre { background: rgba($r-basalt, .35); }
}
&.ga-announcement {
background-image: url('/svgs/influxdb3-ga-background.svg');
background-size: cover;
a:hover { color: $br-dark-blue; }
code { color: $gr-gypsy; background: rgba($gr-gypsy, .25); }
pre { background: rgba($gr-gypsy, .25); }
h3 {font-size: 1.4rem !important;}
.notification-slug { font-size: 1.15rem;
.btn {
display: inline-block;
background: $g20-white;
color: $br-dark-blue;
padding: .5rem 1rem;
border-radius: $radius * 2;
font-size: 1rem;
}
}
}
//////////// Basic HTML element styles for notification content ////////////
h1,h2,h3,h4,h5,h6 {
@ -156,6 +176,16 @@
}
.show::before {content: "Show more"}
}
.title-tag {
padding: .15rem .45rem;
text-transform: uppercase;
font-size: .85rem;
border-radius: $radius * 2;
font-family: $code;
background: $br-dark-blue;
}
.title-tag + h3 {margin-top: .75rem;}
}
}

View File

@ -96,5 +96,4 @@ blockquote {
"blocks/tip",
"blocks/important",
"blocks/warning",
"blocks/caution",
"blocks/beta";
"blocks/caution";

View File

@ -15,27 +15,48 @@
padding-right: 2rem;
ul {
display: flex;
flex-wrap: wrap;
margin-bottom: 1.25rem;
padding: 0;
list-style: none;
li {display: inline-block}
a {
margin-right: 1.5rem;
color: $article-heading;
font-weight: $medium;
position: relative;
&::after {
content: "\e90a";
font-family: 'icomoon-v4';
font-weight: bold;
font-size: 1.3rem;
display: inline-block;
position: absolute;
@include gradient($grad-burningDusk);
background-clip: text;
-webkit-text-fill-color: transparent;
right: 0;
transform: translateX(.25rem);
opacity: 0;
transition: transform .2s, opacity .2s;
}
&:hover {
color: $article-link;
border-radius: calc($radius * 1.5);
&::after {transform: translateX(1.5rem); opacity: 1;}
}
&.discord:before {
content: url('/svgs/discord.svg');
display: inline-block;
height: 1.1rem;
width: 1.25rem;
vertical-align: top;
margin: 2px .65rem 0 0;
}
&.community:before {
content: "\e900";
color: $article-heading;
margin: 0 .5rem 0 -.25rem;
margin-right: .75rem;
font-size: 1.2rem;
font-family: 'icomoon-v2';
vertical-align: middle;
@ -46,7 +67,16 @@
height: 1.1rem;
width: 1.1rem;
vertical-align: text-top;
margin-right: .5rem;
margin-right: .8rem;
}
&.reddit:before {
content: url('/svgs/reddit.svg');
display: inline-block;
height: 1.1rem;
width: 1.2rem;
vertical-align: top;
margin: 2px .75rem 0 0;
}
}
}

View File

@ -1,105 +0,0 @@
.block.beta {
@include gradient($grad-burningDusk);
padding: 4px;
border: none;
border-radius: 25px !important;
.beta-content {
background: $article-bg;
border-radius: 21px;
padding: calc(1.65rem - 4px) calc(2rem - 4px) calc(.1rem + 4px) calc(2rem - 4px);
h4 {
color: $article-heading;
}
p {margin-bottom: 1rem;}
.expand-wrapper {
border: none;
margin: .5rem 0 1.5rem;
}
.expand {
border: none;
padding: 0;
.expand-content p {
margin-left: 2rem;
}
ul {
margin-top: -1rem;
&.feedback-channels {
padding: 0;
margin: -1rem 0 1.5rem 2rem;
list-style: none;
a {
color: $article-heading;
font-weight: $medium;
position: relative;
&.discord:before {
content: url('/svgs/discord.svg');
display: inline-block;
height: 1.1rem;
width: 1.25rem;
vertical-align: top;
margin: 2px .65rem 0 0;
}
&.community:before {
content: "\e900";
color: $article-heading;
margin: 0 .65rem 0 0;
font-size: 1.2rem;
font-family: 'icomoon-v2';
vertical-align: middle;
}
&.slack:before {
content: url('/svgs/slack.svg');
display: inline-block;
height: 1.1rem;
width: 1.1rem;
vertical-align: text-top;
margin-right: .65rem;
}
&.reddit:before {
content: url('/svgs/reddit.svg');
display: inline-block;
height: 1.1rem;
width: 1.2rem;
vertical-align: top;
margin: 2px .65rem 0 0;
}
&::after {
content: "\e90a";
font-family: 'icomoon-v4';
font-weight: bold;
font-size: 1.3rem;
display: inline-block;
position: absolute;
@include gradient($grad-burningDusk);
background-clip: text;
-webkit-text-fill-color: transparent;
right: 0;
transform: translateX(.25rem);
opacity: 0;
transition: transform .2s, opacity .2s;
}
&:hover {
&::after {transform: translateX(1.5rem); opacity: 1;}
}
}
}
}
}
}
}

View File

@ -10,6 +10,16 @@ aliases:
- /chronograf/v1/about_the_project/release-notes-changelog/
---
## v1.10.7 {date="2025-04-15"}
### Bug Fixes
- Fix Hosts page loading.
### Dependency updates
- Upgrade Go to 1.23.8.
## v1.10.6 {date="2024-12-16"}
### Bug Fixes

View File

@ -3,7 +3,7 @@ title: Create a database token
description: >
Use the [`influxctl token create` command](/influxdb3/cloud-dedicated/reference/cli/influxctl/token/create/)
or the [Management HTTP API](/influxdb3/cloud-dedicated/api/management/)
to [database token](/influxdb3/cloud-dedicated/admin/tokens/database/) for reading and writing data in your InfluxDB Cloud Dedicated cluster.
to create a [database token](/influxdb3/cloud-dedicated/admin/tokens/database/) for reading and writing data in your InfluxDB Cloud Dedicated cluster.
Provide a token description and permissions for databases.
menu:
influxdb3_cloud_dedicated:

View File

@ -2,7 +2,7 @@
title: Create a database token
description: >
Use the [`influxctl token create` command](/influxdb3/clustered/reference/cli/influxctl/token/create/)
to create a database token for reading and writing data in your InfluxDB cluster.
to create a [database token](/influxdb3/clustered/admin/tokens/database/) for reading and writing data in your InfluxDB cluster.
Provide a token description and permissions for databases.
menu:
influxdb3_clustered:

View File

@ -0,0 +1,19 @@
---
title: Manage the Distinct Value Cache
seotitle: Manage the Distinct Value Cache in {{< product-name >}}
description: >
The {{< product-name >}} Distinct Value Cache (DVC) lets you cache distinct
values of one or more columns in a table, improving the performance of
queries that return distinct tag and field values.
menu:
influxdb3_core:
parent: Administer InfluxDB
weight: 105
influxdb3/core/tags: [cache]
related:
- /influxdb3/core/reference/sql/functions/cache/#distinct_cache, distinct_cache SQL function
source: /shared/influxdb3-admin/distinct-value-cache/_index.md
---
<!-- The content for this page is located at
// SOURCE content/shared/influxdb3-admin/distinct-value-cache/_index.md -->

View File

@ -0,0 +1,48 @@
---
title: Create a Distinct Value Cache
description: |
Use the [`influxdb3 create distinct_cache` command](/influxdb3/core/reference/cli/influxdb3/create/distinct_cache/)
to create a Distinct Value Cache.
menu:
influxdb3_core:
parent: Manage the Distinct Value Cache
weight: 201
influxdb3/core/tags: [cache]
related:
- /influxdb3/core/reference/cli/influxdb3/create/distinct_cache/
list_code_example: |
{{% show-in "core" %}}
<!--pytest.mark.skip-->
```bash
influxdb3 create distinct_cache \
--database example-db \
--token 00xoXX0xXXx0000XxxxXx0Xx0xx0 \
--table wind_data \
--columns country,county,city \
--max-cardinality 10000 \
--max-age 24h \
windDistinctCache
```
{{% /show-in %}}
{{% show-in "enterprise" %}}
<!--pytest.mark.skip-->
```bash
influxdb3 create distinct_cache \
--database example-db \
--token 00xoXX0xXXx0000XxxxXx0Xx0xx0 \
--table home \
--node-spec node-01,node-02 \
--columns country,county,city \
--max-cardinality 10000 \
--max-age 24h \
windDistinctCache
```
{{% /show-in %}}
source: /shared/influxdb3-admin/distinct-value-cache/create.md
---
<!-- The content for this page is located at
// SOURCE content/shared/influxdb3-admin/distinct-value-cache/create.md -->

View File

@ -0,0 +1,27 @@
---
title: Delete a Distinct Value Cache
description: |
Use the [`influxdb3 delete distinct_cache` command](/influxdb3/core/reference/cli/influxdb3/delete/distinct_cache/)
to delete a Distinct Value Cache.
menu:
influxdb3_core:
parent: Manage the Distinct Value Cache
weight: 204
influxdb3/core/tags: [cache]
list_code_example: |
<!--pytest.mark.skip-->
```bash
influxdb3 delete distinct_cache \
--database example-db \
--token 00xoXX0xXXx0000XxxxXx0Xx0xx0 \
--table wind_data \
windDistinctCache
```
related:
- /influxdb3/core/reference/cli/influxdb3/delete/distinct_cache/
source: /shared/influxdb3-admin/distinct-value-cache/delete.md
---
<!-- The content for this page is located at
// SOURCE content/shared/influxdb3-admin/distinct-value-cache/delete.md -->

View File

@ -0,0 +1,26 @@
---
title: Query a Distinct Value Cache
description: |
Use the [`distinct_cache()` SQL function](/influxdb3/core/reference/sql/functions/cache/#distinct_cache)
in the `FROM` clause of an SQL `SELECT` statement to query data from the
Distinct Value Cache.
menu:
influxdb3_core:
parent: Manage the Distinct Value Cache
weight: 202
influxdb3/core/tags: [cache]
list_code_example: |
```sql
SELECT * FROM distinct_cache('table-name', 'cache-name')
```
> [!Important]
> You must use SQL to query the DVC.
> InfluxQL does not support the `distinct_cache()` function.
related:
- /influxdb3/core/reference/sql/functions/cache/#distinct_cache, distinct_cache SQL function
source: /shared/influxdb3-admin/distinct-value-cache/query.md
---
<!-- The content for this page is located at
// SOURCE content/shared/influxdb3-admin/distinct-value-cache/query.md -->

View File

@ -0,0 +1,25 @@
---
title: Show information about Distinct Value Caches
description: |
Use the `influxdb3 show system table` command to query and output Distinct Value
Cache information from the `distinct_caches` system table.
menu:
influxdb3_core:
parent: Manage the Distinct Value Cache
name: Show Distinct Value Caches
weight: 203
influxdb3/core/tags: [cache]
list_code_example: |
<!-- pytest.mark.skip -->
```bash
influxdb3 show system \
--database example-db \
--token 00xoXX0xXXx0000XxxxXx0Xx0xx0 \
table distinct_caches
```
source: /shared/influxdb3-admin/distinct-value-cache/show.md
---
<!-- The content for this page is located at
// SOURCE content/shared/influxdb3-admin/distinct-value-cache/show.md -->

View File

@ -0,0 +1,20 @@
---
title: Manage the Last Value Cache
seotitle: Manage the Last Value Cache in {{< product-name >}}
description: >
The {{< product-name >}} Last Value Cache (LVC) lets you cache the most
recent values for specific fields in a table, improving the performance of
queries that return the most recent value of a field for specific time series
or the last N values of a field.
menu:
influxdb3_core:
parent: Administer InfluxDB
weight: 104
influxdb3/core/tags: [cache]
related:
- /influxdb3/core/reference/sql/functions/cache/#last_cache, last_cache SQL function
source: /shared/influxdb3-admin/last-value-cache/_index.md
---
<!-- The content for this page is located at
// SOURCE content/shared/influxdb3-admin/last-value-cache/_index.md -->

View File

@ -0,0 +1,50 @@
---
title: Create a Last Value Cache
description: |
Use the [`influxdb3 create last_cache` command](/influxdb3/core/reference/cli/influxdb3/create/last_cache/)
to create a Last Value Cache.
menu:
influxdb3_core:
parent: Manage the Last Value Cache
weight: 201
influxdb3/core/tags: [cache]
related:
- /influxdb3/core/reference/cli/influxdb3/create/last_cache/
list_code_example: |
{{% show-in "core" %}}
<!--pytest.mark.skip-->
```bash
influxdb3 create last_cache \
--database example-db \
--token 00xoXX0xXXx0000XxxxXx0Xx0xx0 \
--table home \
--key-columns room,wall \
--value-columns temp,hum,co \
--count 5 \
--ttl 30mins \
homeLastCache
```
{{% /show-in %}}
{{% show-in "enterprise" %}}
<!--pytest.mark.skip-->
```bash
influxdb3 create last_cache \
--database example-db \
--token 00xoXX0xXXx0000XxxxXx0Xx0xx0 \
--table home \
--node-spec node-01,node-02 \
--key-columns room,wall \
--value-columns temp,hum,co \
--count 5 \
--ttl 30mins \
homeLastCache
```
{{% /show-in %}}
source: /shared/influxdb3-admin/last-value-cache/create.md
---
<!-- The content for this page is located at
// SOURCE content/shared/influxdb3-admin/last-value-cache/create.md -->

View File

@ -0,0 +1,27 @@
---
title: Delete a Last Value Cache
description: |
Use the [`influxdb3 delete last_cache` command](/influxdb3/core/reference/cli/influxdb3/delete/last_cache/)
to delete a Last Value Cache.
menu:
influxdb3_core:
parent: Manage the Last Value Cache
weight: 204
influxdb3/core/tags: [cache]
list_code_example: |
<!--pytest.mark.skip-->
```bash
influxdb3 delete last_cache \
--database example-db \
--token 00xoXX0xXXx0000XxxxXx0Xx0xx0 \
--table home \
homeLastCache
```
related:
- /influxdb3/core/reference/cli/influxdb3/delete/last_cache/
source: /shared/influxdb3-admin/last-value-cache/delete.md
---
<!-- The content for this page is located at
// SOURCE content/shared/influxdb3-admin/last-value-cache/delete.md -->

View File

@ -0,0 +1,26 @@
---
title: Query a Last Value Cache
description: |
Use the [`last_cache()` SQL function](/influxdb3/core/reference/sql/functions/cache/#last_cache)
in the `FROM` clause of an SQL `SELECT` statement to query data from the
Last Value Cache.
menu:
influxdb3_core:
parent: Manage the Last Value Cache
weight: 202
influxdb3/core/tags: [cache]
list_code_example: |
```sql
SELECT * FROM last_cache('table-name', 'cache-name')
```
> [!Important]
> You must use SQL to query the LVC.
> InfluxQL does not support the `last_cache()` function.
related:
- /influxdb3/core/reference/sql/functions/cache/#last_cache, last_cache SQL function
source: /shared/influxdb3-admin/last-value-cache/query.md
---
<!-- The content for this page is located at
// SOURCE content/shared/influxdb3-admin/last-value-cache/query.md -->

View File

@ -0,0 +1,25 @@
---
title: Show information about Last Value Caches
description: |
Use the `influxdb3 show system table` command to query and output Last Value
Cache information from the `last_caches` system table.
menu:
influxdb3_core:
parent: Manage the Last Value Cache
name: Show Last Value Caches
weight: 203
influxdb3/core/tags: [cache]
list_code_example: |
<!-- pytest.mark.skip -->
```bash
influxdb3 show system \
--database example-db \
--token 00xoXX0xXXx0000XxxxXx0Xx0xx0 \
table last_caches
```
source: /shared/influxdb3-admin/last-value-cache/show.md
---
<!-- The content for this page is located at
// SOURCE content/shared/influxdb3-admin/last-value-cache/show.md -->

View File

@ -9,7 +9,7 @@ menu:
influxdb3_core:
name: Query system data
parent: Administer InfluxDB
weight: 3
weight: 110
influxdb3/core/tags: [query, api, system information, schemas]
related:
- /influxdb3/core/query-data/sql/

View File

@ -0,0 +1,17 @@
---
title: Manage tokens
description: >
InfluxDB 3 uses tokens to authenticate and authorize access to resources and data stored in {{< product-name >}}.
Use the `influxdb3` CLI or `/api/v3` HTTP API to manage tokens
for your {{% product-name %}} instance.
menu:
influxdb3_core:
parent: Administer InfluxDB
weight: 202
---
InfluxDB 3 uses tokens to authenticate and authorize access to resources and data stored in {{< product-name >}}.
Use the `influxdb3` CLI or `/api/v3` HTTP API to manage tokens
for your {{% product-name %}} instance.
{{< children hlevel="h2" readmore=true hr=true >}}

View File

@ -0,0 +1,19 @@
---
title: Manage admin tokens
seotitle: Manage admin tokens in {{< product-name >}}
description: >
Manage admin tokens in your {{< product-name >}} instance.
An admin token grants
access to all actions (CLI commands and API endpoints) for the server.
menu:
influxdb3_core:
parent: Manage tokens
name: Admin tokens
weight: 101
influxdb3/core/tags: [tokens]
source: /shared/influxdb3-admin/tokens/_index.md
---
<!-- The content for this page is at
// SOURCE content/shared/influxdb3-admin/tokens/_index.md
-->

View File

@ -0,0 +1,25 @@
---
title: Create an admin token
description: >
Use the [`influxdb3 create token --admin` command](/influxdb3/core/reference/cli/influxdb3/create/token/)
or the [HTTP API](/influxdb3/core/api/v3/)
to create an [admin token](/influxdb3/core/admin/tokens/admin/) for your {{< product-name omit="Clustered" >}} instance.
An admin token grants access to all actions on the server.
menu:
influxdb3_core:
parent: Admin tokens
weight: 201
list_code_example: |
##### CLI
```bash
influxdb3 create token --admin
```
alt_links:
cloud-dedicated: /influxdb3/cloud-dedicated/admin/tokens/create-token/
cloud-serverless: /influxdb3/cloud-serverless/admin/tokens/create-token/
source: /shared/influxdb3-admin/tokens/admin/create.md
---
<!-- The content for this page is at
// SOURCE content/shared/influxdb3-admin/tokens/admin/create.md
-->

View File

@ -0,0 +1,21 @@
---
title: List an admin token
description: >
Use the `influxdb3 show tokens` command
to list the [admin token](/influxdb3/enterprise/admin/tokens/admin/) for your {{< product-name omit="Clustered" >}} instance.
An admin token grants access to all actions on the server.
menu:
influxdb3_core:
parent: Admin tokens
weight: 201
list_code_example: |
##### CLI
```bash
influxdb3 show tokens
```
source: /shared/influxdb3-admin/tokens/admin/list.md
---
<!-- The content for this page is at
// SOURCE content/shared/influxdb3-admin/tokens/admin/list.md
-->

View File

@ -0,0 +1,25 @@
---
title: Regenerate an admin token
description: >
Use the [`influxdb3 create token --admin` command](/influxdb3/core/reference/cli/influxdb3/create/token/)
or the [HTTP API](/influxdb3/core/api/v3/)
to regenerate an [admin token](/influxdb3/core/admin/tokens/admin/) for your {{< product-name omit="Clustered" >}} instance.
An admin token grants access to all actions on the server.
Regenerating an admin token deactivates the previous token.
menu:
influxdb3_core:
parent: Admin tokens
weight: 201
list_code_example: |
##### CLI
```bash
influxdb3 create token --admin \
--token ADMIN_TOKEN \
--regenerate
```
source: /shared/influxdb3-admin/tokens/admin/regenerate.md
---
<!-- The content for this page is at
// SOURCE content/shared/influxdb3-admin/tokens/admin/create.md
-->

View File

@ -39,7 +39,7 @@ influxdb3 [GLOBAL-OPTIONS] [COMMAND]
| Option | | Description |
| :----- | :------------------------------------ | :------------------------------------------------------------------------------------------------ |
| | `--num-threads` | Maximum number of IO runtime threads to use |
| | `--io-runtime-type` | IO tokio runtime type (`current-thread`, `multi-thread` _(default)_, or `multi-thread-alt`) |
| | `--io-runtime-type` | IO tokio runtime type (`current-thread`, `multi-thread` _(default)_, or `multi-thread-alt`) |
| | `--io-runtime-disable-lifo-slot` | Disable LIFO slot of IO runtime |
| | `--io-runtime-event-interval` | Number of scheduler ticks after which the IOtokio runtime scheduler will poll for external events |
| | `--io-runtime-global-queue-interval` | Number of scheduler ticks after which the IO runtime scheduler will poll the global task queue |
@ -48,6 +48,7 @@ influxdb3 [GLOBAL-OPTIONS] [COMMAND]
| | `--io-runtime-thread-keep-alive` | Custom timeout for a thread in the blocking pool of the tokio IO runtime |
| | `--io-runtime-thread-priority` | Set thread priority tokio IO runtime workers |
| `-h` | `--help` | Print help information |
| | `--help-all` | Print detailed help information |
| `-V` | `--version` | Print version |
### Option environment variables

View File

@ -55,6 +55,7 @@ influxdb3 serve [OPTIONS] --node-id <HOST_IDENTIFIER_PREFIX>
| | `--object-store-retry-timeout` | _See [configuration options](/influxdb3/core/reference/config-options/#object-store-retry-timeout)_ |
| | `--object-store-cache-endpoint` | _See [configuration options](/influxdb3/core/reference/config-options/#object-store-cache-endpoint)_ |
| `-h` | `--help` | Print help information |
| | `--help-all` | Print detailed help information |
| | `--log-filter` | _See [configuration options](/influxdb3/core/reference/config-options/#log-filter)_ |
| `-v` | `--verbose` | Enable verbose output |
| | `--log-destination` | _See [configuration options](/influxdb3/core/reference/config-options/#log-destination)_ |
@ -90,7 +91,7 @@ influxdb3 serve [OPTIONS] --node-id <HOST_IDENTIFIER_PREFIX>
| | `--wal-max-write-buffer-size` | _See [configuration options](/influxdb3/core/reference/config-options/#wal-max-write-buffer-size)_ |
| | `--snapshotted-wal-files-to-keep` | _See [configuration options](/influxdb3/core/reference/config-options/#snapshotted-wal-files-to-keep)_ |
| | `--query-log-size` | _See [configuration options](/influxdb3/core/reference/config-options/#query-log-size)_ |
| | `--parquet-mem-cache-size` | _See [configuration options](/influxdb3/core/reference/config-options/#parquet-mem-cache-size)_ |
| | `--parquet-mem-cache-size` | _See [configuration options](/influxdb3/core/reference/config-options/#parquet-mem-cache-size)_ |
| | `--parquet-mem-cache-prune-percentage` | _See [configuration options](/influxdb3/core/reference/config-options/#parquet-mem-cache-prune-percentage)_ |
| | `--parquet-mem-cache-prune-interval` | _See [configuration options](/influxdb3/core/reference/config-options/#parquet-mem-cache-prune-interval)_ |
| | `--disable-parquet-mem-cache` | _See [configuration options](/influxdb3/core/reference/config-options/#disable-parquet-mem-cache)_ |

View File

@ -0,0 +1,19 @@
---
title: Manage the Distinct Value Cache
seotitle: Manage the Distinct Value Cache in {{< product-name >}}
description: >
The {{< product-name >}} Distinct Value Cache (DVC) lets you cache distinct
values of one or more columns in a table, improving the performance of
queries that return distinct tag and field values.
menu:
influxdb3_enterprise:
parent: Administer InfluxDB
weight: 105
influxdb3/enterprise/tags: [cache]
related:
- /influxdb3/enterprise/reference/sql/functions/cache/#distinct_cache, distinct_cache SQL function
source: /shared/influxdb3-admin/distinct-value-cache/_index.md
---
<!-- The content for this page is located at
// SOURCE content/shared/influxdb3-admin/distinct-value-cache/_index.md -->

View File

@ -0,0 +1,48 @@
---
title: Create a Distinct Value Cache
description: |
Use the [`influxdb3 create distinct_cache` command](/influxdb3/enterprise/reference/cli/influxdb3/create/distinct_cache/)
to create a Distinct Value Cache.
menu:
influxdb3_enterprise:
parent: Manage the Distinct Value Cache
weight: 201
influxdb3/enterprise/tags: [cache]
related:
- /influxdb3/enterprise/reference/cli/influxdb3/create/distinct_cache/
list_code_example: |
{{% show-in "core" %}}
<!--pytest.mark.skip-->
```bash
influxdb3 create distinct_cache \
--database example-db \
--token 00xoXX0xXXx0000XxxxXx0Xx0xx0 \
--table wind_data \
--columns country,county,city \
--max-cardinality 10000 \
--max-age 24h \
windDistinctCache
```
{{% /show-in %}}
{{% show-in "enterprise" %}}
<!--pytest.mark.skip-->
```bash
influxdb3 create distinct_cache \
--database example-db \
--token 00xoXX0xXXx0000XxxxXx0Xx0xx0 \
--table home \
--node-spec node-01,node-02 \
--columns country,county,city \
--max-cardinality 10000 \
--max-age 24h \
windDistinctCache
```
{{% /show-in %}}
source: /shared/influxdb3-admin/distinct-value-cache/create.md
---
<!-- The content for this page is located at
// SOURCE content/shared/influxdb3-admin/distinct-value-cache/create.md -->

View File

@ -0,0 +1,27 @@
---
title: Delete a Distinct Value Cache
description: |
Use the [`influxdb3 delete distinct_cache` command](/influxdb3/enterprise/reference/cli/influxdb3/delete/distinct_cache/)
to delete a Distinct Value Cache.
menu:
influxdb3_enterprise:
parent: Manage the Distinct Value Cache
weight: 204
influxdb3/enterprise/tags: [cache]
list_code_example: |
<!--pytest.mark.skip-->
```bash
influxdb3 delete distinct_cache \
--database example-db \
--token 00xoXX0xXXx0000XxxxXx0Xx0xx0 \
--table wind_data \
windDistinctCache
```
related:
- /influxdb3/enterprise/reference/cli/influxdb3/delete/distinct_cache/
source: /shared/influxdb3-admin/distinct-value-cache/delete.md
---
<!-- The content for this page is located at
// SOURCE content/shared/influxdb3-admin/distinct-value-cache/delete.md -->

View File

@ -0,0 +1,26 @@
---
title: Query a Distinct Value Cache
description: |
Use the [`distinct_cache()` SQL function](/influxdb3/enterprise/reference/sql/functions/cache/#distinct_cache)
in the `FROM` clause of an SQL `SELECT` statement to query data from the
Distinct Value Cache.
menu:
influxdb3_enterprise:
parent: Manage the Distinct Value Cache
weight: 202
influxdb3/enterprise/tags: [cache]
list_code_example: |
```sql
SELECT * FROM distinct_cache('table-name', 'cache-name')
```
> [!Important]
> You must use SQL to query the DVC.
> InfluxQL does not support the `distinct_cache()` function.
related:
- /influxdb3/enterprise/reference/sql/functions/cache/#distinct_cache, distinct_cache SQL function
source: /shared/influxdb3-admin/distinct-value-cache/query.md
---
<!-- The content for this page is located at
// SOURCE content/shared/influxdb3-admin/distinct-value-cache/query.md -->

View File

@ -0,0 +1,25 @@
---
title: Show information about Distinct Value Caches
description: |
Use the `influxdb3 show system table` command to query and output Distinct Value
Cache information from the `distinct_caches` system table.
menu:
influxdb3_enterprise:
parent: Manage the Distinct Value Cache
name: Show Distinct Value Caches
weight: 203
influxdb3/enterprise/tags: [cache]
list_code_example: |
<!-- pytest.mark.skip -->
```bash
influxdb3 show system \
--database example-db \
--token 00xoXX0xXXx0000XxxxXx0Xx0xx0 \
table distinct_caches
```
source: /shared/influxdb3-admin/distinct-value-cache/show.md
---
<!-- The content for this page is located at
// SOURCE content/shared/influxdb3-admin/distinct-value-cache/show.md -->

View File

@ -0,0 +1,20 @@
---
title: Manage the Last Value Cache
seotitle: Manage the Last Value Cache in {{< product-name >}}
description: >
The {{< product-name >}} Last Value Cache (LVC) lets you cache the most
recent values for specific fields in a table, improving the performance of
queries that return the most recent value of a field for specific time series
or the last N values of a field.
menu:
influxdb3_enterprise:
parent: Administer InfluxDB
weight: 104
influxdb3/enterprise/tags: [cache]
related:
- /influxdb3/enterprise/reference/sql/functions/cache/#last_cache, last_cache SQL function
source: /shared/influxdb3-admin/last-value-cache/_index.md
---
<!-- The content for this page is located at
// SOURCE content/shared/influxdb3-admin/last-value-cache/_index.md -->

View File

@ -0,0 +1,50 @@
---
title: Create a Last Value Cache
description: |
Use the [`influxdb3 create last_cache` command](/influxdb3/enterprise/reference/cli/influxdb3/create/last_cache/)
to create a Last Value Cache.
menu:
influxdb3_enterprise:
parent: Manage the Last Value Cache
weight: 201
influxdb3/enterprise/tags: [cache]
related:
- /influxdb3/enterprise/reference/cli/influxdb3/create/last_cache/
list_code_example: |
{{% show-in "core" %}}
<!--pytest.mark.skip-->
```bash
influxdb3 create last_cache \
--database example-db \
--token 00xoXX0xXXx0000XxxxXx0Xx0xx0 \
--table home \
--key-columns room,wall \
--value-columns temp,hum,co \
--count 5 \
--ttl 30mins \
homeLastCache
```
{{% /show-in %}}
{{% show-in "enterprise" %}}
<!--pytest.mark.skip-->
```bash
influxdb3 create last_cache \
--database example-db \
--token 00xoXX0xXXx0000XxxxXx0Xx0xx0 \
--table home \
--node-spec node-01,node-02 \
--key-columns room,wall \
--value-columns temp,hum,co \
--count 5 \
--ttl 30mins \
homeLastCache
```
{{% /show-in %}}
source: /shared/influxdb3-admin/last-value-cache/create.md
---
<!-- The content for this page is located at
// SOURCE content/shared/influxdb3-admin/last-value-cache/create.md -->

View File

@ -0,0 +1,27 @@
---
title: Delete a Last Value Cache
description: |
Use the [`influxdb3 delete last_cache` command](/influxdb3/enterprise/reference/cli/influxdb3/delete/last_cache/)
to delete a Last Value Cache.
menu:
influxdb3_enterprise:
parent: Manage the Last Value Cache
weight: 204
influxdb3/enterprise/tags: [cache]
list_code_example: |
<!--pytest.mark.skip-->
```bash
influxdb3 delete last_cache \
--database example-db \
--token 00xoXX0xXXx0000XxxxXx0Xx0xx0 \
--table home \
homeLastCache
```
related:
- /influxdb3/enterprise/reference/cli/influxdb3/delete/last_cache/
source: /shared/influxdb3-admin/last-value-cache/delete.md
---
<!-- The content for this page is located at
// SOURCE content/shared/influxdb3-admin/last-value-cache/delete.md -->

View File

@ -0,0 +1,26 @@
---
title: Query a Last Value Cache
description: |
Use the [`last_cache()` SQL function](/influxdb3/enterprise/reference/sql/functions/cache/#last_cache)
in the `FROM` clause of an SQL `SELECT` statement to query data from the
Last Value Cache.
menu:
influxdb3_enterprise:
parent: Manage the Last Value Cache
weight: 202
influxdb3/enterprise/tags: [cache]
list_code_example: |
```sql
SELECT * FROM last_cache('table-name', 'cache-name')
```
> [!Important]
> You must use SQL to query the LVC.
> InfluxQL does not support the `last_cache()` function.
related:
- /influxdb3/enterprise/reference/sql/functions/cache/#last_cache, last_cache SQL function
source: /shared/influxdb3-admin/last-value-cache/query.md
---
<!-- The content for this page is located at
// SOURCE content/shared/influxdb3-admin/last-value-cache/query.md -->

View File

@ -0,0 +1,25 @@
---
title: Show information about Last Value Caches
description: |
Use the `influxdb3 show system table` command to query and output Last Value
Cache information from the `last_caches` system table.
menu:
influxdb3_enterprise:
parent: Manage the Last Value Cache
name: Show Last Value Caches
weight: 203
influxdb3/enterprise/tags: [cache]
list_code_example: |
<!-- pytest.mark.skip -->
```bash
influxdb3 show system \
--database example-db \
--token 00xoXX0xXXx0000XxxxXx0Xx0xx0 \
table last_caches
```
source: /shared/influxdb3-admin/last-value-cache/show.md
---
<!-- The content for this page is located at
// SOURCE content/shared/influxdb3-admin/last-value-cache/show.md -->

View File

@ -0,0 +1,148 @@
---
title: Manage your InfluxDB 3 Enterprise license
description: >
{{< product-name >}} licenses authorize the use of the {{< product-name >}}
software. Learn how licenses work, how to activate and renew licenses, and more.
menu:
influxdb3_enterprise:
name: Manage your license
parent: Administer InfluxDB
weight: 101
---
{{< product-name >}} licenses authorize the use of the {{< product-name >}}
software and apply to a single cluster. Licenses are primarily based on the
number of CPUs InfluxDB can use, but there are other limitations depending on
the license type. The following {{< product-name >}} license types are available:
- **Trial**: 30-day trial license with full access to {{< product-name >}} capabilities.
- **At-Home**: For at-home hobbyist use with limited access to {{< product-name >}} capabilities.
- **Commercial**: Commercial license with full access to {{< product-name >}} capabilities.
#### License feature comparison
| Features | Trial | At-Home | Commercial |
| :------------- | :-----------------------: | :-----: | :-----------------------: |
| CPU Core Limit | 256 | 2 | _Per contract_ |
| Expiration | 30 days | _Never_ | _Per contract_ |
| Multi-node | {{% icon "check" "v2" %}} | | {{% icon "check" "v2" %}} |
| Commercial use | {{% icon "check" "v2" %}} | | {{% icon "check" "v2" %}} |
{{% caption %}}
All other {{< product-name >}} features are available to all licenses.
{{% /caption %}}
## CPU limit
Each {{< product-name >}} license limits the number of CPUs InfluxDB can use.
The CPU limit is per cluster, not per machine. A cluster may consist of
multiple nodes that share the available CPU limit.
For example, you can purchase a 32-CPU Commercial license and set up an
{{< product-name >}} cluster with the following:
- 3 × writer nodes, each with 4 CPUs (12 total)
- 1 × compactor node with 8 CPUs
- 3 × query nodes, each with 4 CPUs (12 total)
With the {{< product-name >}} Commercial license, CPU cores are purchased in
batches of 8, 16, 32, 64, or 128 cores.
### CPU accounting
CPU cores are determined by whatever the operating system of the host machine
reports as its core count. {{< product-name >}} does not differentiate between
physical and virtual CPU cores.
> [!Note]
> If using Linux, InfluxDB uses whatever cgroup CPU accounting is active--for
> example: `cpuset` or `cpu.shares`.
## Activate a license
Each {{< product-name >}} license must be activated, but the process of activating
the license depends on the license type:
- [Activate a Trial or At-Home license](#activate-a-trial-or-at-home-license)
- [Activate a Commercial license](#activate-a-commercial-license)
### Activate a Trial or At-Home license
When starting the {{< product-name >}} server, it will ask you what type of
license you would like to use. Select `trial` or `home` and provide your
email address. The server auto-generates and stores your license.
### Activate a Commercial license
1. [Contact InfluxData Sales](https://influxdata.com/contact-sales/) to obtain
an {{< product-name >}} Commercial license. Provide the following:
- Cluster UUID
- Object Store Info
> [!Note]
> This information is provided in the output of the {{< product-name >}}
> server if you try to start the server without a valid license.
InfluxData will provide you with a Commercial license file.
2. Provide the following when starting the {{< product-name >}} server:
- **License email**: The email address associated with your Commercial license.
Use either the `--license-email` option or set the
`INFLUXDB3_ENTERPRISE_LICENSE_EMAIL` environment variable.
- **License file**: The file path of the provided Commercial license file.
Use either the `--license-file` option or set the
`INFLUXDB3_ENTERPRISE_LICENSE_FILE` environment variable.
{{< code-tabs-wrapper >}}
{{% code-tabs %}}
[influxdb3 options](#)
[Environment variables](#)
{{% /code-tabs %}}
{{% code-tab-content %}}
<!------------------------ BEGIN INFLUXDB3 CLI OPTIONS ------------------------>
<!-- pytest.mark.skip -->
```bash
influxdb3 serve \
--cluster-id cluster01 \
--node-id node01 \
--license-email example@email.com \
--license-file /path/to/license-file.jwt \
# ...
```
<!------------------------- END INFLUXDB3 CLI OPTIONS ------------------------->
{{% /code-tab-content %}}
{{% code-tab-content %}}
<!------------------------ BEGIN ENVIRONMENT VARIABLES ------------------------>
<!-- pytest.mark.skip -->
```bash
INFLUXDB3_ENTERPRISE_LICENSE_EMAIL=example@email.com
INFLUXDB3_ENTERPRISE_LICENSE_FILE=/path/to/license-file.jwt
influxdb3 serve \
--cluster-id cluster01 \
--node-id node01 \
# ...
```
<!------------------------- END ENVIRONMENT VARIABLES ------------------------->
{{% /code-tab-content %}}
{{< /code-tabs-wrapper >}}
## Renew a license
To renew an {{< product-name >}} Commercial license, contact
[InfluxData Sales](https://influxdata.com/contact-sales/).
## Expiration behavior
When your {{< product-name >}} license expires, the following occurs:
- Write requests continue to be accepted and processed.
- Compactions continue to optimize persisted data.
- Query requests return an error.
- If the {{< product-name >}} server stops, it will not restart without a valid,
non-expired license.

View File

@ -9,7 +9,7 @@ menu:
influxdb3_enterprise:
name: Query system data
parent: Administer InfluxDB
weight: 3
weight: 110
influxdb3/enterprise/tags: [query, api, system information, schemas]
related:
- /influxdb3/enterprise/query-data/sql/

View File

@ -0,0 +1,17 @@
---
title: Manage tokens
description: >
InfluxDB 3 uses tokens to authenticate and authorize access to resources and data stored in your {{< product-name >}}.
Use the `influxdb3` CLI or `/api/v3` HTTP API to manage tokens
for your {{% product-name %}} instance.
menu:
influxdb3_enterprise:
parent: Administer InfluxDB
weight: 202
---
InfluxDB 3 uses tokens to authenticate and authorize access to resources and data stored in your {{< product-name >}}.
Use the `influxdb3` CLI or `/api/v3` HTTP API to manage tokens
for your {{% product-name %}} instance.
{{< children hlevel="h2" readmore=true hr=true >}}

View File

@ -0,0 +1,19 @@
---
title: Manage admin tokens
seotitle: Manage admin tokens in {{< product-name >}}
description: >
Manage admin tokens in your {{< product-name >}} instance.
An admin token grants
access to all actions (CLI commands and API endpoints) for the server.
menu:
influxdb3_enterprise:
parent: Manage tokens
name: Admin tokens
weight: 101
influxdb3/enterprise/tags: [tokens]
source: /shared/influxdb3-admin/tokens/admin/_index.md
---
<!-- The content for this page is at
// SOURCE content/shared/influxdb3-admin/tokens/admin/_index.md
-->

View File

@ -0,0 +1,25 @@
---
title: Create an admin token
description: >
Use the [`influxdb3 create token --admin` command](/influxdb3/enterprise/reference/cli/influxdb3/create/token/)
or the [HTTP API](/influxdb3/enterprise/api/v3/)
to create an [admin token](/influxdb3/enterprise/admin/tokens/admin/) for your {{< product-name omit="Clustered" >}} instance.
An admin token grants access to all actions on the server.
menu:
influxdb3_enterprise:
parent: Admin tokens
weight: 201
list_code_example: |
##### CLI
```bash
influxdb3 create token --admin
```
alt_links:
cloud-dedicated: /influxdb3/cloud-dedicated/admin/tokens/create-token/
cloud-serverless: /influxdb3/cloud-serverless/admin/tokens/create-token/
source: /shared/influxdb3-admin/tokens/admin/create.md
---
<!-- The content for this page is at
// SOURCE content/shared/influxdb3-admin/tokens/admin/create.md
-->

View File

@ -0,0 +1,21 @@
---
title: List an admin token
description: >
Use the `influxdb3 show tokens` command
to list the [admin token](/influxdb3/enterprise/admin/tokens/admin/) for your {{< product-name omit="Clustered" >}} instance.
An admin token grants access to all actions on the server.
menu:
influxdb3_enterprise:
parent: Admin tokens
weight: 201
list_code_example: |
##### CLI
```bash
influxdb3 show tokens
```
source: /shared/influxdb3-admin/tokens/admin/list.md
---
<!-- The content for this page is at
// SOURCE content/shared/influxdb3-admin/tokens/admin/list.md
-->

View File

@ -0,0 +1,25 @@
---
title: Regenerate an admin token
description: >
Use the [`influxdb3 create token --admin` command](/influxdb3/enterprise/reference/cli/influxdb3/create/token/)
or the [HTTP API](/influxdb3/enterprise/api/v3/)
to regenerate an [admin token](/influxdb3/enterprise/admin/tokens/admin/) for your {{< product-name omit="Clustered" >}} instance.
An admin token grants access to all actions on the server.
Regenerating an admin token deactivates the previous token.
menu:
influxdb3_enterprise:
parent: Admin tokens
weight: 201
list_code_example: |
##### CLI
```bash
influxdb3 create token --admin \
--token ADMIN_TOKEN \
--regenerate
```
source: /shared/influxdb3-admin/tokens/admin/regenerate.md
---
<!-- The content for this page is at
// SOURCE content/shared/influxdb3-admin/tokens/admin/create.md
-->

View File

@ -0,0 +1,36 @@
---
title: List database tokens
description: >
Use the `influxdb3 show tokens` command
to list database tokens in your InfluxDB 3 Enterprise instance.
menu:
influxdb3_enterprise:
parent: Database tokens
weight: 202
list_code_example: |
##### CLI
```bash
influxdb3 show tokens \
--token ADMIN_TOKEN
--host http://{{< influxdb/host >}}
```
##### API
```bash
curl \
--location "http://{{< influxdb/host >}}/api/v3/configure/tokens" \
--header "Accept: application/json" \
--header "Authorization: Bearer ADMIN_TOKEN"
```
aliases:
- /influxdb3/enterprise/admin/tokens/list/
related:
- /influxdb3/enterprise/reference/cli/influxdb3/token/list/
- /influxdb3/enterprise/reference/api/
source: /shared/influxdb3-admin/tokens/database/list.md
---
<!-- The content for this page is at
// file://content/shared/influxdb3-admin/tokens/database/list.md
-->

View File

@ -39,7 +39,7 @@ influxdb3 [GLOBAL-OPTIONS] [COMMAND]
| Option | | Description |
| :----- | :------------------------------------ | :------------------------------------------------------------------------------------------------ |
| | `--num-threads` | Maximum number of IO runtime threads to use |
| | `--io-runtime-type` | IO tokio runtime type (`current-thread`, `multi-thread` _(default)_, or `multi-thread-alt`) |
| | `--io-runtime-type` | IO tokio runtime type (`current-thread`, `multi-thread` _(default)_, or `multi-thread-alt`) |
| | `--io-runtime-disable-lifo-slot` | Disable LIFO slot of IO runtime |
| | `--io-runtime-event-interval` | Number of scheduler ticks after which the IOtokio runtime scheduler will poll for external events |
| | `--io-runtime-global-queue-interval` | Number of scheduler ticks after which the IO runtime scheduler will poll the global task queue |
@ -48,6 +48,7 @@ influxdb3 [GLOBAL-OPTIONS] [COMMAND]
| | `--io-runtime-thread-keep-alive` | Custom timeout for a thread in the blocking pool of the tokio IO runtime |
| | `--io-runtime-thread-priority` | Set thread priority tokio IO runtime workers |
| `-h` | `--help` | Print help information |
| | `--help-all` | Print detailed help information |
| `-V` | `--version` | Print version |
### Option environment variables

View File

@ -59,6 +59,7 @@ influxdb3 serve [OPTIONS] \
| | `--object-store-max-retries` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#object-store-max-retries)_ |
| | `--object-store-retry-timeout` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#object-store-retry-timeout)_ |
| `-h` | `--help` | Print help information |
| | `--help-all` | Print detailed help information |
| | `--object-store-cache-endpoint` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#object-store-cache-endpoint)_ |
| | `--log-filter` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#log-filter)_ |
| `-v` | `--verbose` | Enable verbose output |

View File

@ -0,0 +1,106 @@
The {{< product-name >}} Distinct Value Cache (DVC) lets you cache distinct
values of one or more columns in a table, improving the performance of
queries that return distinct tag and field values.
The DVC is an in-memory cache that stores distinct values for specific columns
in a table. When you create an DVC, you can specify what columns' distinct
values to cache, the maximum number of distinct value combinations to cache, and
the maximum age of cached values. A DVC is associated with a table, which can
have multiple DVCs.
{{< children type="anchored-list" >}}
- [Important things to know about the Distinct Value Cache](#important-things-to-know-about-the-distinct-value-cache)
- [High cardinality limits](#high-cardinality-limits)
{{% show-in "core" %}}
- [Distinct Value Caches are flushed when the server stops](#distinct-value-caches-are-flushed-when-the-server-stops)
{{% /show-in %}}
{{% show-in "enterprise" %}}
- [Distinct Value Caches are rebuilt on restart](#distinct-value-caches-are-rebuilt-on-restart)
{{% /show-in %}}
Consider a dataset with the following schema:
- wind_data (table)
- tags:
- country
- _multiple European countries_
- county
- _multiple European counties_
- city
- _multiple European cities_
- fields:
- wind_speed (float)
- wind_direction (integer)
If you cache distinct values for `country`, `county`, and `city`, the DVC looks
similar to this:
| country | county | city |
| :------------- | :---------------- | :----------- |
| Austria | Salzburg | Salzburg |
| Austria | Vienna | Vienna |
| Belgium | Antwerp | Antwerp |
| Belgium | West Flanders | Bruges |
| Czech Republic | Liberec Region | Liberec |
| Czech Republic | Prague | Prague |
| Denmark | Capital Region | Copenhagen |
| Denmark | Southern Denmark | Odense |
| Estonia | Ida-Viru County | Kohtla-Järve |
| Estonia | Ida-Viru County | Narva |
| ... | ... | ... |
> [!Important]
> #### Repeated values in DVC results
>
> Distinct values may appear multiple times in a column when querying the DVC,
> but only when associated with distinct values in other columns.
> If you query a single column in the DVC, no values are repeated in the results.
> [!Note]
> #### Null column values
>
> _Null_ column values are still considered values and are cached in the DVC.
> If you write data to a table and don't provide a value for an existing column,
> the column value is cached as _null_ and treated as a distinct value.
{{< children hlevel="h2" >}}
## Important things to know about the Distinct Value Cache
DVCs are stored in memory; the larger the cache, the more memory your InfluxDB 3
node requires to maintain it. Consider the following:
- [High cardinality limits](#high-cardinality-limits)
{{% show-in "core" %}}
- [Distinct Value Caches are flushed when the server stops](#distinct-value-caches-are-flushed-when-the-server-stops)
{{% /show-in %}}
{{% show-in "enterprise" %}}
- [Distinct Value Caches are rebuilt on restart](#distinct-value-caches-are-rebuilt-on-restart)
{{% /show-in %}}
### High cardinality limits
“Cardinality” refers to the number of unique key column combinations in your
cached data and essentially defines the maximum number of rows to store in your
DVC. While the InfluxDB 3 storage engine is not limited by cardinality,
it does affect the DVC. You can define a custom maximum cardinality limit for
a DVC, but higher cardinality increases memory requirements for
storing the DVC and can affect DVC query performance.
{{% show-in "core" %}}
### Distinct Value Caches are flushed when the server stops
Because the DVC is an in-memory cache, the cache is flushed any time the server
stops. After a server restart, {{% product-name %}} only writes new values to
the DVC when you write data, so there may be a period of time when some values are
unavailable in the DVC.
{{% /show-in %}}
{{% show-in "enterprise" %}}
### Distinct Value Caches are rebuilt on restart
Because the DVC is an in-memory cache, the cache is flushed any time the server
stops. After a server restarts, {{< product-name >}} uses persisted data to
rebuild the DVC.
{{% /show-in %}}

View File

@ -0,0 +1,108 @@
Use the [`influxdb3 create distinct_cache` command](/influxdb3/version/reference/cli/influxdb3/create/distinct_cache/)
to create a Distinct Value Cache (DVC). Provide the following:
- **Database** (`-d`, `--database`): _({{< req >}})_ The name of the database to
associate the DVC with. You can also use the `INFLUXDB3_DATABASE_NAME`
environment variable to specify the database.
- **Token** (`--token`): _({{< req >}})_ Your {{< product-name >}}
{{% show-in "enterprise" %}}admin {{% /show-in %}}authentication token.
You can also use the `INFLUXDB3_AUTH_TOKEN` environment variable to specify
the token.
- **Table** (`-t`, `--table`): _({{< req >}})_ The name of the table to
associate the DVC with.
{{% show-in "enterprise" %}}
- **Node specification** (`-n`, `--node-spec`): Specify which nodes the DVC
should be configured on.
{{% /show-in %}}
- **Columns** (`--columns`): _({{< req >}})_ Specify which columns to cache
distinct values for. These are typically tag columns but can also be
string fields.
- **Maximum cardinality** (`--max-cardinality`): Specify the maximum number of
distinct value combinations to store in the cache. The default maximum
cardinality is `100000`.
- **Maximum age** (`--max-age`): Specify the maximum age of distinct values to
keep in the DVC in
[humantime](https://docs.rs/humantime/latest/humantime/fn.parse_duration.html)
form. The default maximum age is `24 hours`.
- **Cache name**: A unique name for the cache. If you dont provide one,
InfluxDB automatically generates a cache name for you.
{{% show-in "core" %}}
<!----------------------------- BEGIN CORE EXAMPLE ---------------------------->
{{% code-placeholders "(DATABASE|TABLE|DVC)_NAME|AUTH_TOKEN|NODE_SPEC|COLUMNS|MAX_(CARDINALITY|AGE)" %}}
<!--pytest.mark.skip-->
```bash
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
```
{{% /code-placeholders %}}
<!------------------------------ END CORE EXAMPLE ----------------------------->
{{% /show-in %}}
{{% show-in "enterprise" %}}
<!-------------------------- BEGIN ENTERPRISE EXAMPLE ------------------------->
{{% code-placeholders "(DATABASE|TABLE|DVC)_NAME|AUTH_TOKEN|NODE_SPEC|COLUMNS|MAX_(CARDINALITY|AGE)" %}}
<!--pytest.mark.skip-->
```bash
influxdb3 create distinct_cache \
--database DATABASE_NAME \
--token AUTH_TOKEN \
--table TABLE_NAME \
--node_spec NODE_SPEC \
--columns COLUMNS \
--max-cardinality MAX_CARDINALITY \
--max-age MAX_AGE \
DVC_NAME
```
{{% /code-placeholders %}}
<!--------------------------- END ENTERPRISE EXAMPLE -------------------------->
{{% /show-in %}}
Replace the following:
- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}:
the name of the database to associate the DVC with
- {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}:
your {{< product-name >}} {{% show-in "enterprise" %}}admin {{% /show-in %}}
authentication token
- {{% code-placeholder-key %}}`TABLE_NAME`{{% /code-placeholder-key %}}:
the name of the table to associate the DVC with
{{% show-in "enterprise" %}}
- {{% code-placeholder-key %}}`NODE_SPEC`{{% /code-placeholder-key %}}:
a comma-delimited list of node IDs to configure the DVC on--for example:
`node-01,node-02`.
{{% /show-in %}}
- {{% code-placeholder-key %}}`COLUMNS`{{% /code-placeholder-key %}}:
a comma-delimited list of columns to cache distinct values for--for example:
`country,county,city`
- {{% code-placeholder-key %}}`MAX_CARDINALITY`{{% /code-placeholder-key %}}:
the maximum number of distinct value combinations to cache--for example: `10000`
- {{% code-placeholder-key %}}`MAX_AGE`{{% /code-placeholder-key %}}:
the maximum age of distinct values to keep in the cache in
[humantime](https://docs.rs/humantime/latest/humantime/fn.parse_duration.html)
form--for example: `6h`, `1 day`, `1 week`
- {{% code-placeholder-key %}}`DVC_NAME`{{% /code-placeholder-key %}}:
a unique name for the DVC
> [!Note]
> #### Values are cached on write
>
> Values are cached on write. When you create a cache, it will not cache
> previously written points, only newly written points.
>
> #### DVC size and persistence
>
> The DVC is stored in memory, so it's important to consider the size and
> persistence of the cache. For more information, see
> [Important things to know about the Distinct Value Cache](/influxdb3/version/admin/distinct-value-cache/#important-things-to-know-about-the-distinct-value-cache).

View File

@ -0,0 +1,39 @@
Use the [`influxdb3 delete distinct_cache` command](/influxdb3/version/reference/cli/influxdb3/delete/distinct_cache/)
to delete a Distinct Value Cache (DVC). Provide the following:
- **Database** (`-d`, `--database`): _({{< req >}})_ The name of the database
that the DVC you want to delete is associated with. You can also use the
`INFLUXDB3_DATABASE_NAME` environment variable to specify the database.
- **Token** (`--token`): _({{< req >}})_ Your {{< product-name >}}
{{% show-in "enterprise" %}}admin {{% /show-in %}}authentication token.
You can also use the `INFLUXDB3_AUTH_TOKEN` environment variable to specify
the token.
- **Table** (`-t`, `--table`): _({{< req >}})_ The name of the table that the
DVC you want to delete is associated with.
- **Cache name**: The name of the DVC to delete.
{{% code-placeholders "(DATABASE|TABLE|DVC)_NAME|AUTH_TOKEN" %}}
```bash
influxdb3 delete distinct_cache \
--database DATABASE_NAME \
--token AUTH_TOKEN \
--table TABLE_NAME \
DVC_NAME
```
{{% /code-placeholders %}}
Replace the following:
- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}:
the name of the database that the DVC you want to delete is associated with
- {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}:
your {{< product-name >}} admin authentication token
- {{% code-placeholder-key %}}`TABLE_NAME`{{% /code-placeholder-key %}}:
the name of the table associated with the DVC you want to delete
- {{% code-placeholder-key %}}`DVC_NAME`{{% /code-placeholder-key %}}:
the name of the DVC to delete
> [!Caution]
> This is a destructive action that cannot be undone. Once deleted, any queries
> against the deleted DVC will return an error.

View File

@ -0,0 +1,33 @@
Use the [`distinct_cache()` SQL function](/influxdb3/version/reference/sql/functions/cache/#distinct_cache)
in the `FROM` clause of an SQL `SELECT` statement to query data from the
Distinct Value Cache (DVC).
> [!Important]
> You must use SQL to query the DVC.
> InfluxQL does not support the `distinct_cache()` function.
`distinct_cache()` supports the following arguments:
- **table_name**: _({{< req >}})_ The name of the table the DVC is associated with
formatted as a string literal.
- **cache_name**: The name of the DVC to query formatted as a string literal.
This argument is only required if there is more than one DVC associated with
the specified table.
```sql
SELECT * FROM distinct_cache('table_name', 'cache_name')
```
You can use other [SQL clauses](/influxdb3/version/reference/sql/#statements-and-clauses)
to modify query results. For example, you can use the `WHERE` clause to return
the distinct tag values associated with another distinct tag value:
```sql
SELECT
city
FROM
distinct_cache('wind_data', 'windDistinctCache')
WHERE
country = 'Spain'
```

View File

@ -0,0 +1,69 @@
Use the [`influxdb3 show system table` command](/influxdb3/version/reference/cli/influxdb3/show/syste/table/)
to query and output Distinct Value Cache information from the `distinct_caches`
system table.
{{% code-placeholders "DATABASE_NAME|AUTH_TOKEN" %}}
<!-- pytest.mark.skip -->
```bash
influxdb3 show system \
--database DATABASE_NAME \
--token AUTH_TOKEN \
table distinct_caches
```
{{% /code-placeholders %}}
This returns a table similar to the following:
| table | name | column_ids | column_names | max_cardinality | max_age_seconds |
| :-------- | :--------------- | :--------- | :---------------------- | --------------: | --------------: |
| wind_data | wind_distinct | [0, 1, 2] | [country, county, city] | 100000 | 86400 |
| weather | weather_distinct | [0] | [location] | 100 | 604800 |
| bitcoin | bitcoin_dis | [0, 1] | [code, crypto] | 5000 | 86400 |
| home | home_distinct | [0, 1] | [room, wall] | 12000 | 15770000 |
## Query specific columns from the distinct_caches system table
Use the `--select` option to query specific columns from the `distinct_caches`
system table. Provide a comma-delimited list of columns to return:
{{% code-placeholders "DATABASE_NAME|AUTH_TOKEN" %}}
<!-- pytest.mark.skip -->
```bash
influxdb3 show system \
--database DATABASE_NAME \
--token AUTH_TOKEN \
table distinct_caches \
--select name,column_names,max_age_seconds
```
{{% /code-placeholders %}}
## Sort distinct_caches system table output
Use the `--order-by` option to sort data from the `distinct_caches` system table by
specific columns. Provide a comma-delimited list of columns to sort by:
{{% code-placeholders "DATABASE_NAME|AUTH_TOKEN" %}}
<!-- pytest.mark.skip -->
```bash
influxdb3 show system \
--database DATABASE_NAME \
--token AUTH_TOKEN \
table distinct_caches \
--order-by max_cardinality,max_age_seconds
```
{{% /code-placeholders %}}
> [!Note]
> Results are sorted in ascending order based on the provided columns.
In the examples above, replace the following:
- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}:
the name of the database to query system data from
- {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}:
your {{< product-name >}} {{% show-in "enterprise" %}}admin {{% /show-in %}}
authentication token

View File

@ -0,0 +1,160 @@
The {{< product-name >}} Last Value Cache (LVC) lets you cache the most recent
values for specific fields in a table, improving the performance of queries that
return the most recent value of a field for specific series or the last N values
of a field.
The LVC is an in-memory cache that stores the last N number of values for
specific fields of series in a table. When you create an LVC, you can specify
what fields to cache, what tags to use to identify each series, and the
number of values to cache for each unique series.
An LVC is associated with a table, which can have multiple LVCs.
{{< children type="anchored-list" >}}
- [Important things to know about the Last Value Cache](#important-things-to-know-about-the-last-value-cache)
- [High cardinality key columns](#high-cardinality-key-columns)
- [Value count](#value-count)
{{% show-in "core" %}}
- [Last Value Caches are flushed when the server stops](#last-value-caches-are-flushed-when-the-server-stops)
{{% /show-in %}}
{{% show-in "enterprise" %}}
- [Last Value Caches are rebuilt on restart](#last-value-caches-are-rebuilt-on-restart)
{{% /show-in %}}
- [Defining value columns](#defining-value-columns)
Consider a dataset with the following schema (similar to the
[home sensor sample dataset](/influxdb3/version/reference/sample-data/#home-sensor-data)):
- home (table)
- tags:
- room
- kitchen
- living room
- wall
- north
- east
- south
- fields:
- co (integer)
- temp (float)
- hum (float)
If you cache the last value for each field per room and wall, the LVC looks
similar to this:
{{% influxdb/custom-timestamps %}}
| room | wall | co | hum | temp | time |
| :---------- | :---- | --: | ---: | ---: | :------------------- |
| Kitchen | east | 26 | 36.5 | 22.7 | 2022-01-01T20:00:00Z |
| Living Room | north | 17 | 36.4 | 22.2 | 2022-01-01T20:00:00Z |
| Living Room | south | 16 | 36.3 | 22.1 | 2022-01-01T20:00:00Z |
If you cache the last four values of each field per room and wall, the LVC looks
similar to the following:
| room | wall | co | hum | temp | time |
| :---------- | :---- | --: | ---: | ---: | :------------------ |
| Kitchen | east | 26 | 36.5 | 22.7 | 2022-01-01T20:00:00Z |
| Kitchen | east | 9 | 36.0 | 22.7 | 2022-01-01T17:00:00Z |
| Kitchen | east | 3 | 36.2 | 22.7 | 2022-01-01T15:00:00Z |
| Kitchen | east | 0 | 36.1 | 22.7 | 2022-01-01T10:00:00Z |
| Living Room | north | 17 | 36.4 | 22.2 | 2022-01-01T20:00:00Z |
| Living Room | north | 5 | 35.9 | 22.6 | 2022-01-01T17:00:00Z |
| Living Room | north | 1 | 36.1 | 22.3 | 2022-01-01T15:00:00Z |
| Living Room | north | 0 | 36.0 | 21.8 | 2022-01-01T10:00:00Z |
| Living Room | south | 16 | 36.3 | 22.1 | 2022-01-01T20:00:00Z |
| Living Room | south | 4 | 35.8 | 22.5 | 2022-01-01T17:00:00Z |
| Living Room | south | 0 | 36.0 | 22.3 | 2022-01-01T15:00:00Z |
| Living Room | south | 0 | 35.9 | 21.8 | 2022-01-01T10:00:00Z |
{{% /influxdb/custom-timestamps %}}
> [!Note]
> #### Null column values
>
> _Null_ column values are still considered values and are cached in the LVC.
> If you write data to a table and don't provide a value for an existing column,
> the column value is cached as _null_.
{{< children hlevel="h2" >}}
## Important things to know about the Last Value Cache
LVCs are stored in memory; the larger the cache, the more memory your InfluxDB 3 node requires to
maintain it. Consider the following:
- [High cardinality key columns](#high-cardinality-key-columns)
- [Value count](#value-count)
{{% show-in "core" %}}
- [Last Value Caches are flushed when the server stops](#last-value-caches-are-flushed-when-the-server-stops)
{{% /show-in %}}
{{% show-in "enterprise" %}}
- [Last Value Caches are rebuilt on restart](#last-value-caches-are-rebuilt-on-restart)
{{% /show-in %}}
- [Defining value columns](#defining-value-columns)
### High cardinality key columns
“Cardinality” refers to the number of unique key column combinations in your
cached data. While the InfluxDB 3 storage engine is not limited by cardinality,
it does affect the LVC. Higher cardinality increases memory requirements for
storing the LVC and can affect LVC query performance. We recommend the
following:
- Only use tags important to your query workload as key columns in the LVC.
Caching unnecessary tags or fields as key columns results in higher
cardinality without any benefit.
- Avoid including high-cardinality key columns in your LVC.
- Dont include multiple high-cardinality key columns in your LVC.
To estimate total key column cardinality in an LVC, use the
following equation:
```txt
num_uniq_col_val_N [× num_uniq_col_val_N …] = key_column_cardinality
```
### Value count
By increasing the number of values to store in the LVC, you increase the number
of rows stored in the cache and the amount of memory required to store them. Be
judicious with the number of values to store. This count is per unique key
column combination. If you include two tags as key columns, one with three
unique values and the other with 10, you could have up to 30 unique key column
combinations. If you want to keep the last 10 values, you could potentially
have 300+ rows in the cache.
To get an idea of the number of rows required to cache the specified number of
values, use the following equation:
```txt
key_column_cardinality × count = number_of_rows
```
{{% show-in "core" %}}
### Last Value Caches are flushed when the server stops
Because the LVC is an in-memory cache, the cache is flushed any time the server
stops. After a server restart, {{% product-name %}} only writes new values to the LVC when
you write data, so there may be a period of time when some values are
unavailable in the LVC.
{{% /show-in %}}
{{% show-in "enterprise" %}}
### Last Value Caches are rebuilt on restart
Because the LVC is an in-memory cache, the cache is flushed any time the server
stops. After a server restarts, {{< product-name >}} uses persisted data to
rebuild the LVC.
{{% /show-in %}}
### Defining value columns
When creating an LVC, if you include the `--value-columns` options to specify
which fields to cache as value columns, any new fields added in the future will
not be added to the cache.
However, if you omit the `--value-columns` option, all columns other than those
specified as `--key-columns` are cached as value columns, including columns that
are added later.

View File

@ -0,0 +1,122 @@
Use the [`influxdb3 create last_cache` command](/influxdb3/version/reference/cli/influxdb3/create/last_cache/)
to create a Last Value Cache (LVC). Provide the following:
- **Database** (`-d`, `--database`): _({{< req >}})_ The name of the database to
associate the LVC with. You can also use the `INFLUXDB3_DATABASE_NAME`
environment variable to specify the database.
- **Token** (`--token`): _({{< req >}})_ Your {{< product-name >}}
{{% show-in "enterprise" %}}admin {{% /show-in %}}authentication token.
You can also use the `INFLUXDB3_AUTH_TOKEN` environment variable to specify
the token.
- **Table** (`-t`, `--table`): _({{< req >}})_ The name of the table to
associate the LVC with.
{{% show-in "enterprise" %}}
- **Node specification** (`-n`, `--node-spec`): Specify which nodes the LVC
should be configured on.
{{% /show-in %}}
- **Key columns** (`--key-columns`): Specify which columns to include in the
primary key of the cache. Rows in the LVC are uniquely identified by their
timestamp and key columns, so include all the columns you need to identify
each row. These are typically tags, but you can use any columns with the
following types:
- String
- Integer
- Unsigned integer
- Boolean
- **Value columns** (`--value-columns`): Specify which columns to cache as value
columns. These are typically fields but can also be tags. By default, `time` and
columns other than those specified as `--key-columns` are cached as value columns.
- **Count** (`--count`): The number of values to cache per unique key column combination.
The supported range is `[1-10]`. The default count is `1`.
- **Time-to-Live (TTL)** (`--ttl`): The time-to-live for cached values in
[humantime](https://docs.rs/humantime/latest/humantime/fn.parse_duration.html)
form. The default TTL is four hours.
- **Cache name**: A unique name for the cache. If you dont provide one,
InfluxDB automatically generates a cache name for you.
{{% show-in "core" %}}
<!----------------------------- BEGIN CORE EXAMPLE ---------------------------->
{{% code-placeholders "(DATABASE|TABLE|LVC)_NAME|AUTH_TOKEN|(KEY|VALUE)_COLUMNS|COUNT|TTL" %}}
<!--pytest.mark.skip-->
```bash
influxdb3 create last_cache \
--database DATABASE_NAME \
--token AUTH_TOKEN \
--table TABLE_NAME \
--key-columns KEY_COLUMNS \
--value-columns VALUE_COLUMNS \
--count COUNT \
--ttl TTL\
LVC_NAME
```
{{% /code-placeholders %}}
<!------------------------------ END CORE EXAMPLE ----------------------------->
{{% /show-in %}}
{{% show-in "enterprise" %}}
<!-------------------------- BEGIN ENTERPRISE EXAMPLE ------------------------->
{{% code-placeholders "(DATABASE|TABLE|LVC)_NAME|AUTH_TOKEN|NODE_SPEC|(KEY|VALUE)_COLUMNS|COUNT|TTL" %}}
<!--pytest.mark.skip-->
```bash
influxdb3 create last_cache \
--database DATABASE_NAME \
--token AUTH_TOKEN \
--table TABLE_NAME \
--node_spec NODE_SPEC \
--key-columns KEY_COLUMNS \
--value-columns VALUE_COLUMNS \
--count COUNT \
--ttl TTL\
LVC_NAME
```
{{% /code-placeholders %}}
<!--------------------------- END ENTERPRISE EXAMPLE -------------------------->
{{% /show-in %}}
Replace the following:
- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}:
the name of the database to associate the LVC with
- {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}:
your {{< product-name >}} {{% show-in "enterprise" %}}admin {{% /show-in %}}
authentication token
- {{% code-placeholder-key %}}`TABLE_NAME`{{% /code-placeholder-key %}}:
the name of the table to associate the LVC with
{{% show-in "enterprise" %}}
- {{% code-placeholder-key %}}`NODE_SPEC`{{% /code-placeholder-key %}}:
a comma-delimited list of node IDs to configure the LVC on--for example:
`node-01,node-02`.
{{% /show-in %}}
- {{% code-placeholder-key %}}`KEY_COLUMNS`{{% /code-placeholder-key %}}:
a comma-delimited list of columns to use to unique identify each series--for
example: `room,wall`
- {{% code-placeholder-key %}}`VALUE_COLUMNS`{{% /code-placeholder-key %}}:
a comma-delimited list of columns to cache as value columns--for
example: `temp,hum,co`
- {{% code-placeholder-key %}}`COUNT`{{% /code-placeholder-key %}}:
the number of last values to cache per series--for example: `5`
- {{% code-placeholder-key %}}`TTL`{{% /code-placeholder-key %}}:
the TTL of cached values in
[humantime](https://docs.rs/humantime/latest/humantime/fn.parse_duration.html)
form--for example: `10s`, `1min 30sec`, `3 hours`
- {{% code-placeholder-key %}}`LVC_NAME`{{% /code-placeholder-key %}}:
a unique name for the LVC
> [!Note]
> #### Values are cached on write
>
> Values are cached on write. When you create a cache, it will not cache
> previously written points, only newly written points.
>
> #### LVC size and persistence
>
> The LVC is stored in memory, so it's important to consider the size and persistence
> of the cache. For more information, see
> [Important things to know about the Last Value Cache](/influxdb3/version/admin/last-value-cache/#important-things-to-know-about-the-last-value-cache).

View File

@ -0,0 +1,40 @@
Use the [`influxdb3 delete last_cache` command](/influxdb3/version/reference/cli/influxdb3/delete/last_cache/)
to delete a Last Value Cache (LVC). Provide the following:
- **Database** (`-d`, `--database`): _({{< req >}})_ The name of the database
that the LVC you want to delete is associated with. You can also use the
`INFLUXDB3_DATABASE_NAME` environment variable to specify the database.
- **Token** (`--token`): _({{< req >}})_ Your {{< product-name >}}
{{% show-in "enterprise" %}}admin {{% /show-in %}}authentication token.
You can also use the `INFLUXDB3_AUTH_TOKEN` environment variable to specify
the database.
- **Table** (`-t`, `--table`): _({{< req >}})_ The name of the table that the
LVC you want to delete is associated with.
- **Cache name**: The name of the LVC to delete.
{{% code-placeholders "(DATABASE|TABLE|LVC)_NAME|AUTH_TOKEN" %}}
```bash
influxdb3 delete last_cache \
--database DATABASE_NAME \
--token AUTH_TOKEN \
--table TABLE_NAME \
LVC_NAME
```
{{% /code-placeholders %}}
Replace the following:
- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}:
the name of the database that the LVC you want to delete is associated with
- {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}:
your {{< product-name >}} {{% show-in "enterprise" %}}admin {{% /show-in %}}
authentication token
- {{% code-placeholder-key %}}`TABLE_NAME`{{% /code-placeholder-key %}}:
the name of the table that the LVC you want to delete is associated with
- {{% code-placeholder-key %}}`LVC`{{% /code-placeholder-key %}}:
the name of the LVC to delete
> [!Caution]
> This is a destructive action that cannot be undone. Once deleted, any queries
> against the deleted LVC will return an error.

View File

@ -0,0 +1,34 @@
Use the [`last_cache()` SQL function](/influxdb3/version/reference/sql/functions/cache/#last_cache)
in the `FROM` clause of an SQL `SELECT` statement to query data from the
Last Value Cache (LVC).
> [!Important]
> You must use SQL to query the LVC.
> InfluxQL does not support the `last_cache()` function.
`last_cache()` supports the following arguments:
- **table_name**: _({{< req >}})_ The name of the table the LVC is associated with
formatted as a string literal.
- **cache_name**: The name of the LVC to query formatted as a string literal.
This argument is only required if there is more than one LVC associated with the specified
table.
```sql
SELECT * FROM last_cache('table_name', 'cache_name')
```
You can use other [SQL clauses](/influxdb3/version/reference/sql/#statements-and-clauses)
to modify query results. For example, you can use the `WHERE` clause to return
the last value for a specific tag set:
```sql
SELECT
room,
temp
FROM
last_cache('home', 'homeCache')
WHERE
room = 'Kitchen'
```

View File

@ -0,0 +1,68 @@
Use the [`influxdb3 show system table` command](/influxdb3/version/reference/cli/influxdb3/show/syste/table/)
to query and output Last Value Cache information from the `last_caches` system table.
{{% code-placeholders "DATABASE_NAME|AUTH_TOKEN" %}}
<!-- pytest.mark.skip -->
```bash
influxdb3 show system \
--database DATABASE_NAME \
--token AUTH_TOKEN \
table last_caches
```
{{% /code-placeholders %}}
This returns a table similar to the following:
| table | name | key_column_ids | key_column_names | value_column_ids | value_column_names | count | ttl |
| ------- | ------------ | -------------- | ---------------- | ---------------- | ------------------------------------------------ | ----- | ----- |
| weather | weather_last | [0] | [location] | [2, 3, 4, 5, 1] | [precip, temp_avg, temp_max, temp_min, wind_avg] | 1 | 86400 |
| bitcoin | bitcoin_last | [0, 1] | [code, crypto] | [4] | [price] | 1 | 14400 |
| numbers | numbers_last | [] | [] | [0, 1] | [a, b] | 5 | 14400 |
| home | home_last | [0] | [room] | [1, 2, 3] | [temp, hum, co] | 5 | 60 |
## Query specific columns from the last_caches system table
Use the `--select` option to query specific columns from the `last_caches`
system table. Provide a comma-delimited list of columns to return:
{{% code-placeholders "DATABASE_NAME|AUTH_TOKEN" %}}
<!-- pytest.mark.skip -->
```bash
influxdb3 show system \
--database DATABASE_NAME \
--token AUTH_TOKEN \
table last_caches \
--select name,key_column_names,value_column_names
```
{{% /code-placeholders %}}
## Sort last_caches system table output
Use the `--order-by` option to sort data from the `last_caches` system table by
specific columns. Provide a comma-delimited list of columns to sort by:
{{% code-placeholders "DATABASE_NAME|AUTH_TOKEN" %}}
<!-- pytest.mark.skip -->
```bash
influxdb3 show system \
--database DATABASE_NAME \
--token AUTH_TOKEN \
table last_caches \
--order-by table,ttl
```
{{% /code-placeholders %}}
> [!Note]
> Results are sorted in ascending order based on the provided columns.
In the examples above, replace the following:
- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}:
the name of the database to query system data from
- {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}:
your {{< product-name >}} {{% show-in "enterprise" %}}admin {{% /show-in %}}
authentication token

View File

@ -0,0 +1,10 @@
Manage tokens to authenticate and authorize access to resources and data in your
{{< product-name >}} instance.
> [!Note]
> #### Store secure tokens in a secret store
>
> Token strings are returned _only_ on token creation.
> We recommend storing database tokens in a **secure secret store**.
{{< children hlevel="h2" readmore=true hr=true >}}

View File

@ -0,0 +1,6 @@
Manage admin tokens in your {{< product-name >}} instance.
An admin token grants
access to all actions (CLI commands and API endpoints) for the server.
{{< children hlevel="h2" readmore=true hr=true >}}

View File

@ -0,0 +1,33 @@
Use the [`influxdb3 create token --admin` subcommand](/influxdb3/version/reference/cli/influxdb3/create/token/)
or the [HTTP API](/influxdb3/version/api/v3/)
to create an [admin token](/influxdb3/version/admin/tokens/admin/) for your {{< product-name omit="Clustered" >}} instance.
An admin token grants full access to all actions for your InfluxDB 3 instance.
> [!Note]
> #### Store secure tokens in a secret store
>
> Token strings are returned _only_ on token creation.
> We recommend storing database tokens in a **secure secret store**.
> If you lose the admin token string, you must regenerate the token.
## Create an admin token
- [Use the influxdb3 CLI](#use-the-influxdb3-cli)
- [Use the HTTP API](#use-the-http-api)
### Use the influxdb3 CLI
Use the `influxdb3 create token --admin` command:
```bash
influxdb3 create token --admin
```
The command returns the token string in plain text.
To use the token as the default for later commands, and to persist the token
across sessions, assign the token string to the `INFLUXDB3_AUTH_TOKEN` environment variable.
> [!Caution]
> Protect your admin token. Anyone with access to the admin token has full control over your {{< product-name >}} instance.

View File

@ -0,0 +1,29 @@
Use the `influxdb3` CLI to list tokens, including admin tokens.
## Use the CLI
```bash
influxdb3 show tokens
```
The command lists metadata for all tokens in your InfluxDB 3 instance, including
the `_admin` token.
The token metadata includes the hash of the token string.
InfluxDB 3 does not store the token string.
### Output formats
The `influxdb3 show tokens` command supports output formats:
- `pretty` _(default)_
- `json`
- `jsonl`
- `csv`
<!-- - `parquet` _(must [output to a file](#output-to-a-parquet-file))_ -->
Use the `--format` flag to specify the output format:
```sh
influxdb3 show tokens \
--format json
```

View File

@ -0,0 +1,15 @@
## Use the CLI to regenerate an admin token
To regenerate an admin token, you can use the `--regenerate` flag with the `influxdb3 create token --admin` subcommand. This revokes the existing admin token.
```bash
influxdb3 create token --admin \
--token ADMIN_TOKEN
--host {{< influxdb/host >}}
--regenerate
```
In your command, replace `ADMIN_TOKEN` with the current token string.
By default, `influxdb3` asks for confirmation before regenerating the token.

View File

@ -12,8 +12,8 @@ influxdb3 create <SUBCOMMAND>
## Subcommands
| Subcommand | Description |
| :------------------------------------------------------------------------------------- | :---------------------------------------------- |
| Subcommand | Description |
| :---------------------------------------------------------------------------------- | :---------------------------------------------- |
| [database](/influxdb3/version/reference/cli/influxdb3/create/database/) | Create a new database |
| [file_index](/influxdb3/version/reference/cli/influxdb3/create/file_index/) | Create a new file index for a database or table |
| [last_cache](/influxdb3/version/reference/cli/influxdb3/create/last_cache/) | Create a new last value cache |
@ -22,10 +22,11 @@ influxdb3 create <SUBCOMMAND>
| [table](/influxdb3/version/reference/cli/influxdb3/create/table/) | Create a new table in a database |
| [token](/influxdb3/version/reference/cli/influxdb3/create/token/) | Create a new authentication token |
| [trigger](/influxdb3/version/reference/cli/influxdb3/create/trigger/) | Create a new trigger for the processing engine |
| help | Print command help or the help of a subcommand |
| help | Print command help or the help of a subcommand |
## Options
| Option | | Description |
| :----- | :------- | :--------------------- |
| `-h` | `--help` | Print help information |
| Option | | Description |
| :----- | :----------- | :------------------------------ |
| `-h` | `--help` | Print help information |
| | `--help-all` | Print detailed help information |

View File

@ -23,7 +23,9 @@ influxdb3 create database [OPTIONS] <DATABASE_NAME>
| :----- | :----------- | :--------------------------------------------------------------------------------------- |
| `-H` | `--host` | Host URL of the running {{< product-name >}} server (default is `http://127.0.0.1:8181`) |
| | `--token` | Authentication token |
| | `--tls-ca` | Path to a custom TLS certificate authority (for testing or self-signed certificates) |
| `-h` | `--help` | Print help information |
| | `--help-all` | Print detailed help information |
### Option environment variables

View File

@ -8,6 +8,7 @@ The `influxdb3 create distinct_cache` command creates a new distinct value cache
```bash
influxdb3 create distinct_cache [OPTIONS] \
--database <DATABASE_NAME> \
--token <AUTH_TOKEN>
--table <TABLE> \
--columns <COLUMNS> \
[CACHE_NAME]
@ -24,12 +25,14 @@ influxdb3 create distinct_cache [OPTIONS] \
| :----- | :------------------ | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `-H` | `--host` | Host URL of the running {{< product-name >}} server (default is `http://127.0.0.1:8181`) |
| `-d` | `--database` | _({{< req >}})_ Name of the database to operate on |
| | `--token` | Authentication token |
| | `--token` | _({{< req >}})_ Authentication token |
| `-t` | `--table` | _({{< req >}})_ Table to create the cache for |
| | `--columns` | _({{< req >}})_ Comma-separated list of columns to cache distinct values for--for example: `col1,col2,col3` (see [Metadata cache hierarchy](#metadata-cache-hierarchy)) |
| | `--max-cardinality` | Maximum number of distinct value combinations to hold in the cache |
| | `--max-age` | Maximum age of an entry in the cache entered as a human-readable duration--for example: `30d`, `24h` |
| | `--tls-ca` | Path to a custom TLS certificate authority (for testing or self-signed certificates) |
| `-h` | `--help` | Print help information |
| | `--help-all` | Print detailed help information |
> [!Important]
>

View File

@ -7,7 +7,10 @@ database or table.
<!--pytest.mark.skip-->
```bash
influxdb3 create file_index [OPTIONS] --database <DATABASE_NAME> <COLUMNS>...
influxdb3 create file_index [OPTIONS] \
--database <DATABASE_NAME> \
--token <AUTH_TOKEN> \
<COLUMNS>...
```
## Arguments
@ -20,9 +23,11 @@ influxdb3 create file_index [OPTIONS] --database <DATABASE_NAME> <COLUMNS>...
| :----- | :----------- | :--------------------------------------------------------------------------------------- |
| `-H` | `--host` | Host URL of the running {{< product-name >}} server (default is `http://127.0.0.1:8181`) |
| `-d` | `--database` | _({{< req >}})_ Name of the database to operate on |
| | `--token` | Authentication token |
| | `--token` | _({{< req >}})_ Authentication token |
| `-t` | `--table` | Table to apply the file index too |
| | `--tls-ca` | Path to a custom TLS certificate authority (for testing or self-signed certificates) |
| `-h` | `--help` | Print help information |
| | `--help-all` | Print detailed help information |
### Option environment variables
@ -43,10 +48,12 @@ In the examples below, replace the following:
- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}:
Database name
- {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}:
Authentication token
- {{% code-placeholder-key %}}`TABLE_NAME`{{% /code-placeholder-key %}}:
Table name
{{% code-placeholders "(DATABASE|TABLE)_NAME" %}}
{{% code-placeholders "(DATABASE|TABLE)_NAME|AUTH_TOKEN" %}}
### Create a new file index for a database
@ -55,6 +62,7 @@ In the examples below, replace the following:
```bash
influxdb3 create file_index \
--database DATABASE_NAME \
--token AUTH_TOKEN \
column1 column2 column3
```
@ -65,6 +73,7 @@ influxdb3 create file_index \
```bash
influxdb3 create file_index \
--database DATABASE_NAME \
--token AUTH_TOKEN \
--table TABLE_NAME \
column1 column2 column3
```

View File

@ -20,13 +20,15 @@ influxdb3 create last_cache [OPTIONS] --database <DATABASE_NAME> --table <TABLE>
| :----- | :---------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `-H` | `--host` | Host URL of the running {{< product-name >}} server (default is `http://127.0.0.1:8181`) |
| `-d` | `--database` | _({{< req >}})_ Name of the database to operate on |
| | `--token` | Authentication token |
| | `--token` | _({{< req >}})_ Authentication token |
| `-t` | `--table` | _({{< req >}})_ Table to create the cache for |
| | `--key-columns` | Comma-separated list of columns to use as keys in the cache--for example: `foo,bar,baz` |
| | `--value-columns` | Comma-separated list of columns to store as values in the cache--for example: `foo,bar,baz` |
| | `--count` | Number of entries per unique key column combination to store in the cache |
| | `--ttl` | Cache entries' time-to-live (TTL) in [Humantime form](https://docs.rs/humantime/latest/humantime/fn.parse_duration.html)--for example: `10s`, `1min 30sec`, `3 hours` |
| | `--tls-ca` | Path to a custom TLS certificate authority (for testing or self-signed certificates) |
| `-h` | `--help` | Print help information |
| | `--help-all` | Print detailed help information |
### Option environment variables

View File

@ -8,6 +8,7 @@ The `influxdb3 create plugin` command creates a new processing engine plugin.
```bash
influxdb3 create plugin [OPTIONS] \
--database <DATABASE_NAME> \
--token <AUTH_TOKEN> \
--filename <PLUGIN_FILENAME> \
--entry-point <FUNCTION_NAME> \
<PLUGIN_NAME>
@ -23,11 +24,13 @@ influxdb3 create plugin [OPTIONS] \
| :----- | :-------------- | :--------------------------------------------------------------------------------------- |
| `-H` | `--host` | Host URL of the running {{< product-name >}} server (default is `http://127.0.0.1:8181`) |
| `-d` | `--database` | _({{< req >}})_ Name of the database to operate on |
| | `--token` | Authentication token |
| | `--token` | _({{< req >}})_ Authentication token |
| | `--filename` | _({{< req >}})_ Name of the plugin Python file in the plugin directory |
| | `--entry-point` | _({{< req >}})_ Entry point function name for the plugin |
| | `--plugin-type` | Type of trigger the plugin processes (default is `wal_rows`) |
| | `--tls-ca` | Path to a custom TLS certificate authority (for testing or self-signed certificates) |
| `-h` | `--help` | Print help information |
| | `--help-all` | Print detailed help information |
### Option environment variables

View File

@ -9,6 +9,7 @@ The `influxdb3 create table` command creates a table in a database.
influxdb3 create table [OPTIONS] \
--tags [<TAGS>...] \
--database <DATABASE_NAME> \
--token <AUTH_TOKEN> \
<TABLE_NAME>
```
@ -22,10 +23,12 @@ influxdb3 create table [OPTIONS] \
| :----- | :----------- | :--------------------------------------------------------------------------------------- |
| `-H` | `--host` | Host URL of the running {{< product-name >}} server (default is `http://127.0.0.1:8181`) |
| `-d` | `--database` | _({{< req >}})_ Name of the database to operate on |
| | `--token` | Authentication token |
| | `--token` | _({{< req >}})_ Authentication token |
| | `--tags` | _({{< req >}})_ Comma-separated list of tag columns to include in the table |
| | `--fields` | Comma-separated list of field columns and their types to include in the table |
| | `--tls-ca` | Path to a custom TLS certificate authority (for testing or self-signed certificates) |
| `-h` | `--help` | Print help information |
| | `--help-all` | Print detailed help information |
> [!Important]
>
@ -53,6 +56,8 @@ In the examples below, replace the following:
- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}:
Database name
- {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}:
Authentication token
- {{% code-placeholder-key %}}`TABLE_NAME`{{% /code-placeholder-key %}}:
Table name
@ -64,6 +69,7 @@ In the examples below, replace the following:
influxdb3 create table \
--tags tag1,tag2,tag3 \
--database DATABASE_NAME \
--token AUTH_TOKEN \
TABLE_NAME
```
@ -76,6 +82,7 @@ influxdb3 create table \
--tags room,sensor_id \
--fields temp:float64,hum:float64,co:int64 \
--database DATABASE_NAME \
--token AUTH_TOKEN \
TABLE_NAME
```

View File

@ -11,6 +11,7 @@ influxdb3 create token
## Options
| Option | | Description |
| :----- | :------- | :--------------------- |
| `-h` | `--help` | Print help information |
| Option | | Description |
| :----- | :----------- | :------------------------------ |
| `-h` | `--help` | Print help information |
| | `--help-all` | Print detailed help information |

View File

@ -9,6 +9,7 @@ processing engine.
```bash
influxdb3 create trigger [OPTIONS] \
--database <DATABASE_NAME> \
--token <AUTH_TOKEN> \
--plugin <PLUGIN_NAME> \
--trigger-spec <TRIGGER_SPECIFICATION> \
<TRIGGER_NAME>
@ -24,11 +25,13 @@ influxdb3 create trigger [OPTIONS] \
| :----- | :--------------- | :--------------------------------------------------------------------------------------- |
| `-H` | `--host` | Host URL of the running {{< product-name >}} server (default is `http://127.0.0.1:8181`) |
| `-d` | `--database` | _({{< req >}})_ Name of the database to operate on |
| | `--token` | Authentication token |
| | `--token` | _({{< req >}})_ Authentication token |
| | `--plugin` | Plugin to execute when the trigger fires |
| | `--trigger-spec` | Trigger specification--for example `table:<TABLE_NAME>` or `all_tables` |
| | `--disabled` | Create the trigger in disabled state |
| | `--tls-ca` | Path to a custom TLS certificate authority (for testing or self-signed certificates) |
| `-h` | `--help` | Print help information |
| | `--help-all` | Print detailed help information |
### Option environment variables

View File

@ -24,6 +24,7 @@ influxdb3 delete <SUBCOMMAND>
## Options
| Option | | Description |
| :----- | :------- | :--------------------- |
| `-h` | `--help` | Print help information |
| Option | | Description |
| :----- | :----------- | :------------------------------ |
| `-h` | `--help` | Print help information |
| | `--help-all` | Print detailed help information |

View File

@ -21,7 +21,9 @@ influxdb3 delete database [OPTIONS] <DATABASE_NAME>
| :----- | :----------- | :--------------------------------------------------------------------------------------- |
| `-H` | `--host` | Host URL of the running {{< product-name >}} server (default is `http://127.0.0.1:8181`) |
| | `--token` | Authentication token |
| | `--tls-ca` | Path to a custom TLS certificate authority (for testing or self-signed certificates) |
| `-h` | `--help` | Print help information |
| | `--help-all` | Print detailed help information |
### Option environment variables

View File

@ -18,13 +18,15 @@ influxdb3 delete distinct_cache [OPTIONS] \
## Options
| Option | | Description |
| :----- | :------------------ | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `-H` | `--host` | Host URL of the running {{< product-name >}} server (default is `http://127.0.0.1:8181`) |
| `-d` | `--database` | _({{< req >}})_ Name of the database to operate on |
| | `--token` | Authentication token |
| `-t` | `--table` | _({{< req >}})_ Table to delete the cache for |
| `-h` | `--help` | Print help information |
| Option | | Description |
| :----- | :----------- | :--------------------------------------------------------------------------------------- |
| `-H` | `--host` | Host URL of the running {{< product-name >}} server (default is `http://127.0.0.1:8181`) |
| `-d` | `--database` | _({{< req >}})_ Name of the database to operate on |
| | `--token` | _({{< req >}})_ Authentication token |
| `-t` | `--table` | _({{< req >}})_ Table to delete the cache for |
| | `--tls-ca` | Path to a custom TLS certificate authority (for testing or self-signed certificates) |
| `-h` | `--help` | Print help information |
| | `--help-all` | Print detailed help information |
### Option environment variables
@ -40,13 +42,14 @@ You can use the following environment variables to set command options:
### Delete a distinct value cache
{{% code-placeholders "(DATABASE|TABLE|CACHE)_NAME" %}}
{{% code-placeholders "(DATABASE|TABLE|CACHE)_NAME|AUTH_TOKEN" %}}
<!--pytest.mark.skip-->
```bash
influxdb3 delete distinct_cache \
--database DATABASE_NAME \
--token AUTH_TOKEN \
--table TABLE_NAME \
CACHE_NAME
```
@ -57,6 +60,8 @@ In the example above, replace the following:
- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}:
Database name
- {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}:
Authentication token
- {{% code-placeholder-key %}}`TABLE_NAME`{{% /code-placeholder-key %}}:
Table name
- {{% code-placeholder-key %}}`CACHE_NAME`{{% /code-placeholder-key %}}:

View File

@ -16,9 +16,11 @@ influxdb3 delete file_index [OPTIONS] --database <DATABASE_NAME>
| :----- | :----------- | :--------------------------------------------------------------------------------------- |
| `-H` | `--host` | Host URL of the running {{< product-name >}} server (default is `http://127.0.0.1:8181`) |
| `-d` | `--database` | _({{< req >}})_ Name of the database to operate on |
| | `--token` | Authentication token |
| `-t` | `--table` | Table to delete the file index from |
| | `--token` | _({{< req >}})_ Authentication token |
| `-t` | `--table` | Table to delete the file index from |
| | `--tls-ca` | Path to a custom TLS certificate authority (for testing or self-signed certificates) |
| `-h` | `--help` | Print help information |
| | `--help-all` | Print detailed help information |
### Option environment variables
@ -39,17 +41,21 @@ In the examples below, replace the following:
- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}:
Database name
- {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}:
Authentication token
- {{% code-placeholder-key %}}`TABLE_NAME`{{% /code-placeholder-key %}}:
Table name
{{% code-placeholders "(DATABASE|TABLE)_NAME" %}}
{{% code-placeholders "(DATABASE|TABLE)_NAME|AUTH_TOKEN" %}}
### Delete a file index from a database
<!--pytest.mark.skip-->
```bash
influxdb3 delete file_index --database DATABASE_NAME
influxdb3 delete file_index \
--database DATABASE_NAME \
--token AUTH_TOKEN
```
### Delete a file index from a specific table
@ -57,7 +63,10 @@ influxdb3 delete file_index --database DATABASE_NAME
<!--pytest.mark.skip-->
```bash
influxdb3 delete file_index --database DATABASE_NAME --table TABLE_NAME
influxdb3 delete file_index \
--database DATABASE_NAME \
--token AUTH_TOKEN \
--table TABLE_NAME
```
{{% /code-placeholders %}}

View File

@ -15,13 +15,15 @@ influxdb3 delete last_cache [OPTIONS] --database <DATABASE_NAME> --table <TABLE>
## Options
| Option | | Description |
| :----- | :---------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `-H` | `--host` | Host URL of the running {{< product-name >}} server (default is `http://127.0.0.1:8181`) |
| `-d` | `--database` | _({{< req >}})_ Name of the database to operate on |
| | `--token` | Authentication token |
| `-t` | `--table` | _({{< req >}})_ Table to delete the cache from |
| `-h` | `--help` | Print help information |
| Option | | Description |
| :----- | :----------- | :--------------------------------------------------------------------------------------- |
| `-H` | `--host` | Host URL of the running {{< product-name >}} server (default is `http://127.0.0.1:8181`) |
| `-d` | `--database` | _({{< req >}})_ Name of the database to operate on |
| | `--token` | _({{< req >}})_ Authentication token |
| `-t` | `--table` | _({{< req >}})_ Table to delete the cache from |
| | `--tls-ca` | Path to a custom TLS certificate authority (for testing or self-signed certificates) |
| `-h` | `--help` | Print help information |
| | `--help-all` | Print detailed help information |
### Option environment variables
@ -37,13 +39,14 @@ You can use the following environment variables to set command options:
### Delete a last value cache
{{% code-placeholders "(DATABASE|TABLE|CACHE)_NAME" %}}
{{% code-placeholders "(DATABASE|TABLE|CACHE)_NAME|AUTH_TOKEN" %}}
<!--pytest.mark.skip-->
```bash
influxdb3 delete last_cache \
--database DATABASE_NAME \
--token AUTH_TOKEN \
--table TABLE_NAME \
CACHE_NAME
```
@ -54,6 +57,8 @@ In the example above, replace the following:
- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}:
Database name
- {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}:
Authentication token
- {{% code-placeholder-key %}}`TABLE_NAME`{{% /code-placeholder-key %}}:
Table name
- {{% code-placeholder-key %}}`CACHE_NAME`{{% /code-placeholder-key %}}:

View File

@ -15,12 +15,14 @@ influxdb3 delete plugin [OPTIONS] --database <DATABASE_NAME> <PLUGIN_NAME>
## Options
| Option | | Description |
| :----- | :---------------- | :--------------------------------------------------------------------------------------- |
| `-H` | `--host` | Host URL of the running {{< product-name >}} server (default is `http://127.0.0.1:8181`) |
| `-d` | `--database` | _({{< req >}})_ Name of the database to operate on |
| | `--token` | Authentication token |
| `-h` | `--help` | Print help information |
| Option | | Description |
| :----- | :----------- | :--------------------------------------------------------------------------------------- |
| `-H` | `--host` | Host URL of the running {{< product-name >}} server (default is `http://127.0.0.1:8181`) |
| `-d` | `--database` | _({{< req >}})_ Name of the database to operate on |
| | `--token` | _({{< req >}})_ Authentication token |
| | `--tls-ca` | Path to a custom TLS certificate authority (for testing or self-signed certificates) |
| `-h` | `--help` | Print help information |
| | `--help-all` | Print detailed help information |
### Option environment variables
@ -36,12 +38,15 @@ You can use the following environment variables to set command options:
### Delete a plugin
{{% code-placeholders "(DATABASE|PLUGIN)_NAME" %}}
{{% code-placeholders "(DATABASE|PLUGIN)_NAME|AUTH_TOKEN" %}}
<!--pytest.mark.skip-->
```bash
influxdb3 delete plugin --database DATABASE_NAME PLUGIN_NAME
influxdb3 delete plugin \
--database DATABASE_NAME \
--token AUTH_TOKEN \
PLUGIN_NAME
```
{{% /code-placeholders %}}
@ -50,5 +55,7 @@ In the example above, replace the following:
- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}:
Database name
- {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}:
Authentication token
- {{% code-placeholder-key %}}`PLUGIN_NAME`{{% /code-placeholder-key %}}:
Name of the plugin to delete

View File

@ -15,12 +15,14 @@ influxdb3 delete table [OPTIONS] --database <DATABASE_NAME> <TABLE_NAME>
## Options
| Option | | Description |
| :----- | :-------------- | :--------------------------------------------------------------------------------------- |
| `-H` | `--host` | Host URL of the running {{< product-name >}} server (default is `http://127.0.0.1:8181`) |
| `-d` | `--database` | _({{< req >}})_ Name of the database to operate on |
| | `--token` | Authentication token |
| `-h` | `--help` | Print help information |
| Option | | Description |
| :----- | :----------- | :--------------------------------------------------------------------------------------- |
| `-H` | `--host` | Host URL of the running {{< product-name >}} server (default is `http://127.0.0.1:8181`) |
| `-d` | `--database` | _({{< req >}})_ Name of the database to operate on |
| | `--token` | _({{< req >}})_ Authentication token |
| | `--tls-ca` | Path to a custom TLS certificate authority (for testing or self-signed certificates) |
| `-h` | `--help` | Print help information |
| | `--help-all` | Print detailed help information |
### Option environment variables
@ -36,12 +38,15 @@ You can use the following environment variables to set command options:
### Delete a table
{{% code-placeholders "(DATABASE|TABLE)_NAME" %}}
{{% code-placeholders "(DATABASE|TABLE)_NAME|AUTH_TOKEN" %}}
<!--pytest.mark.skip-->
```bash
influxdb3 delete table --database DATABASE_NAME TABLE_NAME
influxdb3 delete table \
--database DATABASE_NAME \
--token AUTH_TOKEN \
TABLE_NAME
```
{{% /code-placeholders %}}
@ -50,5 +55,7 @@ In the example above, replace the following:
- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}:
Database name
- {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}:
Authentication token
- {{% code-placeholder-key %}}`TABLE_NAME`{{% /code-placeholder-key %}}:
Name of the table to delete

View File

@ -19,9 +19,11 @@ influxdb3 delete trigger [OPTIONS] --database <DATABASE_NAME> <TRIGGER_NAME>
| :----- | :----------- | :--------------------------------------------------------------------------------------- |
| `-H` | `--host` | Host URL of the running {{< product-name >}} server (default is `http://127.0.0.1:8181`) |
| `-d` | `--database` | _({{< req >}})_ Name of the database to operate on |
| | `--token` | Authentication token |
| | `--token` | _({{< req >}})_ Authentication token |
| | `--force` | Force delete even if the trigger is active |
| | `--tls-ca` | Path to a custom TLS certificate authority (for testing or self-signed certificates) |
| `-h` | `--help` | Print help information |
| | `--help-all` | Print detailed help information |
### Option environment variables
@ -42,17 +44,22 @@ In the examples below, replace the following:
- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}:
Database name
- {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}:
Authentication token
- {{% code-placeholder-key %}}`TRIGGER_NAME`{{% /code-placeholder-key %}}:
Name of the trigger to delete
{{% code-placeholders "(DATABASE|TRIGGER)_NAME" %}}
{{% code-placeholders "(DATABASE|TRIGGER)_NAME|AUTH_TOKEN" %}}
### Delete a trigger
<!--pytest.mark.skip-->
```bash
influxdb3 delete trigger --database DATABASE_NAME TRIGGER_NAME
influxdb3 delete trigger \
--database DATABASE_NAME \
--token AUTH_TOKEN \
TRIGGER_NAME
```
### Force delete an active trigger
@ -60,7 +67,11 @@ influxdb3 delete trigger --database DATABASE_NAME TRIGGER_NAME
<!--pytest.mark.skip-->
```bash
influxdb3 delete trigger --force --database DATABASE_NAME TRIGGER_NAME
influxdb3 delete trigger \
--force \
--database DATABASE_NAME \
--token AUTH_TOKEN \
TRIGGER_NAME
```
{{% /code-placeholders %}}

View File

@ -18,6 +18,7 @@ influxdb3 disable <SUBCOMMAND>
## Options
| Option | | Description |
| :----- | :------- | :--------------------- |
| `-h` | `--help` | Print help information |
| Option | | Description |
| :----- | :----------- | :------------------------------ |
| `-h` | `--help` | Print help information |
| | `--help-all` | Print detailed help information |

View File

@ -19,8 +19,10 @@ influxdb3 disable trigger [OPTIONS] --database <DATABASE_NAME> <TRIGGER_NAME>
| :----- | :----------- | :--------------------------------------------------------------------------------------- |
| `-H` | `--host` | Host URL of the running {{< product-name >}} server (default is `http://127.0.0.1:8181`) |
| `-d` | `--database` | _({{< req >}})_ Name of the database to operate on |
| | `--token` | Authentication token |
| | `--token` | _({{< req >}})_ Authentication token |
| | `--tls-ca` | Path to a custom TLS certificate authority (for testing or self-signed certificates) |
| `-h` | `--help` | Print help information |
| | `--help-all` | Print detailed help information |
### Option environment variables

View File

@ -11,13 +11,14 @@ influxdb3 enable <SUBCOMMAND>
## Subcommands
| Subcommand | Description |
| :----------------------------------------------------------------------- | :--------------------------------------------- |
| Subcommand | Description |
| :-------------------------------------------------------------------- | :--------------------------------------------- |
| [trigger](/influxdb3/version/reference/cli/influxdb3/enable/trigger/) | Enable a trigger to enable plugin execution |
| help | Print command help or the help of a subcommand |
| help | Print command help or the help of a subcommand |
## Options
| Option | | Description |
| :----- | :------- | :--------------------- |
| `-h` | `--help` | Print help information |
| Option | | Description |
| :----- | :----------- | :------------------------------ |
| `-h` | `--help` | Print help information |
| | `--help-all` | Print detailed help information |

View File

@ -19,8 +19,10 @@ influxdb3 enable trigger [OPTIONS] --database <DATABASE_NAME> <TRIGGER_NAME>
| :----- | :----------- | :--------------------------------------------------------------------------------------- |
| `-H` | `--host` | Host URL of the running {{< product-name >}} server (default is `http://127.0.0.1:8181`) |
| `-d` | `--database` | _({{< req >}})_ Name of the database to operate on |
| | `--token` | Authentication token |
| | `--token` | _({{< req >}})_ Authentication token |
| | `--tls-ca` | Path to a custom TLS certificate authority (for testing or self-signed certificates) |
| `-h` | `--help` | Print help information |
| | `--help-all` | Print detailed help information |
### Option environment variables

View File

@ -28,12 +28,14 @@ influxdb3 query [OPTIONS] --database <DATABASE_NAME> [QUERY]...
| :----- | :----------- | :--------------------------------------------------------------------------------------- |
| `-H` | `--host` | Host URL of the running {{< product-name >}} server (default is `http://127.0.0.1:8181`) |
| `-d` | `--database` | _({{< req >}})_ Name of the database to operate on |
| | `--token` | Authentication token |
| | `--token` | _({{< req >}})_ Authentication token |
| `-l` | `--language` | Query language of the query string (`sql` _(default)_ or `influxql`) |
| | `--format` | Output format (`pretty` _(default)_, `json`, `jsonl`, `csv`, `parquet`) |
| `-o` | `--output` | Output query results to the specified file |
| `-f` | `--file` | A file that contains the query to execute |
| | `--tls-ca` | Path to a custom TLS certificate authority (for testing or self-signed certificates) |
| `-h` | `--help` | Print help information |
| | `--help-all` | Print detailed help information |
### Option environment variables
@ -70,21 +72,29 @@ with the name of the database to query.
<!--pytest.mark.skip-->
```bash
influxdb3 query --database DATABASE_NAME 'SELECT * FROM home'
influxdb3 query \
--database DATABASE_NAME \
--token AUTH_TOKEN \
'SELECT * FROM home'
```
{{% /code-tab-content %}}
{{% code-tab-content %}}
<!--pytest.mark.skip-->
```bash
influxdb3 query --database DATABASE_NAME --file ./query.sql
influxdb3 query \
--database DATABASE_NAME \
--token AUTH_TOKEN \
--file ./query.sql
```
{{% /code-tab-content %}}
{{% code-tab-content %}}
<!--pytest.mark.skip-->
```bash
cat ./query.sql | influxdb3 query --database DATABASE_NAME
cat ./query.sql | influxdb3 query \
--database DATABASE_NAME \
--token AUTH_TOKEN \
```
{{% /code-tab-content %}}
{{< /code-tabs-wrapper >}}
@ -104,6 +114,7 @@ cat ./query.sql | influxdb3 query --database DATABASE_NAME
influxdb3 query \
--language influxql \
--database DATABASE_NAME \
--token AUTH_TOKEN \
'SELECT * FROM home'
```
{{% /code-tab-content %}}
@ -114,6 +125,7 @@ influxdb3 query \
influxdb3 query \
--language influxql \
--database DATABASE_NAME \
--token AUTH_TOKEN \
--file ./query.influxql
```
{{% /code-tab-content %}}
@ -123,7 +135,8 @@ influxdb3 query \
```bash
cat ./query.influxql | influxdb3 query \
--language influxql \
--database DATABASE_NAME
--database DATABASE_NAME \
--token AUTH_TOKEN
```
{{% /code-tab-content %}}
{{< /code-tabs-wrapper >}}
@ -143,6 +156,7 @@ cat ./query.influxql | influxdb3 query \
influxdb3 query \
--format json \
--database DATABASE_NAME \
--token AUTH_TOKEN \
'SELECT * FROM home'
```
{{% /code-tab-content %}}
@ -153,6 +167,7 @@ influxdb3 query \
influxdb3 query \
--format json \
--database DATABASE_NAME \
--token AUTH_TOKEN \
--file ./query.sql
```
{{% /code-tab-content %}}
@ -162,7 +177,8 @@ influxdb3 query \
```bash
cat ./query.sql | influxdb3 query \
--format json \
--database DATABASE_NAME
--database DATABASE_NAME \
--token AUTH_TOKEN \
```
{{% /code-tab-content %}}
{{< /code-tabs-wrapper >}}
@ -182,6 +198,7 @@ cat ./query.sql | influxdb3 query \
influxdb3 query \
--output /path/to/results.txt \
--database DATABASE_NAME \
--token AUTH_TOKEN \
'SELECT * FROM home'
```
{{% /code-tab-content %}}
@ -192,6 +209,7 @@ influxdb3 query \
influxdb3 query \
--output /path/to/results.txt \
--database DATABASE_NAME \
--token AUTH_TOKEN \
--file ./query.sql
```
{{% /code-tab-content %}}
@ -201,7 +219,8 @@ influxdb3 query \
```bash
cat ./query.sql | influxdb3 query \
--output /path/to/results.txt \
--database DATABASE_NAME
--database DATABASE_NAME \
--token AUTH_TOKEN
```
{{% /code-tab-content %}}
{{< /code-tabs-wrapper >}}

View File

@ -19,6 +19,7 @@ influxdb3 show <SUBCOMMAND>
## Options
| Option | | Description |
| :----- | :------- | :--------------------- |
| `-h` | `--help` | Print help information |
| Option | | Description |
| :----- | :----------- | :------------------------------ |
| `-h` | `--help` | Print help information |
| | `--help-all` | Print detailed help information |

View File

@ -15,11 +15,12 @@ influxdb3 show databases [OPTIONS]
| Option | | Description |
| :----- | :--------------- | :--------------------------------------------------------------------------------------- |
| `-H` | `--host` | Host URL of the running {{< product-name >}} server (default is `http://127.0.0.1:8181`) |
| `-d` | `--database` | _({{< req >}})_ Name of the database to operate on |
| | `--token` | Authentication token |
| | `--token` | _({{< req >}})_ Authentication token |
| | `--show-deleted` | Include databases marked as deleted in the output |
| | `--format` | Output format (`pretty` _(default)_, `json`, `jsonl`, `csv`, or `parquet`) |
| | `--tls-ca` | Path to a custom TLS certificate authority (for testing or self-signed certificates) |
| `-h` | `--help` | Print help information |
| | `--help-all` | Print detailed help information |
### Option environment variables

View File

@ -25,12 +25,13 @@ system tables.
## Options
| Option | | Description |
| :----- | :--------------- | :--------------------------------------------------------------------------------------- |
| `-H` | `--host` | Host URL of the running {{< product-name >}} server (default is `http://127.0.0.1:8181`) |
| `-d` | `--database` | _({{< req >}})_ Name of the database to operate on |
| | `--token` | Authentication token |
| `-h` | `--help` | Print help information |
| Option | | Description |
| :----- | :----------- | :--------------------------------------------------------------------------------------- |
| `-H` | `--host` | Host URL of the running {{< product-name >}} server (default is `http://127.0.0.1:8181`) |
| `-d` | `--database` | _({{< req >}})_ Name of the database to operate on |
| | `--token` | Authentication token |
| `-h` | `--help` | Print help information |
| | `--help-all` | Print detailed help information |
### Option environment variables

View File

@ -12,11 +12,13 @@ influxdb3 show system --database <DATABASE_NAME> summary [OPTIONS]
## Options
| Option | | Description |
| :----- | :--------- | :--------------------------------------------------------------------------------------------- |
| `-l` | `--limit` | Maximum number of entries from each table to display (default is `10`, `0` indicates no limit) |
| | `--format` | Output format (`pretty` _(default)_, `json`, `jsonl`, `csv`, or `parquet`) |
| `-h` | `--help` | Print help information |
| Option | | Description |
| :----- | :----------- | :--------------------------------------------------------------------------------------------- |
| `-l` | `--limit` | Maximum number of entries from each table to display (default is `10`, `0` indicates no limit) |
| | `--format` | Output format (`pretty` _(default)_, `json`, `jsonl`, `csv`, or `parquet`) |
| | `--tls-ca` | Path to a custom TLS certificate authority (for testing or self-signed certificates) |
| `-h` | `--help` | Print help information |
| | `--help-all` | Print detailed help information |
## Examples

View File

@ -11,10 +11,12 @@ influxdb3 show system --database <DATABASE_NAME> table-list [OPTIONS]
## Options
| Option | | Description |
| :----- | :--------- | :--------------------------------------------------------------------------------------------- |
| | `--format` | Output format (`pretty` _(default)_, `json`, `jsonl`, `csv`, or `parquet`) |
| `-h` | `--help` | Print help information |
| Option | | Description |
| :----- | :----------- | :----------------------------------------------------------------------------------- |
| | `--format` | Output format (`pretty` _(default)_, `json`, `jsonl`, `csv`, or `parquet`) |
| | `--tls-ca` | Path to a custom TLS certificate authority (for testing or self-signed certificates) |
| `-h` | `--help` | Print help information |
| | `--help-all` | Print detailed help information |
## Examples

View File

@ -20,8 +20,10 @@ influxdb3 show system --database <DATABASE_NAME> table [OPTIONS] <SYSTEM_TABLE>
| `-l` | `--limit` | Maximum number of tables entries to display (default is `10`, `0` indicates no limit) |
| `-o` | `--order-by` | Order by the specified columns |
| `-s` | `--select` | Select specific columns from the system table |
| | `--format` | Output format (`pretty` _(default)_, `json`, `jsonl`, `csv`, or `parquet`) |
| | `--format` | Output format (`pretty` _(default)_, `json`, `jsonl`, `csv`, or `parquet`) |
| | `--tls-ca` | Path to a custom TLS certificate authority (for testing or self-signed certificates) |
| `-h` | `--help` | Print help information |
| | `--help-all` | Print detailed help information |
## Examples

View File

@ -11,13 +11,14 @@ influxdb3 test <SUBCOMMAND>
## Subcommands
| Subcommand | Description |
| :--------------------------------------------------------------------------- | :--------------------------------------------- |
| Subcommand | Description |
| :------------------------------------------------------------------------ | :--------------------------------------------- |
| [wal_plugin](/influxdb3/version/reference/cli/influxdb3/test/wal_plugin/) | Test a write-ahead log (WAL) plugin |
| help | Print command help or the help of a subcommand |
| help | Print command help or the help of a subcommand |
## Options
| Option | | Description |
| :----- | :------- | :--------------------- |
| `-h` | `--help` | Print help information |
| Option | | Description |
| :----- | :----------- | :------------------------------ |
| `-h` | `--help` | Print help information |
| | `--help-all` | Print detailed help information |

View File

@ -20,11 +20,13 @@ influxdb3 test wal_plugin [OPTIONS] --database <DATABASE_NAME> <PLUGIN_NAME>
| :----- | :------------------ | :--------------------------------------------------------------------------------------- |
| `-H` | `--host` | Host URL of the running {{< product-name >}} server (default is `http://127.0.0.1:8181`) |
| `-d` | `--database` | _({{< req >}})_ Name of the database to operate on |
| | `--token` | Authentication token |
| | `--token` | _({{< req >}})_ Authentication token |
| | `--lp` | Line protocol to use as input |
| | `--file` | Line protocol file to use as input |
| | `--input-arguments` | Map of string key-value pairs as to use as plugin input arguments |
| | `--tls-ca` | Path to a custom TLS certificate authority (for testing or self-signed certificates) |
| `-h` | `--help` | Print help information |
| | `--help-all` | Print detailed help information |
### Option environment variables
@ -48,12 +50,14 @@ In the examples below, replace the following:
- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}:
Database name
- {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}:
Authentication token
- {{% code-placeholder-key %}}`PLUGIN_DIR`{{% /code-placeholder-key %}}:
Plugin directory name
- {{% code-placeholder-key %}}`PLUGIN_NAME`{{% /code-placeholder-key %}}:
Plugin file name
{{% code-placeholders "(DATABASE|PLUGIN)_(NAME|DIR)" %}}
{{% code-placeholders "(DATABASE|PLUGIN)_(NAME|DIR)|AUTH_TOKEN" %}}
### Test a WAL plugin
@ -62,6 +66,7 @@ In the examples below, replace the following:
```bash
influxdb3 test wal_plugin \
--database DATABASE_NAME \
--token AUTH_TOKEN \
PLUGIN_DIR/PLUGIN_NAME.py
```
@ -73,6 +78,7 @@ influxdb3 test wal_plugin \
influxdb3 test wal_plugin \
--lp 'home,room=Kitchen temp=21.0,hum=35.9,co=0i' \
--database DATABASE_NAME \
--token AUTH_TOKEN \
PLUGIN_DIR/PLUGIN_NAME.py
```
@ -84,6 +90,7 @@ influxdb3 test wal_plugin \
influxdb3 test wal_plugin \
--file PLUGIN_DIR/PLUGIN_NAME_test/input-file.lp`
--database DATABASE_NAME \
--token AUTH_TOKEN \
PLUGIN_DIR/PLUGIN_NAME.py
```
@ -95,6 +102,7 @@ influxdb3 test wal_plugin \
influxdb3 test wal_plugin \
--input-arguments arg1=foo,arg2=baz \
--database DATABASE_NAME \
--token AUTH_TOKEN \
PLUGIN_DIR/PLUGIN_NAME.py
```

View File

@ -28,10 +28,12 @@ influxdb3 write [OPTIONS] --database <DATABASE_NAME> [LINE_PROTOCOL]...
| :----- | :----------------- | :--------------------------------------------------------------------------------------- |
| `-H` | `--host` | Host URL of the running {{< product-name >}} server (default is `http://127.0.0.1:8181`) |
| `-d` | `--database` | _({{< req >}})_ Name of the database to operate on |
| | `--token` | Authentication token |
| | `--token` | _({{< req >}})_ Authentication token |
| `-f` | `--file` | A file that contains line protocol to write |
| | `--accept-partial` | Accept partial writes |
| | `--tls-ca` | Path to a custom TLS certificate authority (for testing or self-signed certificates) |
| `-h` | `--help` | Print help information |
| | `--help-all` | Print detailed help information |
### Option environment variables
@ -48,11 +50,14 @@ You can use the following environment variables to set command options:
- [Write line protocol to your InfluxDB 3 server](#write-line-protocol-to-your-influxdb-3-server)
- [Write line protocol and accept partial writes](#write-line-protocol-and-accept-partial-writes)
In the examples below, replace
{{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}:
with the name of the database to query.
In the examples below, replace the following:
{{% code-placeholders "DATABASE_NAME" %}}
- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}:
the name of the database to query
- {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}:
Authentication token
{{% code-placeholders "DATABASE_NAME|AUTH_TOKEN" %}}
### Write line protocol to your InfluxDB 3 server
@ -67,7 +72,9 @@ with the name of the database to query.
<!--pytest.mark.skip-->
```bash
influxdb3 write --database DATABASE_NAME \
influxdb3 write \
--database DATABASE_NAME \
--token AUTH_TOKEN \
'home,room=Living\ Room temp=21.1,hum=35.9,co=0i 1641024000'
```
{{% /influxdb/custom-timestamps %}}
@ -76,14 +83,19 @@ influxdb3 write --database DATABASE_NAME \
<!--pytest.mark.skip-->
```bash
influxdb3 write --database DATABASE_NAME --file ./data.lp
influxdb3 write \
--database DATABASE_NAME \
--token AUTH_TOKEN \
--file ./data.lp
```
{{% /code-tab-content %}}
{{% code-tab-content %}}
<!--pytest.mark.skip-->
```bash
cat ./data.lp | influxdb3 write --database DATABASE_NAME
cat ./data.lp | influxdb3 write \
--database DATABASE_NAME \
--token AUTH_TOKEN
```
{{% /code-tab-content %}}
{{< /code-tabs-wrapper >}}
@ -104,6 +116,7 @@ cat ./data.lp | influxdb3 write --database DATABASE_NAME
influxdb3 write \
--accept-partial \
--database DATABASE_NAME \
--token AUTH_TOKEN \
'home,room=Living\ Room temp=21.1,hum=35.9,co=0i 1641024000'
```
{{% /influxdb/custom-timestamps %}}
@ -115,6 +128,7 @@ influxdb3 write \
influxdb3 write \
--accept-partial \
--database DATABASE_NAME \
--token AUTH_TOKEN \
--file ./data.lp
```
{{% /code-tab-content %}}
@ -125,6 +139,7 @@ influxdb3 write \
cat ./data.lp | influxdb3 write \
--accept-partial \
--database DATABASE_NAME \
--token AUTH_TOKEN
```
{{% /code-tab-content %}}
{{< /code-tabs-wrapper >}}

View File

@ -35,14 +35,15 @@ For more information, see how to [get started with Enterprise](/influxdb3/enterp
This guide covers InfluxDB 3 Core (the open source release), including the following topics:
* [Install and startup](#install-and-startup)
* [Data Model](#data-model)
* [Tools to use](#tools-to-use)
* [Write data](#write-data)
* [Query data](#query-data)
* [Last values cache](#last-values-cache)
* [Distinct values cache](#distinct-values-cache)
* [Python plugins and the processing engine](#python-plugins-and-the-processing-engine)
- [Install and startup](#install-and-startup)
- [Authentication and authorization](#authentication-and-authorization)
- [Data Model](#data-model)
- [Tools to use](#tools-to-use)
- [Write data](#write-data)
- [Query data](#query-data)
- [Last values cache](#last-values-cache)
- [Distinct values cache](#distinct-values-cache)
- [Python plugins and the processing engine](#python-plugins-and-the-processing-engine)
### Install and startup
@ -228,6 +229,40 @@ For more information about server options, use the CLI help:
influxdb3 serve --help
```
### Authentication and authorization
After you have [started the server](#start-influxdb), you can create and manage tokens using the `influxdb3` CLI or the HTTP API.
{{% product-name %}} uses token-based authentication and authorization which is enabled by default when you start the server.
With authentication enabled, you must provide a token to access server actions.
An {{% product-name %}} instance can have one _admin token_, which grants access to all CLI actions and API endpoints.
When you create a token, InfluxDB 3 returns a token string in plain text
that you use to authenticate CLI commands and API requests.
Securely store your token, as you won't be able to retrieve it later.
To have the `influxdb3` CLI use your admin token automatically, assign it to the
`INFLUXDB3_AUTH_TOKEN` environment variable.
> [!Important]
>
> #### Securely store your tokens
>
> For security, InfluxDB only lets you view tokens when you create them.
> InfluxDB 3 stores a hash of the token in the catalog, so you can't retrieve the token after it is created.
#### Create an admin token
To create an admin token, use the `influxdb3 create token --admin` subcommand--for example:
```bash
influxdb3 create token --admin \
--host http://{{< influxdb/host >}}
```
The command returns a token string that you can use to authenticate CLI commands and API requests.
Securely store your token, as you won't be able to retrieve it later.
For more information, see how to [Manage admin tokens](/influxdb3/version/admin/tokens/admin/).
### Data model
The database server contains logical databases, which have tables, which have columns. Compared to previous versions of InfluxDB you can think of a database as a `bucket` in v2 or as a `db/retention_policy` in v1. A `table` is equivalent to a `measurement`, which has columns that can be of type `tag` (a string dictionary), `int64`, `float64`, `uint64`, `bool`, or `string` and finally every table has a `time` column that is a nanosecond precision timestamp.

View File

@ -33,15 +33,16 @@ The Enterprise version adds the following features to Core:
This guide covers Enterprise as well as InfluxDB 3 Core, including the following topics:
* [Install and startup](#install-and-startup)
* [Data Model](#data-model)
* [Tools to use](#tools-to-use)
* [Write data](#write-data)
* [Query data](#query-data)
* [Last values cache](#last-values-cache)
* [Distinct values cache](#distinct-values-cache)
* [Python plugins and the processing engine](#python-plugins-and-the-processing-engine)
* [Multi-server setups](#multi-server-setup)
- [Install and startup](#install-and-startup)
- [Authentication and authorization](#authentication-and-authorization)
- [Data Model](#data-model)
- [Tools to use](#tools-to-use)
- [Write data](#write-data)
- [Query data](#query-data)
- [Last values cache](#last-values-cache)
- [Distinct values cache](#distinct-values-cache)
- [Python plugins and the processing engine](#python-plugins-and-the-processing-engine)
- [Multi-server setups](#multi-server-setup)
### Install and startup
@ -241,6 +242,138 @@ Upon verification, the license creation, retrieval, and application are automate
_During the beta period, licenses are valid until May 7, 2025._
### Authentication and authorization
After you have [started the server](#start-influxdb), you can create and manage tokens using the `influxdb3` CLI or the HTTP API.
{{% product-name %}} uses token-based authentication and authorization which is enabled by default when you start the server.
With authentication enabled, you must provide a token to access server actions.
{{% product-name %}} supports the following types of tokens:
- **admin token**: Grants access to all CLI actions and API endpoints. A server can have one admin token.
- **resource tokens**: Fine-grained permissions tokens that grant read and write access to specific resources (databases and system information endpoints) on the server.
- A database token grants access to write and query data in a
database
- A system token grants read access to system information endpoints and
metrics for the server
InfluxDB 3 supports the `*` resource name wildcard to grant permissions to all
resources of a specific type.
You can create multiple resource tokens for different resources.
When you create a token, InfluxDB 3 returns a token string in plain text
that you use to authenticate CLI commands and API requests.
Securely store your token, as you won't be able to retrieve it later.
To have the `influxdb3` CLI use your admin token automatically, assign it to the
`INFLUXDB3_AUTH_TOKEN` environment variable.
> [!Important]
>
> #### Securely store your tokens
>
> For security, InfluxDB only lets you view tokens when you create them.
> InfluxDB 3 stores a hash of the token in the catalog, so you can't retrieve the token after it is created.
#### Create an admin token
To create an admin token, use the `influxdb3 create token --admin` subcommand--for example:
```bash
influxdb3 create token --admin \
--host http://{{< influxdb/host >}}
```
The command returns a token string that you can use to authenticate CLI commands and API requests.
Securely store your token, as you won't be able to retrieve it later.
After you have created an admin token, you can use it to create database tokens and system tokens.
For more information, see how to [Manage admin tokens](/influxdb3/version/admin/tokens/admin/).
#### Create a database token
To create a database token, use the `influxdb3 create token` subcommand and pass the following:
- `--permission`: Create a token with permissions
- `--name`: A unique description of the token
- _Options_, for example:
- `--expiry` option with the token expiration time as a [duration](/influxdb3/enterprise/reference/glossary/#duration).
If an expiration isn't set, the token does not expire until revoked.
- `--token` option with the admin token to use for authentication
- Token permissions as a string literal in the `RESOURCE_TYPE:RESOURCE_NAMES:ACTIONS` format--for example:
- `"db:mydb:read,write"`
- `db:`: The `db` resource type, which specifies the token is for a database.
- `mydb`: The name of the database to grant permissions to. This part supports the `*` wildcard, which grants permissions to all databases.
- `read,write`: The permissions to grant to the token.
The following example shows how to create a database token that expires in 90 days and has read and write permissions for all databases on the server:
{{% code-placeholders "ADMIN_TOKEN" %}}
```bash
influxdb3 create token \
--permission \
--expiry 90d \
--token ADMIN_TOKEN \
--host http://{{< influxdb/host >}} \
--name "rw all databases" \
"db:*:read,write"
```
{{% /code-placeholders %}}
In your command, replace {{% code-placeholder-key %}} `ADMIN_TOKEN`{{% /code-placeholder-key %}}
with the admin token you created earlier.
#### Create a system token
A _system token_ grants read access to system information and metrics for the server, including the following HTTP API endpoints:
- `/health`
- `/metrics`
- `/ping`
To create a system token, use the `influxdb3 create token` subcommand and pass the following:
- `--permission`: Create a token with permissions
- `--name`: A unique description of the token
- _Options_, for example:
- `--expiry` option with the token expiration time as a [duration](/influxdb3/enterprise/reference/glossary/#duration).
If an expiration isn't set, the token does not expire until revoked.
- `--token` option with the admin token to use for authentication
- `--host` option with the server host
- Token permissions as a string literal in the `RESOURCE_TYPE:RESOURCE_NAMES:ACTIONS` format--for example:
- `"system:health:read"` or `"system:*:read"`
- `system:`: The `system` resource type, which specifies the token is for a database.
- `health`: The system resource (endpoint) to grant permissions to. This part supports the `*` wildcard, which grants permissions to all databases.
- `read`: Grant read permission to system information resources.
The following example shows how to create a system token that expires in 1 year and has read permissions for all system endpoints on the server:
```bash
influxdb3 create token \
--permission \
--expiry 1y \
--token ADMIN_TOKEN \
--host http://{{< influxdb/host >}} \
--name "rw all system endpoints" \
"system:*:read"
```
For more information, see how to [Manage resource tokens](/influxdb3/version/admin/tokens/resource/).
#### Use tokens to authorize CLI commands and API requests
- To authenticate `influxdb3` CLI commands, use the `--token` option or assign your
token to the `INFLUXDB3_AUTH_TOKEN` environment variable for `influxdb3` to use it automatically.
- To authenticate HTTP API requests, include `Bearer <TOKEN>` in the `Authorization` header value--for example:
```bash
curl "http://{{< influxdb/host >}}/health" \
--header "Authorization: Bearer SYSTEM_TOKEN"
```
In your request, replace
{{% code-placeholder-key %}}`SYSTEM_TOKEN`{{% /code-placeholder-key %}} with the system token you created earlier.
### Data model
The database server contains logical databases, which have tables, which have columns. Compared to previous versions of InfluxDB you can think of a database as a `bucket` in v2 or as a `db/retention_policy` in v1. A `table` is equivalent to a `measurement`, which has columns that can be of type `tag` (a string dictionary), `int64`, `float64`, `uint64`, `bool`, or `string` and finally every table has a `time` column that is a nanosecond precision timestamp.

View File

@ -6,6 +6,7 @@
# - list of URL paths to show the notification on, no scope shows everywhere
# exclude:
# - list of URL paths to not show the notification on
# title_tag: (optional) Tag to include before the notification title
# title: Message title
# slug: (optional) Short notification summary
# message: |
@ -39,25 +40,26 @@
# - [The plan for InfluxDB 3.0 Open Source](https://influxdata.com/blog/the-plan-for-influxdb-3-0-open-source)
# - [InfluxDB 3.0 benchmarks](https://influxdata.com/blog/influxdb-3-0-is-2.5x-45x-faster-compared-to-influxdb-open-source/)
- id: influxdb3-beta
level: note
- id: influxdb3-ga
level: ga-announcement
scope:
- /
title: InfluxDB 3 Core and Enterprise are now in Beta
title_tag: Now Generally Available
title: InfluxDB 3 Core and Enterprise
slug: |
InfluxDB 3 Core and Enterprise are now available for beta testing, available
under MIT or Apache 2 license.
Start fast. Scale faster.
<a class="btn" href="https://www.influxdata.com/blog/influxdb-3-OSS-GA/">Get the Updates</a>
message: |
InfluxDB 3 Core is a high-speed, recent-data engine that collects and
processes data in real-time, while persisting it to local disk or object
storage. InfluxDB 3 Enterprise is a commercial product that builds on Cores
foundation, adding high availability, read replicas, enhanced security, and
data compaction for faster queries. A free tier of InfluxDB 3 Enterprise
will also be available for at-home, non-commercial use for hobbyists to get
the full historical time series database set of capabilities.
InfluxDB 3 Core is an open source, high-speed, recent-data engine that collects
and processes data in real-time and persists it to local disk or object storage.
InfluxDB 3 Enterprise builds on Cores foundation, adding high availability,
read replicas, enhanced security, and data compaction for faster queries and
optimized storage. A free tier of InfluxDB 3 Enterprise is available for
non-commercial at-home or hobbyist use.
For more information, check out:
- [Beta announcement blog from Paul Dix](https://www.influxdata.com/blog/influxdb3-open-source-public-beta/)
- [Announcement blog from Paul Dix](https://www.influxdata.com/blog/influxdb-3-OSS-GA/)
- [Get Started with InfluxDB 3 Core](https://docs.influxdata.com/influxdb3/core/get-started/)
- [Get Started with InfluxDB 3 Enterprise](https://docs.influxdata.com/influxdb3/enterprise/get-started/)

View File

@ -88,8 +88,8 @@ influxdb:
latest_cli:
v2: 2.7.5
ai_sample_questions:
- How do I write and query data with InfluxDB v2 OSS?
- How can I migrate from InfluxDB v2 OSS to InfluxDB 3 Core?
- How do I write and query data with InfluxDB v2 OSS?
- How can I migrate from InfluxDB v2 OSS to InfluxDB 3 Core?
- How do I manage auth tokens in InfluxDB v2 OSS?
influxdb_cloud:
@ -102,8 +102,8 @@ influxdb_cloud:
latest: cloud
placeholder_host: cloud2.influxdata.com
ai_sample_questions:
- How do I write and query data with InfluxDB Cloud 2?
- How is Cloud 2 different from Cloud Serverless?
- How do I write and query data with InfluxDB Cloud 2?
- How is Cloud 2 different from Cloud Serverless?
- How do I manage auth tokens in InfluxDB Cloud 2?
telegraf:
@ -128,7 +128,7 @@ chronograf:
versions: [v1]
latest: v1.10
latest_patches:
v1: 1.10.6
v1: 1.10.7
ai_sample_questions:
- How do I configure Chronograf for InfluxDB v1?
- How do I create a dashboard in Chronograf?
@ -158,7 +158,7 @@ enterprise_influxdb:
latest_patches:
v1: 1.11.8
ai_sample_questions:
- How can I configure my InfluxDB v1 Enterprise server?
- How can I configure my InfluxDB v1 Enterprise server?
- How do I replicate data between InfluxDB v1 Enterprise and OSS?
- How do I query data stored in InfluxDB v1?

View File

@ -36,7 +36,7 @@
<h4>Self-managed</h4>
</div>
<div class="products">
<div class="product beta">
<div class="product new">
<div class="product-info">
<h3><a href="/influxdb3/core/">InfluxDB 3 Core</a></h3>
<p>The open source recent data engine optimized for time series and event data.</p>
@ -46,7 +46,7 @@
<li><a href="/influxdb3/core/">View documentation</a></li>
</ul>
</div>
<div class="product beta">
<div class="product new">
<div class="product-info">
<h3><a href="/influxdb3/enterprise/">InfluxDB 3 Enterprise</a></h3>
<p>The scalable data engine built for recent and historical time series and event data.</p>

View File

@ -5,7 +5,6 @@
{{ partial "article/supported-versions.html" . }}
{{ partial "article/page-meta.html" . }}
</div>
{{ partial "article/beta.html" . }}
{{ partial "article/stable-version.html" . }}
{{ partial "article/flux-experimental.html" . }}
{{ partial "article/flux-contrib.html" . }}

View File

@ -1,80 +0,0 @@
<!-- This partial is no longer used but may be repurposed later for other InfluxDB products -->
{{ $productPathData := findRE "[^/]+.*?" .RelPermalink }}
{{ $product := index $productPathData 0 }}
{{ $version := index $productPathData 1 }}
{{ $productKey := cond (eq $product "influxdb3") (print "influxdb3_" (replaceRE "-" "_" $version)) $product }}
{{ $productData := index $.Site.Data.products $productKey }}
{{ $displayName := $productData.altname }}
{{ $earlyAccessList := slice "influxdb3/core" "influxdb3/enterprise" }}
{{ if in $earlyAccessList (print $product "/" $version )}}
<div class="block beta">
<div class="beta-content">
<h4>{{ $displayName }} is in Public Beta</h4>
<p>
{{ $displayName }} is in public beta and available for testing and feedback,
but is <strong>not meant for production use yet</strong>.
Both the product and this documentation are works in progress.
We welcome and encourage your input about your experience with the beta and
invite you to <strong>join our public channels</strong> for updates and to
share feedback.
</p>
<div class="expand-wrapper">
<div class="expand" id="beta-expecations">
<p class="expand-label">
<span class="expand-toggle"></span><span>Beta expectations and recommendations</span>
</p>
<div class="expand-content" style="display: none;" >
<ul>
<li>
<strong>No more breaking changes</strong> <br/>
While in beta, we will no longer make breaking changes to the
{{ $displayName }} API. Any updates to file formats or organization
will have in-place upgrade paths for beta builds. Use the Beta
for testing and validation purposes, knowing that when you upgrade,
your data will come with it, and your APIs will all work the same.
</li>
<li>
<strong>Weekly releases</strong> <br/>
While in beta, well be making weekly {{ $displayName }} releases
and providing release notes to make it easy to track updates.
</li>
<li>
<strong>Processing engine is still in alpha</strong> <br/>
The embedded Python VM that is the processing engine should still
be considered alpha software. It is fully functional and allows
users to create and share plugins that trigger off of writes, a
schedule, or requests to an HTTP endpoint. However, we want to
continue iterating on user feedback and making changes where they
make sense. While we don't anticipate any breaking changes,
we're not yet committed to the current API as the long term
support target. Feedback we get during this phase will be important
to fine-tune the API for our users' needs.
</li>
<li>
<strong>Object store file organization and format</strong> <br/>
{{ $displayName }} supports a "diskless" architecture, keeping all
state in object storage. The specific file organization and format
are <em>not</em> part of a stable API. Only the HTTP and Apache
Arrow Flight APIs are considered stable.
</li>
</ul>
</div>
</div>
<div class="expand" id="beta-feedback-channels">
<p class="expand-label">
<span class="expand-toggle"></span><span>Join our public channels</span>
</p>
<div class="expand-content" style="display: none;" >
<ul class="feedback-channels">
<li><a href="https://discord.gg/9zaNCW2PRT" target="_blank" class="discord">InfluxDB Discord Server <em style="opacity:.5">(Preferred)</em></a></li>
<li><a href="https://community.influxdata.com" target="_blank" class="community">InfluxData Community</a></li>
<li><a href="https://influxdata.com/slack" target="_blank" class="slack">InfluxDB Community Slack</a></li>
<li><a href="https://reddit.com/r/influxdb" target="_blank" class="reddit">InfluxDB Subreddit</a></li>
</ul>
</div>
</div>
</div>
</div>
</div>
{{ end }}

View File

@ -53,8 +53,10 @@
To find support, use the following resources:
</p>
<ul>
<li><a class="discord" href="https://discord.gg/9zaNCW2PRT" target="_blank" >InfluxDB Discord Server <em style="opacity:.5">(Preferred)</em></a></li>
<li><a class="community" href="https://community.influxdata.com/" target="_blank">InfluxData Community</a></li>
<li><a class="slack" href="https://influxdata.com/slack" target="_blank">InfluxDB Community Slack</a></li>
<li><a class="reddit" href="https://reddit.com/r/influxdb" target="_blank">InfluxDB Subreddit</a></li>
</ul>
{{ if not (in $supportBlacklist $product) }}
<p><strong>Customers with an annual or support contract</strong> can <a href="https://support.influxdata.com/">contact InfluxData Support</a>.</p>

Some files were not shown because too many files have changed in this diff Show More