From e2b72a73626c91d5219585191b58a9b027527772 Mon Sep 17 00:00:00 2001 From: Scott Anderson Date: Mon, 14 Apr 2025 09:27:20 -0600 Subject: [PATCH 01/44] InfluxDB 3 Core and Enterprise GA visual updates (#5970) * added ga notification with styles, removed beta block, relocated community links * Apply suggestions from code review Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --------- Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- assets/styles/layouts/_homepage.scss | 4 +- assets/styles/layouts/_notifications.scss | 30 +++++ assets/styles/layouts/article/_blocks.scss | 3 +- assets/styles/layouts/article/_feedback.scss | 48 ++++++-- .../styles/layouts/article/blocks/_beta.scss | 105 ------------------ data/notifications.yaml | 28 ++--- layouts/index.html | 4 +- layouts/partials/article.html | 1 - layouts/partials/article/beta.html | 80 ------------- layouts/partials/article/feedback.html | 2 + layouts/partials/footer/notifications.html | 3 +- static/svgs/influxdb3-ga-background.svg | 66 +++++++++++ 12 files changed, 159 insertions(+), 215 deletions(-) delete mode 100644 assets/styles/layouts/article/blocks/_beta.scss delete mode 100644 layouts/partials/article/beta.html create mode 100644 static/svgs/influxdb3-ga-background.svg diff --git a/assets/styles/layouts/_homepage.scss b/assets/styles/layouts/_homepage.scss index 387c4b6be..a0583b4c9 100644 --- a/assets/styles/layouts/_homepage.scss +++ b/assets/styles/layouts/_homepage.scss @@ -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; diff --git a/assets/styles/layouts/_notifications.scss b/assets/styles/layouts/_notifications.scss index 00034186a..e7418ff82 100644 --- a/assets/styles/layouts/_notifications.scss +++ b/assets/styles/layouts/_notifications.scss @@ -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;} } } diff --git a/assets/styles/layouts/article/_blocks.scss b/assets/styles/layouts/article/_blocks.scss index 62b205491..090ee9560 100644 --- a/assets/styles/layouts/article/_blocks.scss +++ b/assets/styles/layouts/article/_blocks.scss @@ -96,5 +96,4 @@ blockquote { "blocks/tip", "blocks/important", "blocks/warning", - "blocks/caution", - "blocks/beta"; + "blocks/caution"; diff --git a/assets/styles/layouts/article/_feedback.scss b/assets/styles/layouts/article/_feedback.scss index 7578943ee..aba35b825 100644 --- a/assets/styles/layouts/article/_feedback.scss +++ b/assets/styles/layouts/article/_feedback.scss @@ -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; } } } diff --git a/assets/styles/layouts/article/blocks/_beta.scss b/assets/styles/layouts/article/blocks/_beta.scss deleted file mode 100644 index 7c6636b94..000000000 --- a/assets/styles/layouts/article/blocks/_beta.scss +++ /dev/null @@ -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;} - } - } - } - } - } - } -} \ No newline at end of file diff --git a/data/notifications.yaml b/data/notifications.yaml index 76c136e0f..ef9fa720b 100644 --- a/data/notifications.yaml +++ b/data/notifications.yaml @@ -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. + + Get the Updates 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 Core’s - 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 Core’s 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/) diff --git a/layouts/index.html b/layouts/index.html index 962c9522e..62d82ec82 100644 --- a/layouts/index.html +++ b/layouts/index.html @@ -36,7 +36,7 @@

Self-managed

-
+

InfluxDB 3 Core

The open source recent data engine optimized for time series and event data.

@@ -46,7 +46,7 @@
  • View documentation
  • -
    +

    InfluxDB 3 Enterprise

    The scalable data engine built for recent and historical time series and event data.

    diff --git a/layouts/partials/article.html b/layouts/partials/article.html index bbe22ed84..986e59f30 100644 --- a/layouts/partials/article.html +++ b/layouts/partials/article.html @@ -5,7 +5,6 @@ {{ partial "article/supported-versions.html" . }} {{ partial "article/page-meta.html" . }}
    - {{ partial "article/beta.html" . }} {{ partial "article/stable-version.html" . }} {{ partial "article/flux-experimental.html" . }} {{ partial "article/flux-contrib.html" . }} diff --git a/layouts/partials/article/beta.html b/layouts/partials/article/beta.html deleted file mode 100644 index a5eeaa045..000000000 --- a/layouts/partials/article/beta.html +++ /dev/null @@ -1,80 +0,0 @@ - -{{ $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 )}} -
    -
    -

    {{ $displayName }} is in Public Beta

    -

    - {{ $displayName }} is in public beta and available for testing and feedback, - but is not meant for production use yet. - 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 join our public channels for updates and to - share feedback. -

    -
    -
    -

    - Beta expectations and recommendations -

    - -
    - -
    -
    -
    -{{ end }} \ No newline at end of file diff --git a/layouts/partials/article/feedback.html b/layouts/partials/article/feedback.html index 28d3e273b..20519be3f 100644 --- a/layouts/partials/article/feedback.html +++ b/layouts/partials/article/feedback.html @@ -53,8 +53,10 @@ To find support, use the following resources:

    {{ if not (in $supportBlacklist $product) }}

    Customers with an annual or support contract can contact InfluxData Support.

    diff --git a/layouts/partials/footer/notifications.html b/layouts/partials/footer/notifications.html index 1e1dfa27a..35465fef9 100644 --- a/layouts/partials/footer/notifications.html +++ b/layouts/partials/footer/notifications.html @@ -3,7 +3,8 @@
    -

    {{ .title }}

    + {{ if .title_tag }}{{ .title_tag }}{{ end }} +

    {{ .title | markdownify }}

    {{ if .slug }}
    diff --git a/static/svgs/influxdb3-ga-background.svg b/static/svgs/influxdb3-ga-background.svg new file mode 100644 index 000000000..b191a1862 --- /dev/null +++ b/static/svgs/influxdb3-ga-background.svg @@ -0,0 +1,66 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file From 92f34a53007bf8842ec345d80fa98a0ad3960694 Mon Sep 17 00:00:00 2001 From: Scott Anderson Date: Mon, 14 Apr 2025 10:28:19 -0600 Subject: [PATCH 02/44] Add LVC management docs to Core and Enterprise (#5971) * add LVC management docs * Apply suggestions from code review Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * enterprise rebuilds LVCs on restart * Apply suggestions from code review Co-authored-by: Jason Stirnaman --------- Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> Co-authored-by: Jason Stirnaman --- .../core/admin/last-value-cache/_index.md | 20 +++ .../core/admin/last-value-cache/create.md | 50 ++++++ .../core/admin/last-value-cache/delete.md | 27 +++ .../core/admin/last-value-cache/query.md | 26 +++ .../core/admin/last-value-cache/show.md | 25 +++ .../admin/last-value-cache/_index.md | 20 +++ .../admin/last-value-cache/create.md | 50 ++++++ .../admin/last-value-cache/delete.md | 27 +++ .../admin/last-value-cache/query.md | 26 +++ .../enterprise/admin/last-value-cache/show.md | 25 +++ .../last-value-cache/_index.md | 160 ++++++++++++++++++ .../last-value-cache/create.md | 122 +++++++++++++ .../last-value-cache/delete.md | 39 +++++ .../influxdb3-admin/last-value-cache/query.md | 34 ++++ .../influxdb3-admin/last-value-cache/show.md | 68 ++++++++ 15 files changed, 719 insertions(+) create mode 100644 content/influxdb3/core/admin/last-value-cache/_index.md create mode 100644 content/influxdb3/core/admin/last-value-cache/create.md create mode 100644 content/influxdb3/core/admin/last-value-cache/delete.md create mode 100644 content/influxdb3/core/admin/last-value-cache/query.md create mode 100644 content/influxdb3/core/admin/last-value-cache/show.md create mode 100644 content/influxdb3/enterprise/admin/last-value-cache/_index.md create mode 100644 content/influxdb3/enterprise/admin/last-value-cache/create.md create mode 100644 content/influxdb3/enterprise/admin/last-value-cache/delete.md create mode 100644 content/influxdb3/enterprise/admin/last-value-cache/query.md create mode 100644 content/influxdb3/enterprise/admin/last-value-cache/show.md create mode 100644 content/shared/influxdb3-admin/last-value-cache/_index.md create mode 100644 content/shared/influxdb3-admin/last-value-cache/create.md create mode 100644 content/shared/influxdb3-admin/last-value-cache/delete.md create mode 100644 content/shared/influxdb3-admin/last-value-cache/query.md create mode 100644 content/shared/influxdb3-admin/last-value-cache/show.md diff --git a/content/influxdb3/core/admin/last-value-cache/_index.md b/content/influxdb3/core/admin/last-value-cache/_index.md new file mode 100644 index 000000000..20013f73b --- /dev/null +++ b/content/influxdb3/core/admin/last-value-cache/_index.md @@ -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 +--- + + diff --git a/content/influxdb3/core/admin/last-value-cache/create.md b/content/influxdb3/core/admin/last-value-cache/create.md new file mode 100644 index 000000000..f7ab5631c --- /dev/null +++ b/content/influxdb3/core/admin/last-value-cache/create.md @@ -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" %}} + + + ```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" %}} + + + ```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 +--- + + diff --git a/content/influxdb3/core/admin/last-value-cache/delete.md b/content/influxdb3/core/admin/last-value-cache/delete.md new file mode 100644 index 000000000..db0060262 --- /dev/null +++ b/content/influxdb3/core/admin/last-value-cache/delete.md @@ -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: | + + + ```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 +--- + + diff --git a/content/influxdb3/core/admin/last-value-cache/query.md b/content/influxdb3/core/admin/last-value-cache/query.md new file mode 100644 index 000000000..a634d3600 --- /dev/null +++ b/content/influxdb3/core/admin/last-value-cache/query.md @@ -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 +--- + + diff --git a/content/influxdb3/core/admin/last-value-cache/show.md b/content/influxdb3/core/admin/last-value-cache/show.md new file mode 100644 index 000000000..9d66333dd --- /dev/null +++ b/content/influxdb3/core/admin/last-value-cache/show.md @@ -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: | + + + ```bash + influxdb3 show system \ + --database example-db \ + --token 00xoXX0xXXx0000XxxxXx0Xx0xx0 \ + table last_caches + ``` +source: /shared/influxdb3-admin/last-value-cache/show.md +--- + + diff --git a/content/influxdb3/enterprise/admin/last-value-cache/_index.md b/content/influxdb3/enterprise/admin/last-value-cache/_index.md new file mode 100644 index 000000000..d2f89fa2f --- /dev/null +++ b/content/influxdb3/enterprise/admin/last-value-cache/_index.md @@ -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 +--- + + diff --git a/content/influxdb3/enterprise/admin/last-value-cache/create.md b/content/influxdb3/enterprise/admin/last-value-cache/create.md new file mode 100644 index 000000000..cd33b9c4a --- /dev/null +++ b/content/influxdb3/enterprise/admin/last-value-cache/create.md @@ -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" %}} + + + ```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" %}} + + + ```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 +--- + + diff --git a/content/influxdb3/enterprise/admin/last-value-cache/delete.md b/content/influxdb3/enterprise/admin/last-value-cache/delete.md new file mode 100644 index 000000000..9361bf9b0 --- /dev/null +++ b/content/influxdb3/enterprise/admin/last-value-cache/delete.md @@ -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: | + + + ```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 +--- + + diff --git a/content/influxdb3/enterprise/admin/last-value-cache/query.md b/content/influxdb3/enterprise/admin/last-value-cache/query.md new file mode 100644 index 000000000..e94e85e97 --- /dev/null +++ b/content/influxdb3/enterprise/admin/last-value-cache/query.md @@ -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 +--- + + diff --git a/content/influxdb3/enterprise/admin/last-value-cache/show.md b/content/influxdb3/enterprise/admin/last-value-cache/show.md new file mode 100644 index 000000000..6e981ed38 --- /dev/null +++ b/content/influxdb3/enterprise/admin/last-value-cache/show.md @@ -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: | + + + ```bash + influxdb3 show system \ + --database example-db \ + --token 00xoXX0xXXx0000XxxxXx0Xx0xx0 \ + table last_caches + ``` +source: /shared/influxdb3-admin/last-value-cache/show.md +--- + + diff --git a/content/shared/influxdb3-admin/last-value-cache/_index.md b/content/shared/influxdb3-admin/last-value-cache/_index.md new file mode 100644 index 000000000..6be6100d8 --- /dev/null +++ b/content/shared/influxdb3-admin/last-value-cache/_index.md @@ -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. +- Don’t 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. diff --git a/content/shared/influxdb3-admin/last-value-cache/create.md b/content/shared/influxdb3-admin/last-value-cache/create.md new file mode 100644 index 000000000..ea66a6f3b --- /dev/null +++ b/content/shared/influxdb3-admin/last-value-cache/create.md @@ -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 >}} + authentication token with write access to the specified table. + You can also use the `INFLUXDB3_AUTH_TOKEN` environment variable to specify + the database. +- **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 don’t provide one, + InfluxDB automatically generates a cache name for you. + +{{% show-in "core" %}} + +{{% code-placeholders "(DATABASE|TABLE|LVC)_NAME|AUTH_TOKEN|(KEY|VALUE)_COLUMNS|COUNT|TTL" %}} + + + +```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 %}} + +{{% /show-in %}} + +{{% show-in "enterprise" %}} + +{{% code-placeholders "(DATABASE|TABLE|LVC)_NAME|AUTH_TOKEN|NODE_SPEC|(KEY|VALUE)_COLUMNS|COUNT|TTL" %}} + + + +```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 %}} + +{{% /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 >}} authentication token with write access to the + specified database +- {{% 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). diff --git a/content/shared/influxdb3-admin/last-value-cache/delete.md b/content/shared/influxdb3-admin/last-value-cache/delete.md new file mode 100644 index 000000000..9cb535a76 --- /dev/null +++ b/content/shared/influxdb3-admin/last-value-cache/delete.md @@ -0,0 +1,39 @@ + +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 >}} + authentication token with write access to the specified database. + 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 >}} authentication token with write access to the + specified database +- {{% code-placeholder-key %}}`TABLE_NAME`{{% /code-placeholder-key %}}: + the name of the table that the LVC you want to delete is associated with + 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. diff --git a/content/shared/influxdb3-admin/last-value-cache/query.md b/content/shared/influxdb3-admin/last-value-cache/query.md new file mode 100644 index 000000000..b31f407f9 --- /dev/null +++ b/content/shared/influxdb3-admin/last-value-cache/query.md @@ -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' +``` diff --git a/content/shared/influxdb3-admin/last-value-cache/show.md b/content/shared/influxdb3-admin/last-value-cache/show.md new file mode 100644 index 000000000..e4100ca89 --- /dev/null +++ b/content/shared/influxdb3-admin/last-value-cache/show.md @@ -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" %}} + + +```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" %}} + + +```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" %}} + + +```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 >}} authentication token with read access to the + specified database From a5b9b56460e05114272526ce8c11abffc0fb3017 Mon Sep 17 00:00:00 2001 From: Scott Anderson Date: Mon, 14 Apr 2025 16:46:55 -0600 Subject: [PATCH 03/44] Manage InfluxDB 3 Distinct Value Caches (#5977) * add distinct value cache management docs * updated references to last values in dvc guides --- .../core/admin/distinct-value-cache/_index.md | 19 +++ .../core/admin/distinct-value-cache/create.md | 48 ++++++++ .../core/admin/distinct-value-cache/delete.md | 27 +++++ .../core/admin/distinct-value-cache/query.md | 26 +++++ .../core/admin/distinct-value-cache/show.md | 25 ++++ .../admin/distinct-value-cache/_index.md | 19 +++ .../admin/distinct-value-cache/create.md | 48 ++++++++ .../admin/distinct-value-cache/delete.md | 27 +++++ .../admin/distinct-value-cache/query.md | 26 +++++ .../admin/distinct-value-cache/show.md | 25 ++++ .../distinct-value-cache/_index.md | 106 +++++++++++++++++ .../distinct-value-cache/create.md | 108 ++++++++++++++++++ .../distinct-value-cache/delete.md | 40 +++++++ .../distinct-value-cache/query.md | 33 ++++++ .../distinct-value-cache/show.md | 69 +++++++++++ .../last-value-cache/create.md | 2 +- .../last-value-cache/delete.md | 1 + 17 files changed, 648 insertions(+), 1 deletion(-) create mode 100644 content/influxdb3/core/admin/distinct-value-cache/_index.md create mode 100644 content/influxdb3/core/admin/distinct-value-cache/create.md create mode 100644 content/influxdb3/core/admin/distinct-value-cache/delete.md create mode 100644 content/influxdb3/core/admin/distinct-value-cache/query.md create mode 100644 content/influxdb3/core/admin/distinct-value-cache/show.md create mode 100644 content/influxdb3/enterprise/admin/distinct-value-cache/_index.md create mode 100644 content/influxdb3/enterprise/admin/distinct-value-cache/create.md create mode 100644 content/influxdb3/enterprise/admin/distinct-value-cache/delete.md create mode 100644 content/influxdb3/enterprise/admin/distinct-value-cache/query.md create mode 100644 content/influxdb3/enterprise/admin/distinct-value-cache/show.md create mode 100644 content/shared/influxdb3-admin/distinct-value-cache/_index.md create mode 100644 content/shared/influxdb3-admin/distinct-value-cache/create.md create mode 100644 content/shared/influxdb3-admin/distinct-value-cache/delete.md create mode 100644 content/shared/influxdb3-admin/distinct-value-cache/query.md create mode 100644 content/shared/influxdb3-admin/distinct-value-cache/show.md diff --git a/content/influxdb3/core/admin/distinct-value-cache/_index.md b/content/influxdb3/core/admin/distinct-value-cache/_index.md new file mode 100644 index 000000000..cdf0b5837 --- /dev/null +++ b/content/influxdb3/core/admin/distinct-value-cache/_index.md @@ -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 +--- + + diff --git a/content/influxdb3/core/admin/distinct-value-cache/create.md b/content/influxdb3/core/admin/distinct-value-cache/create.md new file mode 100644 index 000000000..da6159114 --- /dev/null +++ b/content/influxdb3/core/admin/distinct-value-cache/create.md @@ -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" %}} + + + ```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" %}} + + + ```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 +--- + + diff --git a/content/influxdb3/core/admin/distinct-value-cache/delete.md b/content/influxdb3/core/admin/distinct-value-cache/delete.md new file mode 100644 index 000000000..ffbfb1374 --- /dev/null +++ b/content/influxdb3/core/admin/distinct-value-cache/delete.md @@ -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: | + + + ```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 +--- + + diff --git a/content/influxdb3/core/admin/distinct-value-cache/query.md b/content/influxdb3/core/admin/distinct-value-cache/query.md new file mode 100644 index 000000000..ea499869e --- /dev/null +++ b/content/influxdb3/core/admin/distinct-value-cache/query.md @@ -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 +--- + + diff --git a/content/influxdb3/core/admin/distinct-value-cache/show.md b/content/influxdb3/core/admin/distinct-value-cache/show.md new file mode 100644 index 000000000..5cd73312a --- /dev/null +++ b/content/influxdb3/core/admin/distinct-value-cache/show.md @@ -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: | + + + ```bash + influxdb3 show system \ + --database example-db \ + --token 00xoXX0xXXx0000XxxxXx0Xx0xx0 \ + table distinct_caches + ``` +source: /shared/influxdb3-admin/distinct-value-cache/show.md +--- + + diff --git a/content/influxdb3/enterprise/admin/distinct-value-cache/_index.md b/content/influxdb3/enterprise/admin/distinct-value-cache/_index.md new file mode 100644 index 000000000..534aaf7c0 --- /dev/null +++ b/content/influxdb3/enterprise/admin/distinct-value-cache/_index.md @@ -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 +--- + + diff --git a/content/influxdb3/enterprise/admin/distinct-value-cache/create.md b/content/influxdb3/enterprise/admin/distinct-value-cache/create.md new file mode 100644 index 000000000..f3e99357e --- /dev/null +++ b/content/influxdb3/enterprise/admin/distinct-value-cache/create.md @@ -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" %}} + + + ```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" %}} + + + ```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 +--- + + diff --git a/content/influxdb3/enterprise/admin/distinct-value-cache/delete.md b/content/influxdb3/enterprise/admin/distinct-value-cache/delete.md new file mode 100644 index 000000000..4ad6f867d --- /dev/null +++ b/content/influxdb3/enterprise/admin/distinct-value-cache/delete.md @@ -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: | + + + ```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 +--- + + diff --git a/content/influxdb3/enterprise/admin/distinct-value-cache/query.md b/content/influxdb3/enterprise/admin/distinct-value-cache/query.md new file mode 100644 index 000000000..aaee0c6f5 --- /dev/null +++ b/content/influxdb3/enterprise/admin/distinct-value-cache/query.md @@ -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 +--- + + diff --git a/content/influxdb3/enterprise/admin/distinct-value-cache/show.md b/content/influxdb3/enterprise/admin/distinct-value-cache/show.md new file mode 100644 index 000000000..53fa3a9a3 --- /dev/null +++ b/content/influxdb3/enterprise/admin/distinct-value-cache/show.md @@ -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: | + + + ```bash + influxdb3 show system \ + --database example-db \ + --token 00xoXX0xXXx0000XxxxXx0Xx0xx0 \ + table distinct_caches + ``` +source: /shared/influxdb3-admin/distinct-value-cache/show.md +--- + + diff --git a/content/shared/influxdb3-admin/distinct-value-cache/_index.md b/content/shared/influxdb3-admin/distinct-value-cache/_index.md new file mode 100644 index 000000000..bd3e42e2b --- /dev/null +++ b/content/shared/influxdb3-admin/distinct-value-cache/_index.md @@ -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 %}} diff --git a/content/shared/influxdb3-admin/distinct-value-cache/create.md b/content/shared/influxdb3-admin/distinct-value-cache/create.md new file mode 100644 index 000000000..3166d7171 --- /dev/null +++ b/content/shared/influxdb3-admin/distinct-value-cache/create.md @@ -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 >}} + authentication token with write access to the specified table. + 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 don’t provide one, + InfluxDB automatically generates a cache name for you. + +{{% show-in "core" %}} + +{{% code-placeholders "(DATABASE|TABLE|DVC)_NAME|AUTH_TOKEN|NODE_SPEC|COLUMNS|MAX_(CARDINALITY|AGE)" %}} + + + +```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 %}} + +{{% /show-in %}} + +{{% show-in "enterprise" %}} + +{{% code-placeholders "(DATABASE|TABLE|DVC)_NAME|AUTH_TOKEN|NODE_SPEC|COLUMNS|MAX_(CARDINALITY|AGE)" %}} + + + +```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 %}} + +{{% /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 >}} authentication token with write access to the + specified database +- {{% 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). diff --git a/content/shared/influxdb3-admin/distinct-value-cache/delete.md b/content/shared/influxdb3-admin/distinct-value-cache/delete.md new file mode 100644 index 000000000..a90fc793d --- /dev/null +++ b/content/shared/influxdb3-admin/distinct-value-cache/delete.md @@ -0,0 +1,40 @@ + +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 >}} + authentication token with write access to the specified database. + 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 >}} authentication token with write access to the + specified database +- {{% 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. diff --git a/content/shared/influxdb3-admin/distinct-value-cache/query.md b/content/shared/influxdb3-admin/distinct-value-cache/query.md new file mode 100644 index 000000000..55e0ce4d0 --- /dev/null +++ b/content/shared/influxdb3-admin/distinct-value-cache/query.md @@ -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' +``` diff --git a/content/shared/influxdb3-admin/distinct-value-cache/show.md b/content/shared/influxdb3-admin/distinct-value-cache/show.md new file mode 100644 index 000000000..2a20bf6d5 --- /dev/null +++ b/content/shared/influxdb3-admin/distinct-value-cache/show.md @@ -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" %}} + + +```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" %}} + + +```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" %}} + + +```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 >}} authentication token with read access to the + specified database diff --git a/content/shared/influxdb3-admin/last-value-cache/create.md b/content/shared/influxdb3-admin/last-value-cache/create.md index ea66a6f3b..91c38f203 100644 --- a/content/shared/influxdb3-admin/last-value-cache/create.md +++ b/content/shared/influxdb3-admin/last-value-cache/create.md @@ -8,7 +8,7 @@ to create a Last Value Cache (LVC). Provide the following: - **Token** (`--token`): _({{< req >}})_ Your {{< product-name >}} authentication token with write access to the specified table. You can also use the `INFLUXDB3_AUTH_TOKEN` environment variable to specify - the database. + the token. - **Table** (`-t`, `--table`): _({{< req >}})_ The name of the table to associate the LVC with. {{% show-in "enterprise" %}} diff --git a/content/shared/influxdb3-admin/last-value-cache/delete.md b/content/shared/influxdb3-admin/last-value-cache/delete.md index 9cb535a76..6cfccc021 100644 --- a/content/shared/influxdb3-admin/last-value-cache/delete.md +++ b/content/shared/influxdb3-admin/last-value-cache/delete.md @@ -32,6 +32,7 @@ Replace the following: specified database - {{% 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] From 73e4f876707b1d3215e8af938e16820b64dbb134 Mon Sep 17 00:00:00 2001 From: Scott Anderson Date: Mon, 14 Apr 2025 17:08:03 -0600 Subject: [PATCH 04/44] InfluxDB 3 Enterprise license management (#5973) * enteprise license management * added description to license mgmnt page * Update content/influxdb3/enterprise/admin/license.md Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * fixed description * Update content/influxdb3/enterprise/admin/license.md Co-authored-by: Jason Stirnaman * Apply suggestions from code review * Update content/influxdb3/enterprise/admin/license.md * Update content/influxdb3/enterprise/admin/license.md --------- Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> Co-authored-by: Jason Stirnaman --- content/influxdb3/enterprise/admin/license.md | 148 ++++++++++++++++++ .../admin/query-system-data/_index.md | 2 +- 2 files changed, 149 insertions(+), 1 deletion(-) create mode 100644 content/influxdb3/enterprise/admin/license.md diff --git a/content/influxdb3/enterprise/admin/license.md b/content/influxdb3/enterprise/admin/license.md new file mode 100644 index 000000000..bb19662f1 --- /dev/null +++ b/content/influxdb3/enterprise/admin/license.md @@ -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 %}} + + +```bash +influxdb3 serve \ + --cluster-id cluster01 \ + --node-id node01 \ + --license-email example@email.com \ + --license-file /path/to/license-file.jwt \ + # ... +``` + +{{% /code-tab-content %}} +{{% code-tab-content %}} + + +```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 \ + # ... +``` + +{{% /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. diff --git a/content/influxdb3/enterprise/admin/query-system-data/_index.md b/content/influxdb3/enterprise/admin/query-system-data/_index.md index 5ba273837..bd3e04b4e 100644 --- a/content/influxdb3/enterprise/admin/query-system-data/_index.md +++ b/content/influxdb3/enterprise/admin/query-system-data/_index.md @@ -9,7 +9,7 @@ menu: influxdb3_enterprise: name: Query system data parent: Administer InfluxDB -weight: 3 +weight: 103 influxdb3/enterprise/tags: [query, api, system information, schemas] related: - /influxdb3/enterprise/query-data/sql/ From 0bcdb3fb889bb3f8c5c8dc67fd401b348948ba97 Mon Sep 17 00:00:00 2001 From: Scott Anderson Date: Mon, 14 Apr 2025 17:11:16 -0600 Subject: [PATCH 05/44] updated admin section weights --- content/influxdb3/core/admin/query-system-data/_index.md | 2 +- content/influxdb3/enterprise/admin/query-system-data/_index.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/content/influxdb3/core/admin/query-system-data/_index.md b/content/influxdb3/core/admin/query-system-data/_index.md index 5f7ac3afb..78ae781dd 100644 --- a/content/influxdb3/core/admin/query-system-data/_index.md +++ b/content/influxdb3/core/admin/query-system-data/_index.md @@ -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/ diff --git a/content/influxdb3/enterprise/admin/query-system-data/_index.md b/content/influxdb3/enterprise/admin/query-system-data/_index.md index bd3e04b4e..e03762343 100644 --- a/content/influxdb3/enterprise/admin/query-system-data/_index.md +++ b/content/influxdb3/enterprise/admin/query-system-data/_index.md @@ -9,7 +9,7 @@ menu: influxdb3_enterprise: name: Query system data parent: Administer InfluxDB -weight: 103 +weight: 110 influxdb3/enterprise/tags: [query, api, system information, schemas] related: - /influxdb3/enterprise/query-data/sql/ From 3019032b6a5efd53cecf90f68313c735e3815871 Mon Sep 17 00:00:00 2001 From: Scott Anderson Date: Mon, 14 Apr 2025 17:57:01 -0600 Subject: [PATCH 06/44] added auth token to influxdb3 cli examples --- .../influxdb3-cli/create/distinct_cache.md | 3 +- .../shared/influxdb3-cli/create/file_index.md | 13 ++++++-- .../shared/influxdb3-cli/create/last_cache.md | 2 +- content/shared/influxdb3-cli/create/plugin.md | 3 +- content/shared/influxdb3-cli/create/table.md | 7 ++++- .../shared/influxdb3-cli/create/trigger.md | 3 +- .../influxdb3-cli/delete/distinct_cache.md | 19 +++++++----- .../shared/influxdb3-cli/delete/file_index.md | 17 +++++++--- .../shared/influxdb3-cli/delete/last_cache.md | 19 +++++++----- content/shared/influxdb3-cli/delete/plugin.md | 21 ++++++++----- content/shared/influxdb3-cli/delete/table.md | 21 ++++++++----- .../shared/influxdb3-cli/delete/trigger.md | 17 +++++++--- .../shared/influxdb3-cli/disable/trigger.md | 2 +- content/shared/influxdb3-cli/enable/_index.md | 6 ++-- .../shared/influxdb3-cli/enable/trigger.md | 2 +- content/shared/influxdb3-cli/query.md | 31 ++++++++++++++----- .../shared/influxdb3-cli/show/databases.md | 2 +- .../influxdb3-cli/show/system/summary.md | 2 +- .../shared/influxdb3-cli/test/wal_plugin.md | 10 ++++-- content/shared/influxdb3-cli/write.md | 29 ++++++++++++----- 20 files changed, 156 insertions(+), 73 deletions(-) diff --git a/content/shared/influxdb3-cli/create/distinct_cache.md b/content/shared/influxdb3-cli/create/distinct_cache.md index 008a5e965..cda3e0655 100644 --- a/content/shared/influxdb3-cli/create/distinct_cache.md +++ b/content/shared/influxdb3-cli/create/distinct_cache.md @@ -8,6 +8,7 @@ The `influxdb3 create distinct_cache` command creates a new distinct value cache ```bash influxdb3 create distinct_cache [OPTIONS] \ --database \ + --token --table \ --columns \ [CACHE_NAME] @@ -24,7 +25,7 @@ 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 | diff --git a/content/shared/influxdb3-cli/create/file_index.md b/content/shared/influxdb3-cli/create/file_index.md index 872a4392c..78cea55fd 100644 --- a/content/shared/influxdb3-cli/create/file_index.md +++ b/content/shared/influxdb3-cli/create/file_index.md @@ -7,7 +7,10 @@ database or table. ```bash -influxdb3 create file_index [OPTIONS] --database ... +influxdb3 create file_index [OPTIONS] \ + --database \ + --token \ + ... ``` ## Arguments @@ -20,7 +23,7 @@ influxdb3 create file_index [OPTIONS] --database ... | :----- | :----------- | :--------------------------------------------------------------------------------------- | | `-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 | | `-h` | `--help` | Print help information | @@ -43,10 +46,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 +60,7 @@ In the examples below, replace the following: ```bash influxdb3 create file_index \ --database DATABASE_NAME \ + --token AUTH_TOKEN \ column1 column2 column3 ``` @@ -65,6 +71,7 @@ influxdb3 create file_index \ ```bash influxdb3 create file_index \ --database DATABASE_NAME \ + --token AUTH_TOKEN \ --table TABLE_NAME \ column1 column2 column3 ``` diff --git a/content/shared/influxdb3-cli/create/last_cache.md b/content/shared/influxdb3-cli/create/last_cache.md index e155cba7a..d39ccaf62 100644 --- a/content/shared/influxdb3-cli/create/last_cache.md +++ b/content/shared/influxdb3-cli/create/last_cache.md @@ -20,7 +20,7 @@ influxdb3 create last_cache [OPTIONS] --database --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` | diff --git a/content/shared/influxdb3-cli/create/plugin.md b/content/shared/influxdb3-cli/create/plugin.md index 07271a8da..1a424f353 100644 --- a/content/shared/influxdb3-cli/create/plugin.md +++ b/content/shared/influxdb3-cli/create/plugin.md @@ -8,6 +8,7 @@ The `influxdb3 create plugin` command creates a new processing engine plugin. ```bash influxdb3 create plugin [OPTIONS] \ --database \ + --token \ --filename \ --entry-point \ @@ -23,7 +24,7 @@ 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`) | diff --git a/content/shared/influxdb3-cli/create/table.md b/content/shared/influxdb3-cli/create/table.md index acb01ad13..6e6fec27f 100644 --- a/content/shared/influxdb3-cli/create/table.md +++ b/content/shared/influxdb3-cli/create/table.md @@ -9,6 +9,7 @@ The `influxdb3 create table` command creates a table in a database. influxdb3 create table [OPTIONS] \ --tags [...] \ --database \ + --token \ ``` @@ -22,7 +23,7 @@ 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 | | `-h` | `--help` | Print help information | @@ -53,6 +54,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 +67,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 +80,7 @@ influxdb3 create table \ --tags room,sensor_id \ --fields temp:float64,hum:float64,co:int64 \ --database DATABASE_NAME \ + --token AUTH_TOKEN \ TABLE_NAME ``` diff --git a/content/shared/influxdb3-cli/create/trigger.md b/content/shared/influxdb3-cli/create/trigger.md index 20dca61dd..aa8f28ddc 100644 --- a/content/shared/influxdb3-cli/create/trigger.md +++ b/content/shared/influxdb3-cli/create/trigger.md @@ -9,6 +9,7 @@ processing engine. ```bash influxdb3 create trigger [OPTIONS] \ --database \ + --token \ --plugin \ --trigger-spec \ @@ -24,7 +25,7 @@ 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:` or `all_tables` | | | `--disabled` | Create the trigger in disabled state | diff --git a/content/shared/influxdb3-cli/delete/distinct_cache.md b/content/shared/influxdb3-cli/delete/distinct_cache.md index 2aa9f38cb..a2a6f55c5 100644 --- a/content/shared/influxdb3-cli/delete/distinct_cache.md +++ b/content/shared/influxdb3-cli/delete/distinct_cache.md @@ -18,13 +18,13 @@ 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 | +| `-h` | `--help` | Print help information | ### Option environment variables @@ -40,13 +40,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" %}} ```bash influxdb3 delete distinct_cache \ --database DATABASE_NAME \ + --token AUTH_TOKEN \ --table TABLE_NAME \ CACHE_NAME ``` @@ -57,6 +58,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 %}}: diff --git a/content/shared/influxdb3-cli/delete/file_index.md b/content/shared/influxdb3-cli/delete/file_index.md index a348886d3..f1665e20c 100644 --- a/content/shared/influxdb3-cli/delete/file_index.md +++ b/content/shared/influxdb3-cli/delete/file_index.md @@ -16,8 +16,8 @@ influxdb3 delete file_index [OPTIONS] --database | :----- | :----------- | :--------------------------------------------------------------------------------------- | | `-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 | | `-h` | `--help` | Print help information | ### Option environment variables @@ -39,17 +39,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 ```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 +61,10 @@ influxdb3 delete file_index --database DATABASE_NAME ```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 %}} diff --git a/content/shared/influxdb3-cli/delete/last_cache.md b/content/shared/influxdb3-cli/delete/last_cache.md index d7a1a6636..e02222b96 100644 --- a/content/shared/influxdb3-cli/delete/last_cache.md +++ b/content/shared/influxdb3-cli/delete/last_cache.md @@ -15,13 +15,13 @@ influxdb3 delete last_cache [OPTIONS] --database --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 | +| `-h` | `--help` | Print help information | ### Option environment variables @@ -37,13 +37,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" %}} ```bash influxdb3 delete last_cache \ --database DATABASE_NAME \ + --token AUTH_TOKEN \ --table TABLE_NAME \ CACHE_NAME ``` @@ -54,6 +55,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 %}}: diff --git a/content/shared/influxdb3-cli/delete/plugin.md b/content/shared/influxdb3-cli/delete/plugin.md index 8841c58dc..b14d35933 100644 --- a/content/shared/influxdb3-cli/delete/plugin.md +++ b/content/shared/influxdb3-cli/delete/plugin.md @@ -15,12 +15,12 @@ influxdb3 delete plugin [OPTIONS] --database ## 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 | +| `-h` | `--help` | Print help information | ### Option environment variables @@ -36,12 +36,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" %}} ```bash -influxdb3 delete plugin --database DATABASE_NAME PLUGIN_NAME +influxdb3 delete plugin \ + --database DATABASE_NAME \ + --token AUTH_TOKEN \ + PLUGIN_NAME ``` {{% /code-placeholders %}} @@ -50,5 +53,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 diff --git a/content/shared/influxdb3-cli/delete/table.md b/content/shared/influxdb3-cli/delete/table.md index 61877ae7f..868386abb 100644 --- a/content/shared/influxdb3-cli/delete/table.md +++ b/content/shared/influxdb3-cli/delete/table.md @@ -15,12 +15,12 @@ influxdb3 delete table [OPTIONS] --database ## 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 | +| `-h` | `--help` | Print help information | ### Option environment variables @@ -36,12 +36,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" %}} ```bash -influxdb3 delete table --database DATABASE_NAME TABLE_NAME +influxdb3 delete table \ + --database DATABASE_NAME \ + --token AUTH_TOKEN \ + TABLE_NAME ``` {{% /code-placeholders %}} @@ -50,5 +53,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 diff --git a/content/shared/influxdb3-cli/delete/trigger.md b/content/shared/influxdb3-cli/delete/trigger.md index 549f8f0e4..79431d790 100644 --- a/content/shared/influxdb3-cli/delete/trigger.md +++ b/content/shared/influxdb3-cli/delete/trigger.md @@ -19,7 +19,7 @@ influxdb3 delete trigger [OPTIONS] --database | :----- | :----------- | :--------------------------------------------------------------------------------------- | | `-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 | | `-h` | `--help` | Print help information | @@ -42,17 +42,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 ```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 +65,11 @@ influxdb3 delete trigger --database DATABASE_NAME TRIGGER_NAME ```bash -influxdb3 delete trigger --force --database DATABASE_NAME TRIGGER_NAME +influxdb3 delete trigger \ + --force \ + --database DATABASE_NAME \ + --token AUTH_TOKEN \ + TRIGGER_NAME ``` {{% /code-placeholders %}} diff --git a/content/shared/influxdb3-cli/disable/trigger.md b/content/shared/influxdb3-cli/disable/trigger.md index 5c09a06f4..358cf8beb 100644 --- a/content/shared/influxdb3-cli/disable/trigger.md +++ b/content/shared/influxdb3-cli/disable/trigger.md @@ -19,7 +19,7 @@ influxdb3 disable trigger [OPTIONS] --database | :----- | :----------- | :--------------------------------------------------------------------------------------- | | `-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 | | `-h` | `--help` | Print help information | ### Option environment variables diff --git a/content/shared/influxdb3-cli/enable/_index.md b/content/shared/influxdb3-cli/enable/_index.md index 2ed1f185b..0befbe77a 100644 --- a/content/shared/influxdb3-cli/enable/_index.md +++ b/content/shared/influxdb3-cli/enable/_index.md @@ -11,10 +11,10 @@ influxdb3 enable ## 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 diff --git a/content/shared/influxdb3-cli/enable/trigger.md b/content/shared/influxdb3-cli/enable/trigger.md index d42f96948..68c0766e2 100644 --- a/content/shared/influxdb3-cli/enable/trigger.md +++ b/content/shared/influxdb3-cli/enable/trigger.md @@ -19,7 +19,7 @@ influxdb3 enable trigger [OPTIONS] --database | :----- | :----------- | :--------------------------------------------------------------------------------------- | | `-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 | | `-h` | `--help` | Print help information | ### Option environment variables diff --git a/content/shared/influxdb3-cli/query.md b/content/shared/influxdb3-cli/query.md index e0965e786..ec8c63be9 100644 --- a/content/shared/influxdb3-cli/query.md +++ b/content/shared/influxdb3-cli/query.md @@ -28,7 +28,7 @@ influxdb3 query [OPTIONS] --database [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 | @@ -70,21 +70,29 @@ with the name of the database to query. ```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 %}} ```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 %}} ```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 +112,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 +123,7 @@ influxdb3 query \ influxdb3 query \ --language influxql \ --database DATABASE_NAME \ + --token AUTH_TOKEN \ --file ./query.influxql ``` {{% /code-tab-content %}} @@ -123,7 +133,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 +154,7 @@ cat ./query.influxql | influxdb3 query \ influxdb3 query \ --format json \ --database DATABASE_NAME \ + --token AUTH_TOKEN \ 'SELECT * FROM home' ``` {{% /code-tab-content %}} @@ -153,6 +165,7 @@ influxdb3 query \ influxdb3 query \ --format json \ --database DATABASE_NAME \ + --token AUTH_TOKEN \ --file ./query.sql ``` {{% /code-tab-content %}} @@ -162,7 +175,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 +196,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 +207,7 @@ influxdb3 query \ influxdb3 query \ --output /path/to/results.txt \ --database DATABASE_NAME \ + --token AUTH_TOKEN \ --file ./query.sql ``` {{% /code-tab-content %}} @@ -201,7 +217,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 >}} diff --git a/content/shared/influxdb3-cli/show/databases.md b/content/shared/influxdb3-cli/show/databases.md index a784ac113..467f308b9 100644 --- a/content/shared/influxdb3-cli/show/databases.md +++ b/content/shared/influxdb3-cli/show/databases.md @@ -16,7 +16,7 @@ influxdb3 show databases [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 | | | `--show-deleted` | Include databases marked as deleted in the output | | | `--format` | Output format (`pretty` _(default)_, `json`, `jsonl`, `csv`, or `parquet`) | | `-h` | `--help` | Print help information | diff --git a/content/shared/influxdb3-cli/show/system/summary.md b/content/shared/influxdb3-cli/show/system/summary.md index ff0eb0ae5..72f6c4d63 100644 --- a/content/shared/influxdb3-cli/show/system/summary.md +++ b/content/shared/influxdb3-cli/show/system/summary.md @@ -15,7 +15,7 @@ influxdb3 show system --database summary [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`) | +| | `--format` | Output format (`pretty` _(default)_, `json`, `jsonl`, `csv`, or `parquet`) | | `-h` | `--help` | Print help information | ## Examples diff --git a/content/shared/influxdb3-cli/test/wal_plugin.md b/content/shared/influxdb3-cli/test/wal_plugin.md index 58f6ee7e2..48477cfa5 100644 --- a/content/shared/influxdb3-cli/test/wal_plugin.md +++ b/content/shared/influxdb3-cli/test/wal_plugin.md @@ -20,7 +20,7 @@ influxdb3 test wal_plugin [OPTIONS] --database | :----- | :------------------ | :--------------------------------------------------------------------------------------- | | `-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 | @@ -48,12 +48,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 +64,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 +76,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 +88,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 +100,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 ``` diff --git a/content/shared/influxdb3-cli/write.md b/content/shared/influxdb3-cli/write.md index c4acb2657..304f21db3 100644 --- a/content/shared/influxdb3-cli/write.md +++ b/content/shared/influxdb3-cli/write.md @@ -28,7 +28,7 @@ influxdb3 write [OPTIONS] --database [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 | | `-h` | `--help` | Print help information | @@ -48,11 +48,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 +70,9 @@ with the name of the database to query. ```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 +81,19 @@ influxdb3 write --database DATABASE_NAME \ ```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 %}} ```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 +114,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 +126,7 @@ influxdb3 write \ influxdb3 write \ --accept-partial \ --database DATABASE_NAME \ + --token AUTH_TOKEN \ --file ./data.lp ``` {{% /code-tab-content %}} @@ -125,6 +137,7 @@ influxdb3 write \ cat ./data.lp | influxdb3 write \ --accept-partial \ --database DATABASE_NAME \ + --token AUTH_TOKEN ``` {{% /code-tab-content %}} {{< /code-tabs-wrapper >}} From 25bdf6e608999b86a14d94ba2f07c1cce59a6dda Mon Sep 17 00:00:00 2001 From: Scott Anderson Date: Mon, 14 Apr 2025 18:07:22 -0600 Subject: [PATCH 07/44] add --help-all flag to influxdb3 commands --- .../core/reference/cli/influxdb3/_index.md | 3 ++- .../influxdb3/core/reference/cli/influxdb3/serve.md | 3 ++- .../enterprise/reference/cli/influxdb3/_index.md | 3 ++- .../enterprise/reference/cli/influxdb3/serve.md | 1 + content/shared/influxdb3-cli/create/_index.md | 7 ++++--- content/shared/influxdb3-cli/create/database.md | 1 + .../shared/influxdb3-cli/create/distinct_cache.md | 1 + content/shared/influxdb3-cli/create/file_index.md | 3 ++- content/shared/influxdb3-cli/create/last_cache.md | 1 + content/shared/influxdb3-cli/create/plugin.md | 1 + content/shared/influxdb3-cli/create/table.md | 1 + content/shared/influxdb3-cli/create/token.md | 7 ++++--- content/shared/influxdb3-cli/create/trigger.md | 1 + content/shared/influxdb3-cli/delete/_index.md | 7 ++++--- content/shared/influxdb3-cli/delete/database.md | 1 + .../shared/influxdb3-cli/delete/distinct_cache.md | 1 + content/shared/influxdb3-cli/delete/file_index.md | 1 + content/shared/influxdb3-cli/delete/last_cache.md | 1 + content/shared/influxdb3-cli/delete/plugin.md | 1 + content/shared/influxdb3-cli/delete/table.md | 1 + content/shared/influxdb3-cli/delete/trigger.md | 1 + content/shared/influxdb3-cli/disable/_index.md | 7 ++++--- content/shared/influxdb3-cli/disable/trigger.md | 1 + content/shared/influxdb3-cli/enable/_index.md | 7 ++++--- content/shared/influxdb3-cli/enable/trigger.md | 1 + content/shared/influxdb3-cli/query.md | 1 + content/shared/influxdb3-cli/show/_index.md | 7 ++++--- content/shared/influxdb3-cli/show/databases.md | 2 +- content/shared/influxdb3-cli/show/system/_index.md | 13 +++++++------ content/shared/influxdb3-cli/show/system/summary.md | 11 ++++++----- .../shared/influxdb3-cli/show/system/table-list.md | 9 +++++---- content/shared/influxdb3-cli/show/system/table.md | 3 ++- content/shared/influxdb3-cli/test/_index.md | 7 ++++--- content/shared/influxdb3-cli/test/wal_plugin.md | 1 + content/shared/influxdb3-cli/write.md | 1 + 35 files changed, 76 insertions(+), 42 deletions(-) diff --git a/content/influxdb3/core/reference/cli/influxdb3/_index.md b/content/influxdb3/core/reference/cli/influxdb3/_index.md index 6b52d020f..efa782e42 100644 --- a/content/influxdb3/core/reference/cli/influxdb3/_index.md +++ b/content/influxdb3/core/reference/cli/influxdb3/_index.md @@ -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 diff --git a/content/influxdb3/core/reference/cli/influxdb3/serve.md b/content/influxdb3/core/reference/cli/influxdb3/serve.md index 32389b260..0cb4a4d54 100644 --- a/content/influxdb3/core/reference/cli/influxdb3/serve.md +++ b/content/influxdb3/core/reference/cli/influxdb3/serve.md @@ -55,6 +55,7 @@ influxdb3 serve [OPTIONS] --node-id | | `--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 | | `--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)_ | diff --git a/content/influxdb3/enterprise/reference/cli/influxdb3/_index.md b/content/influxdb3/enterprise/reference/cli/influxdb3/_index.md index 104ebad58..46eaaff51 100644 --- a/content/influxdb3/enterprise/reference/cli/influxdb3/_index.md +++ b/content/influxdb3/enterprise/reference/cli/influxdb3/_index.md @@ -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 diff --git a/content/influxdb3/enterprise/reference/cli/influxdb3/serve.md b/content/influxdb3/enterprise/reference/cli/influxdb3/serve.md index b77f66439..aa01e530c 100644 --- a/content/influxdb3/enterprise/reference/cli/influxdb3/serve.md +++ b/content/influxdb3/enterprise/reference/cli/influxdb3/serve.md @@ -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 | diff --git a/content/shared/influxdb3-cli/create/_index.md b/content/shared/influxdb3-cli/create/_index.md index 3972829f7..9626301e0 100644 --- a/content/shared/influxdb3-cli/create/_index.md +++ b/content/shared/influxdb3-cli/create/_index.md @@ -26,6 +26,7 @@ influxdb3 create ## Options -| Option | | Description | -| :----- | :------- | :--------------------- | -| `-h` | `--help` | Print help information | +| Option | | Description | +| :----- | :----------- | :------------------------------ | +| `-h` | `--help` | Print help information | +| | `--help-all` | Print detailed help information | diff --git a/content/shared/influxdb3-cli/create/database.md b/content/shared/influxdb3-cli/create/database.md index 1536c2454..ff3f02b8c 100644 --- a/content/shared/influxdb3-cli/create/database.md +++ b/content/shared/influxdb3-cli/create/database.md @@ -24,6 +24,7 @@ influxdb3 create database [OPTIONS] | `-H` | `--host` | Host URL of the running {{< product-name >}} server (default is `http://127.0.0.1:8181`) | | | `--token` | Authentication token | | `-h` | `--help` | Print help information | +| | `--help-all` | Print detailed help information | ### Option environment variables diff --git a/content/shared/influxdb3-cli/create/distinct_cache.md b/content/shared/influxdb3-cli/create/distinct_cache.md index cda3e0655..d48affc32 100644 --- a/content/shared/influxdb3-cli/create/distinct_cache.md +++ b/content/shared/influxdb3-cli/create/distinct_cache.md @@ -31,6 +31,7 @@ influxdb3 create distinct_cache [OPTIONS] \ | | `--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` | | `-h` | `--help` | Print help information | +| | `--help-all` | Print detailed help information | > [!Important] > diff --git a/content/shared/influxdb3-cli/create/file_index.md b/content/shared/influxdb3-cli/create/file_index.md index 78cea55fd..f6474d958 100644 --- a/content/shared/influxdb3-cli/create/file_index.md +++ b/content/shared/influxdb3-cli/create/file_index.md @@ -23,9 +23,10 @@ influxdb3 create file_index [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` | _({{< req >}})_ Authentication token | +| | `--token` | _({{< req >}})_ Authentication token | | `-t` | `--table` | Table to apply the file index too | | `-h` | `--help` | Print help information | +| | `--help-all` | Print detailed help information | ### Option environment variables diff --git a/content/shared/influxdb3-cli/create/last_cache.md b/content/shared/influxdb3-cli/create/last_cache.md index d39ccaf62..bd0735e64 100644 --- a/content/shared/influxdb3-cli/create/last_cache.md +++ b/content/shared/influxdb3-cli/create/last_cache.md @@ -27,6 +27,7 @@ influxdb3 create last_cache [OPTIONS] --database --table
    | | `--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` | | `-h` | `--help` | Print help information | +| | `--help-all` | Print detailed help information | ### Option environment variables diff --git a/content/shared/influxdb3-cli/create/plugin.md b/content/shared/influxdb3-cli/create/plugin.md index 1a424f353..2304bbd31 100644 --- a/content/shared/influxdb3-cli/create/plugin.md +++ b/content/shared/influxdb3-cli/create/plugin.md @@ -29,6 +29,7 @@ influxdb3 create plugin [OPTIONS] \ | | `--entry-point` | _({{< req >}})_ Entry point function name for the plugin | | | `--plugin-type` | Type of trigger the plugin processes (default is `wal_rows`) | | `-h` | `--help` | Print help information | +| | `--help-all` | Print detailed help information | ### Option environment variables diff --git a/content/shared/influxdb3-cli/create/table.md b/content/shared/influxdb3-cli/create/table.md index 6e6fec27f..506ecda95 100644 --- a/content/shared/influxdb3-cli/create/table.md +++ b/content/shared/influxdb3-cli/create/table.md @@ -27,6 +27,7 @@ influxdb3 create table [OPTIONS] \ | | `--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 | | `-h` | `--help` | Print help information | +| | `--help-all` | Print detailed help information | > [!Important] > diff --git a/content/shared/influxdb3-cli/create/token.md b/content/shared/influxdb3-cli/create/token.md index 276f32151..46a869c66 100644 --- a/content/shared/influxdb3-cli/create/token.md +++ b/content/shared/influxdb3-cli/create/token.md @@ -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 | diff --git a/content/shared/influxdb3-cli/create/trigger.md b/content/shared/influxdb3-cli/create/trigger.md index aa8f28ddc..1db3b532f 100644 --- a/content/shared/influxdb3-cli/create/trigger.md +++ b/content/shared/influxdb3-cli/create/trigger.md @@ -30,6 +30,7 @@ influxdb3 create trigger [OPTIONS] \ | | `--trigger-spec` | Trigger specification--for example `table:` or `all_tables` | | | `--disabled` | Create the trigger in disabled state | | `-h` | `--help` | Print help information | +| | `--help-all` | Print detailed help information | ### Option environment variables diff --git a/content/shared/influxdb3-cli/delete/_index.md b/content/shared/influxdb3-cli/delete/_index.md index a81a38a51..569b87904 100644 --- a/content/shared/influxdb3-cli/delete/_index.md +++ b/content/shared/influxdb3-cli/delete/_index.md @@ -24,6 +24,7 @@ influxdb3 delete ## Options -| Option | | Description | -| :----- | :------- | :--------------------- | -| `-h` | `--help` | Print help information | +| Option | | Description | +| :----- | :----------- | :------------------------------ | +| `-h` | `--help` | Print help information | +| | `--help-all` | Print detailed help information | diff --git a/content/shared/influxdb3-cli/delete/database.md b/content/shared/influxdb3-cli/delete/database.md index cba8750af..04677a49d 100644 --- a/content/shared/influxdb3-cli/delete/database.md +++ b/content/shared/influxdb3-cli/delete/database.md @@ -22,6 +22,7 @@ influxdb3 delete database [OPTIONS] | `-H` | `--host` | Host URL of the running {{< product-name >}} server (default is `http://127.0.0.1:8181`) | | | `--token` | Authentication token | | `-h` | `--help` | Print help information | +| | `--help-all` | Print detailed help information | ### Option environment variables diff --git a/content/shared/influxdb3-cli/delete/distinct_cache.md b/content/shared/influxdb3-cli/delete/distinct_cache.md index a2a6f55c5..e1db983fd 100644 --- a/content/shared/influxdb3-cli/delete/distinct_cache.md +++ b/content/shared/influxdb3-cli/delete/distinct_cache.md @@ -25,6 +25,7 @@ influxdb3 delete distinct_cache [OPTIONS] \ | | `--token` | _({{< req >}})_ Authentication token | | `-t` | `--table` | _({{< req >}})_ Table to delete the cache for | | `-h` | `--help` | Print help information | +| | `--help-all` | Print detailed help information | ### Option environment variables diff --git a/content/shared/influxdb3-cli/delete/file_index.md b/content/shared/influxdb3-cli/delete/file_index.md index f1665e20c..a718ff4ab 100644 --- a/content/shared/influxdb3-cli/delete/file_index.md +++ b/content/shared/influxdb3-cli/delete/file_index.md @@ -19,6 +19,7 @@ influxdb3 delete file_index [OPTIONS] --database | | `--token` | _({{< req >}})_ Authentication token | | `-t` | `--table` | Table to delete the file index from | | `-h` | `--help` | Print help information | +| | `--help-all` | Print detailed help information | ### Option environment variables diff --git a/content/shared/influxdb3-cli/delete/last_cache.md b/content/shared/influxdb3-cli/delete/last_cache.md index e02222b96..03b39c71a 100644 --- a/content/shared/influxdb3-cli/delete/last_cache.md +++ b/content/shared/influxdb3-cli/delete/last_cache.md @@ -22,6 +22,7 @@ influxdb3 delete last_cache [OPTIONS] --database --table
    | | `--token` | _({{< req >}})_ Authentication token | | `-t` | `--table` | _({{< req >}})_ Table to delete the cache from | | `-h` | `--help` | Print help information | +| | `--help-all` | Print detailed help information | ### Option environment variables diff --git a/content/shared/influxdb3-cli/delete/plugin.md b/content/shared/influxdb3-cli/delete/plugin.md index b14d35933..31dfbf21c 100644 --- a/content/shared/influxdb3-cli/delete/plugin.md +++ b/content/shared/influxdb3-cli/delete/plugin.md @@ -21,6 +21,7 @@ influxdb3 delete plugin [OPTIONS] --database | `-d` | `--database` | _({{< req >}})_ Name of the database to operate on | | | `--token` | _({{< req >}})_ Authentication token | | `-h` | `--help` | Print help information | +| | `--help-all` | Print detailed help information | ### Option environment variables diff --git a/content/shared/influxdb3-cli/delete/table.md b/content/shared/influxdb3-cli/delete/table.md index 868386abb..7bd32dcfb 100644 --- a/content/shared/influxdb3-cli/delete/table.md +++ b/content/shared/influxdb3-cli/delete/table.md @@ -21,6 +21,7 @@ influxdb3 delete table [OPTIONS] --database | `-d` | `--database` | _({{< req >}})_ Name of the database to operate on | | | `--token` | _({{< req >}})_ Authentication token | | `-h` | `--help` | Print help information | +| | `--help-all` | Print detailed help information | ### Option environment variables diff --git a/content/shared/influxdb3-cli/delete/trigger.md b/content/shared/influxdb3-cli/delete/trigger.md index 79431d790..1a2a7b2c3 100644 --- a/content/shared/influxdb3-cli/delete/trigger.md +++ b/content/shared/influxdb3-cli/delete/trigger.md @@ -22,6 +22,7 @@ influxdb3 delete trigger [OPTIONS] --database | | `--token` | _({{< req >}})_ Authentication token | | | `--force` | Force delete even if the trigger is active | | `-h` | `--help` | Print help information | +| | `--help-all` | Print detailed help information | ### Option environment variables diff --git a/content/shared/influxdb3-cli/disable/_index.md b/content/shared/influxdb3-cli/disable/_index.md index 58e2a3b0d..fc4fbcdd1 100644 --- a/content/shared/influxdb3-cli/disable/_index.md +++ b/content/shared/influxdb3-cli/disable/_index.md @@ -18,6 +18,7 @@ influxdb3 disable ## Options -| Option | | Description | -| :----- | :------- | :--------------------- | -| `-h` | `--help` | Print help information | \ No newline at end of file +| Option | | Description | +| :----- | :----------- | :------------------------------ | +| `-h` | `--help` | Print help information | +| | `--help-all` | Print detailed help information | \ No newline at end of file diff --git a/content/shared/influxdb3-cli/disable/trigger.md b/content/shared/influxdb3-cli/disable/trigger.md index 358cf8beb..fe8bc299b 100644 --- a/content/shared/influxdb3-cli/disable/trigger.md +++ b/content/shared/influxdb3-cli/disable/trigger.md @@ -21,6 +21,7 @@ influxdb3 disable trigger [OPTIONS] --database | `-d` | `--database` | _({{< req >}})_ Name of the database to operate on | | | `--token` | _({{< req >}})_ Authentication token | | `-h` | `--help` | Print help information | +| | `--help-all` | Print detailed help information | ### Option environment variables diff --git a/content/shared/influxdb3-cli/enable/_index.md b/content/shared/influxdb3-cli/enable/_index.md index 0befbe77a..04ac255c7 100644 --- a/content/shared/influxdb3-cli/enable/_index.md +++ b/content/shared/influxdb3-cli/enable/_index.md @@ -18,6 +18,7 @@ influxdb3 enable ## Options -| Option | | Description | -| :----- | :------- | :--------------------- | -| `-h` | `--help` | Print help information | +| Option | | Description | +| :----- | :----------- | :------------------------------ | +| `-h` | `--help` | Print help information | +| | `--help-all` | Print detailed help information | diff --git a/content/shared/influxdb3-cli/enable/trigger.md b/content/shared/influxdb3-cli/enable/trigger.md index 68c0766e2..bc087e9bc 100644 --- a/content/shared/influxdb3-cli/enable/trigger.md +++ b/content/shared/influxdb3-cli/enable/trigger.md @@ -21,6 +21,7 @@ influxdb3 enable trigger [OPTIONS] --database | `-d` | `--database` | _({{< req >}})_ Name of the database to operate on | | | `--token` | _({{< req >}})_ Authentication token | | `-h` | `--help` | Print help information | +| | `--help-all` | Print detailed help information | ### Option environment variables diff --git a/content/shared/influxdb3-cli/query.md b/content/shared/influxdb3-cli/query.md index ec8c63be9..a5f956697 100644 --- a/content/shared/influxdb3-cli/query.md +++ b/content/shared/influxdb3-cli/query.md @@ -34,6 +34,7 @@ influxdb3 query [OPTIONS] --database [QUERY]... | `-o` | `--output` | Output query results to the specified file | | `-f` | `--file` | A file that contains the query to execute | | `-h` | `--help` | Print help information | +| | `--help-all` | Print detailed help information | ### Option environment variables diff --git a/content/shared/influxdb3-cli/show/_index.md b/content/shared/influxdb3-cli/show/_index.md index 0ad4c6649..78bf725cb 100644 --- a/content/shared/influxdb3-cli/show/_index.md +++ b/content/shared/influxdb3-cli/show/_index.md @@ -19,6 +19,7 @@ influxdb3 show ## Options -| Option | | Description | -| :----- | :------- | :--------------------- | -| `-h` | `--help` | Print help information | +| Option | | Description | +| :----- | :----------- | :------------------------------ | +| `-h` | `--help` | Print help information | +| | `--help-all` | Print detailed help information | diff --git a/content/shared/influxdb3-cli/show/databases.md b/content/shared/influxdb3-cli/show/databases.md index 467f308b9..0b45fd153 100644 --- a/content/shared/influxdb3-cli/show/databases.md +++ b/content/shared/influxdb3-cli/show/databases.md @@ -15,11 +15,11 @@ 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` | _({{< req >}})_ Authentication token | | | `--show-deleted` | Include databases marked as deleted in the output | | | `--format` | Output format (`pretty` _(default)_, `json`, `jsonl`, `csv`, or `parquet`) | | `-h` | `--help` | Print help information | +| | `--help-all` | Print detailed help information | ### Option environment variables diff --git a/content/shared/influxdb3-cli/show/system/_index.md b/content/shared/influxdb3-cli/show/system/_index.md index 0ea9c9d95..65db7b782 100644 --- a/content/shared/influxdb3-cli/show/system/_index.md +++ b/content/shared/influxdb3-cli/show/system/_index.md @@ -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 diff --git a/content/shared/influxdb3-cli/show/system/summary.md b/content/shared/influxdb3-cli/show/system/summary.md index 72f6c4d63..4b2d75826 100644 --- a/content/shared/influxdb3-cli/show/system/summary.md +++ b/content/shared/influxdb3-cli/show/system/summary.md @@ -12,11 +12,12 @@ influxdb3 show system --database 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`) | +| `-h` | `--help` | Print help information | +| | `--help-all` | Print detailed help information | ## Examples diff --git a/content/shared/influxdb3-cli/show/system/table-list.md b/content/shared/influxdb3-cli/show/system/table-list.md index 47ae872fe..7b828e024 100644 --- a/content/shared/influxdb3-cli/show/system/table-list.md +++ b/content/shared/influxdb3-cli/show/system/table-list.md @@ -11,10 +11,11 @@ influxdb3 show system --database 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`) | +| `-h` | `--help` | Print help information | +| | `--help-all` | Print detailed help information | ## Examples diff --git a/content/shared/influxdb3-cli/show/system/table.md b/content/shared/influxdb3-cli/show/system/table.md index 558131916..5ca57d1f4 100644 --- a/content/shared/influxdb3-cli/show/system/table.md +++ b/content/shared/influxdb3-cli/show/system/table.md @@ -20,8 +20,9 @@ influxdb3 show system --database table [OPTIONS] | `-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`) | | `-h` | `--help` | Print help information | +| | `--help-all` | Print detailed help information | ## Examples diff --git a/content/shared/influxdb3-cli/test/_index.md b/content/shared/influxdb3-cli/test/_index.md index 87a341771..13bb5f358 100644 --- a/content/shared/influxdb3-cli/test/_index.md +++ b/content/shared/influxdb3-cli/test/_index.md @@ -18,6 +18,7 @@ influxdb3 test ## Options -| Option | | Description | -| :----- | :------- | :--------------------- | -| `-h` | `--help` | Print help information | +| Option | | Description | +| :----- | :----------- | :------------------------------ | +| `-h` | `--help` | Print help information | +| | `--help-all` | Print detailed help information | diff --git a/content/shared/influxdb3-cli/test/wal_plugin.md b/content/shared/influxdb3-cli/test/wal_plugin.md index 48477cfa5..ecc3e2727 100644 --- a/content/shared/influxdb3-cli/test/wal_plugin.md +++ b/content/shared/influxdb3-cli/test/wal_plugin.md @@ -25,6 +25,7 @@ influxdb3 test wal_plugin [OPTIONS] --database | | `--file` | Line protocol file to use as input | | | `--input-arguments` | Map of string key-value pairs as to use as plugin input arguments | | `-h` | `--help` | Print help information | +| | `--help-all` | Print detailed help information | ### Option environment variables diff --git a/content/shared/influxdb3-cli/write.md b/content/shared/influxdb3-cli/write.md index 304f21db3..76f12a574 100644 --- a/content/shared/influxdb3-cli/write.md +++ b/content/shared/influxdb3-cli/write.md @@ -32,6 +32,7 @@ influxdb3 write [OPTIONS] --database [LINE_PROTOCOL]... | `-f` | `--file` | A file that contains line protocol to write | | | `--accept-partial` | Accept partial writes | | `-h` | `--help` | Print help information | +| | `--help-all` | Print detailed help information | ### Option environment variables From ae4d2349e55cb96f88e1e06bb7fd6820731d1991 Mon Sep 17 00:00:00 2001 From: Scott Anderson Date: Mon, 14 Apr 2025 19:56:02 -0600 Subject: [PATCH 08/44] add --tls-ca option to influxdb3 commands --- content/shared/influxdb3-cli/create/_index.md | 6 +++--- content/shared/influxdb3-cli/create/database.md | 1 + content/shared/influxdb3-cli/create/distinct_cache.md | 1 + content/shared/influxdb3-cli/create/file_index.md | 1 + content/shared/influxdb3-cli/create/last_cache.md | 1 + content/shared/influxdb3-cli/create/plugin.md | 1 + content/shared/influxdb3-cli/create/table.md | 1 + content/shared/influxdb3-cli/create/trigger.md | 1 + content/shared/influxdb3-cli/delete/database.md | 1 + content/shared/influxdb3-cli/delete/distinct_cache.md | 1 + content/shared/influxdb3-cli/delete/file_index.md | 1 + content/shared/influxdb3-cli/delete/last_cache.md | 1 + content/shared/influxdb3-cli/delete/plugin.md | 1 + content/shared/influxdb3-cli/delete/table.md | 1 + content/shared/influxdb3-cli/delete/trigger.md | 1 + content/shared/influxdb3-cli/disable/trigger.md | 1 + content/shared/influxdb3-cli/enable/trigger.md | 1 + content/shared/influxdb3-cli/query.md | 1 + content/shared/influxdb3-cli/show/databases.md | 1 + content/shared/influxdb3-cli/show/system/summary.md | 1 + .../shared/influxdb3-cli/show/system/table-list.md | 11 ++++++----- content/shared/influxdb3-cli/show/system/table.md | 1 + content/shared/influxdb3-cli/test/_index.md | 6 +++--- content/shared/influxdb3-cli/test/wal_plugin.md | 1 + content/shared/influxdb3-cli/write.md | 1 + 25 files changed, 34 insertions(+), 11 deletions(-) diff --git a/content/shared/influxdb3-cli/create/_index.md b/content/shared/influxdb3-cli/create/_index.md index 9626301e0..cf436cf11 100644 --- a/content/shared/influxdb3-cli/create/_index.md +++ b/content/shared/influxdb3-cli/create/_index.md @@ -12,8 +12,8 @@ influxdb3 create ## 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,7 +22,7 @@ influxdb3 create | [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 diff --git a/content/shared/influxdb3-cli/create/database.md b/content/shared/influxdb3-cli/create/database.md index ff3f02b8c..3b3a99c91 100644 --- a/content/shared/influxdb3-cli/create/database.md +++ b/content/shared/influxdb3-cli/create/database.md @@ -23,6 +23,7 @@ influxdb3 create database [OPTIONS] | :----- | :----------- | :--------------------------------------------------------------------------------------- | | `-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 | diff --git a/content/shared/influxdb3-cli/create/distinct_cache.md b/content/shared/influxdb3-cli/create/distinct_cache.md index d48affc32..8fc124e1b 100644 --- a/content/shared/influxdb3-cli/create/distinct_cache.md +++ b/content/shared/influxdb3-cli/create/distinct_cache.md @@ -30,6 +30,7 @@ influxdb3 create distinct_cache [OPTIONS] \ | | `--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 | diff --git a/content/shared/influxdb3-cli/create/file_index.md b/content/shared/influxdb3-cli/create/file_index.md index f6474d958..a507bc829 100644 --- a/content/shared/influxdb3-cli/create/file_index.md +++ b/content/shared/influxdb3-cli/create/file_index.md @@ -25,6 +25,7 @@ influxdb3 create file_index [OPTIONS] \ | `-d` | `--database` | _({{< req >}})_ Name of the database to operate on | | | `--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 | diff --git a/content/shared/influxdb3-cli/create/last_cache.md b/content/shared/influxdb3-cli/create/last_cache.md index bd0735e64..8aa3a402d 100644 --- a/content/shared/influxdb3-cli/create/last_cache.md +++ b/content/shared/influxdb3-cli/create/last_cache.md @@ -26,6 +26,7 @@ influxdb3 create last_cache [OPTIONS] --database --table
    | | `--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 | diff --git a/content/shared/influxdb3-cli/create/plugin.md b/content/shared/influxdb3-cli/create/plugin.md index 2304bbd31..33161b8af 100644 --- a/content/shared/influxdb3-cli/create/plugin.md +++ b/content/shared/influxdb3-cli/create/plugin.md @@ -28,6 +28,7 @@ influxdb3 create plugin [OPTIONS] \ | | `--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 | diff --git a/content/shared/influxdb3-cli/create/table.md b/content/shared/influxdb3-cli/create/table.md index 506ecda95..53d54b3e9 100644 --- a/content/shared/influxdb3-cli/create/table.md +++ b/content/shared/influxdb3-cli/create/table.md @@ -26,6 +26,7 @@ influxdb3 create table [OPTIONS] \ | | `--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 | diff --git a/content/shared/influxdb3-cli/create/trigger.md b/content/shared/influxdb3-cli/create/trigger.md index 1db3b532f..5c6e7a763 100644 --- a/content/shared/influxdb3-cli/create/trigger.md +++ b/content/shared/influxdb3-cli/create/trigger.md @@ -29,6 +29,7 @@ influxdb3 create trigger [OPTIONS] \ | | `--plugin` | Plugin to execute when the trigger fires | | | `--trigger-spec` | Trigger specification--for example `table:` 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 | diff --git a/content/shared/influxdb3-cli/delete/database.md b/content/shared/influxdb3-cli/delete/database.md index 04677a49d..f83e8238d 100644 --- a/content/shared/influxdb3-cli/delete/database.md +++ b/content/shared/influxdb3-cli/delete/database.md @@ -21,6 +21,7 @@ influxdb3 delete database [OPTIONS] | :----- | :----------- | :--------------------------------------------------------------------------------------- | | `-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 | diff --git a/content/shared/influxdb3-cli/delete/distinct_cache.md b/content/shared/influxdb3-cli/delete/distinct_cache.md index e1db983fd..7d3bd8f66 100644 --- a/content/shared/influxdb3-cli/delete/distinct_cache.md +++ b/content/shared/influxdb3-cli/delete/distinct_cache.md @@ -24,6 +24,7 @@ influxdb3 delete distinct_cache [OPTIONS] \ | `-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 | diff --git a/content/shared/influxdb3-cli/delete/file_index.md b/content/shared/influxdb3-cli/delete/file_index.md index a718ff4ab..5d160617a 100644 --- a/content/shared/influxdb3-cli/delete/file_index.md +++ b/content/shared/influxdb3-cli/delete/file_index.md @@ -18,6 +18,7 @@ influxdb3 delete file_index [OPTIONS] --database | `-d` | `--database` | _({{< req >}})_ Name of the database to operate on | | | `--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 | diff --git a/content/shared/influxdb3-cli/delete/last_cache.md b/content/shared/influxdb3-cli/delete/last_cache.md index 03b39c71a..c532affc9 100644 --- a/content/shared/influxdb3-cli/delete/last_cache.md +++ b/content/shared/influxdb3-cli/delete/last_cache.md @@ -21,6 +21,7 @@ influxdb3 delete last_cache [OPTIONS] --database --table
    | `-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 | diff --git a/content/shared/influxdb3-cli/delete/plugin.md b/content/shared/influxdb3-cli/delete/plugin.md index 31dfbf21c..9aca888af 100644 --- a/content/shared/influxdb3-cli/delete/plugin.md +++ b/content/shared/influxdb3-cli/delete/plugin.md @@ -20,6 +20,7 @@ influxdb3 delete plugin [OPTIONS] --database | `-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 | diff --git a/content/shared/influxdb3-cli/delete/table.md b/content/shared/influxdb3-cli/delete/table.md index 7bd32dcfb..c15674071 100644 --- a/content/shared/influxdb3-cli/delete/table.md +++ b/content/shared/influxdb3-cli/delete/table.md @@ -20,6 +20,7 @@ influxdb3 delete table [OPTIONS] --database | `-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 | diff --git a/content/shared/influxdb3-cli/delete/trigger.md b/content/shared/influxdb3-cli/delete/trigger.md index 1a2a7b2c3..ec72ff788 100644 --- a/content/shared/influxdb3-cli/delete/trigger.md +++ b/content/shared/influxdb3-cli/delete/trigger.md @@ -21,6 +21,7 @@ influxdb3 delete trigger [OPTIONS] --database | `-d` | `--database` | _({{< req >}})_ Name of the database to operate on | | | `--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 | diff --git a/content/shared/influxdb3-cli/disable/trigger.md b/content/shared/influxdb3-cli/disable/trigger.md index fe8bc299b..7d1011e8d 100644 --- a/content/shared/influxdb3-cli/disable/trigger.md +++ b/content/shared/influxdb3-cli/disable/trigger.md @@ -20,6 +20,7 @@ influxdb3 disable trigger [OPTIONS] --database | `-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 | diff --git a/content/shared/influxdb3-cli/enable/trigger.md b/content/shared/influxdb3-cli/enable/trigger.md index bc087e9bc..eedf55ac3 100644 --- a/content/shared/influxdb3-cli/enable/trigger.md +++ b/content/shared/influxdb3-cli/enable/trigger.md @@ -20,6 +20,7 @@ influxdb3 enable trigger [OPTIONS] --database | `-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 | diff --git a/content/shared/influxdb3-cli/query.md b/content/shared/influxdb3-cli/query.md index a5f956697..7b13dd8c1 100644 --- a/content/shared/influxdb3-cli/query.md +++ b/content/shared/influxdb3-cli/query.md @@ -33,6 +33,7 @@ influxdb3 query [OPTIONS] --database [QUERY]... | | `--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 | diff --git a/content/shared/influxdb3-cli/show/databases.md b/content/shared/influxdb3-cli/show/databases.md index 0b45fd153..dc16d08be 100644 --- a/content/shared/influxdb3-cli/show/databases.md +++ b/content/shared/influxdb3-cli/show/databases.md @@ -18,6 +18,7 @@ influxdb3 show databases [OPTIONS] | | `--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 | diff --git a/content/shared/influxdb3-cli/show/system/summary.md b/content/shared/influxdb3-cli/show/system/summary.md index 4b2d75826..78168008a 100644 --- a/content/shared/influxdb3-cli/show/system/summary.md +++ b/content/shared/influxdb3-cli/show/system/summary.md @@ -16,6 +16,7 @@ influxdb3 show system --database summary [OPTIONS] | :----- | :----------- | :--------------------------------------------------------------------------------------------- | | `-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 | diff --git a/content/shared/influxdb3-cli/show/system/table-list.md b/content/shared/influxdb3-cli/show/system/table-list.md index 7b828e024..b5e21e5ea 100644 --- a/content/shared/influxdb3-cli/show/system/table-list.md +++ b/content/shared/influxdb3-cli/show/system/table-list.md @@ -11,11 +11,12 @@ influxdb3 show system --database table-list [OPTIONS] ## Options -| Option | | Description | -| :----- | :----------- | :------------------------------------------------------------------------- | -| | `--format` | Output format (`pretty` _(default)_, `json`, `jsonl`, `csv`, or `parquet`) | -| `-h` | `--help` | Print help information | -| | `--help-all` | Print detailed 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 diff --git a/content/shared/influxdb3-cli/show/system/table.md b/content/shared/influxdb3-cli/show/system/table.md index 5ca57d1f4..e492dbbd7 100644 --- a/content/shared/influxdb3-cli/show/system/table.md +++ b/content/shared/influxdb3-cli/show/system/table.md @@ -21,6 +21,7 @@ influxdb3 show system --database table [OPTIONS] | `-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`) | +| | `--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 | diff --git a/content/shared/influxdb3-cli/test/_index.md b/content/shared/influxdb3-cli/test/_index.md index 13bb5f358..d69d56e33 100644 --- a/content/shared/influxdb3-cli/test/_index.md +++ b/content/shared/influxdb3-cli/test/_index.md @@ -11,10 +11,10 @@ influxdb3 test ## 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 diff --git a/content/shared/influxdb3-cli/test/wal_plugin.md b/content/shared/influxdb3-cli/test/wal_plugin.md index ecc3e2727..78da3fd2d 100644 --- a/content/shared/influxdb3-cli/test/wal_plugin.md +++ b/content/shared/influxdb3-cli/test/wal_plugin.md @@ -24,6 +24,7 @@ influxdb3 test wal_plugin [OPTIONS] --database | | `--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 | diff --git a/content/shared/influxdb3-cli/write.md b/content/shared/influxdb3-cli/write.md index 76f12a574..3ffcd0c4e 100644 --- a/content/shared/influxdb3-cli/write.md +++ b/content/shared/influxdb3-cli/write.md @@ -31,6 +31,7 @@ influxdb3 write [OPTIONS] --database [LINE_PROTOCOL]... | | `--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 | From 0e4be06bfc701f7ece89273e8d6b3c27f09f4047 Mon Sep 17 00:00:00 2001 From: Scott Anderson Date: Mon, 14 Apr 2025 20:12:22 -0600 Subject: [PATCH 09/44] clarified cache guides about using admin tokens --- .../shared/influxdb3-admin/distinct-value-cache/create.md | 5 ++--- .../shared/influxdb3-admin/distinct-value-cache/delete.md | 7 +++---- .../shared/influxdb3-admin/distinct-value-cache/show.md | 3 +-- content/shared/influxdb3-admin/last-value-cache/create.md | 7 +++---- content/shared/influxdb3-admin/last-value-cache/delete.md | 4 ++-- content/shared/influxdb3-admin/last-value-cache/show.md | 3 +-- 6 files changed, 12 insertions(+), 17 deletions(-) diff --git a/content/shared/influxdb3-admin/distinct-value-cache/create.md b/content/shared/influxdb3-admin/distinct-value-cache/create.md index 3166d7171..99918ce7d 100644 --- a/content/shared/influxdb3-admin/distinct-value-cache/create.md +++ b/content/shared/influxdb3-admin/distinct-value-cache/create.md @@ -6,7 +6,7 @@ to create a Distinct Value Cache (DVC). Provide the following: associate the DVC with. You can also use the `INFLUXDB3_DATABASE_NAME` environment variable to specify the database. - **Token** (`--token`): _({{< req >}})_ Your {{< product-name >}} - authentication token with write access to the specified table. + admin 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 @@ -74,8 +74,7 @@ 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 >}} authentication token with write access to the - specified database + your {{< product-name >}} admin authentication token - {{% code-placeholder-key %}}`TABLE_NAME`{{% /code-placeholder-key %}}: the name of the table to associate the DVC with {{% show-in "enterprise" %}} diff --git a/content/shared/influxdb3-admin/distinct-value-cache/delete.md b/content/shared/influxdb3-admin/distinct-value-cache/delete.md index a90fc793d..3336eb288 100644 --- a/content/shared/influxdb3-admin/distinct-value-cache/delete.md +++ b/content/shared/influxdb3-admin/distinct-value-cache/delete.md @@ -5,8 +5,8 @@ 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 >}} - authentication token with write access to the specified database. +- **Token** (`--token`): _({{< req >}})_ Your {{< product-name >}} admin + 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 @@ -28,8 +28,7 @@ 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 >}} authentication token with write access to the - specified database + 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 %}}: diff --git a/content/shared/influxdb3-admin/distinct-value-cache/show.md b/content/shared/influxdb3-admin/distinct-value-cache/show.md index 2a20bf6d5..20f1ede3e 100644 --- a/content/shared/influxdb3-admin/distinct-value-cache/show.md +++ b/content/shared/influxdb3-admin/distinct-value-cache/show.md @@ -65,5 +65,4 @@ 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 >}} authentication token with read access to the - specified database + your {{< product-name >}} admin authentication token diff --git a/content/shared/influxdb3-admin/last-value-cache/create.md b/content/shared/influxdb3-admin/last-value-cache/create.md index 91c38f203..79250f3ee 100644 --- a/content/shared/influxdb3-admin/last-value-cache/create.md +++ b/content/shared/influxdb3-admin/last-value-cache/create.md @@ -5,8 +5,8 @@ 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 >}} - authentication token with write access to the specified table. +- **Token** (`--token`): _({{< req >}})_ Your {{< product-name >}} admin + 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 @@ -85,8 +85,7 @@ 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 >}} authentication token with write access to the - specified database + your {{< product-name >}} admin authentication token - {{% code-placeholder-key %}}`TABLE_NAME`{{% /code-placeholder-key %}}: the name of the table to associate the LVC with {{% show-in "enterprise" %}} diff --git a/content/shared/influxdb3-admin/last-value-cache/delete.md b/content/shared/influxdb3-admin/last-value-cache/delete.md index 6cfccc021..7994e1680 100644 --- a/content/shared/influxdb3-admin/last-value-cache/delete.md +++ b/content/shared/influxdb3-admin/last-value-cache/delete.md @@ -5,8 +5,8 @@ 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 >}} - authentication token with write access to the specified database. +- **Token** (`--token`): _({{< req >}})_ Your {{< product-name >}} admin + 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 diff --git a/content/shared/influxdb3-admin/last-value-cache/show.md b/content/shared/influxdb3-admin/last-value-cache/show.md index e4100ca89..7bf1c70a3 100644 --- a/content/shared/influxdb3-admin/last-value-cache/show.md +++ b/content/shared/influxdb3-admin/last-value-cache/show.md @@ -64,5 +64,4 @@ 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 >}} authentication token with read access to the - specified database + your {{< product-name >}} admin authentication token From 221a3ba76951cef2d4c67148e6a99dd040059031 Mon Sep 17 00:00:00 2001 From: Scott Anderson Date: Mon, 14 Apr 2025 20:16:31 -0600 Subject: [PATCH 10/44] admin tokens are only available in enterprise --- .../shared/influxdb3-admin/distinct-value-cache/create.md | 5 +++-- .../shared/influxdb3-admin/distinct-value-cache/delete.md | 4 ++-- .../shared/influxdb3-admin/distinct-value-cache/show.md | 3 ++- content/shared/influxdb3-admin/last-value-cache/create.md | 7 ++++--- content/shared/influxdb3-admin/last-value-cache/delete.md | 8 ++++---- content/shared/influxdb3-admin/last-value-cache/show.md | 3 ++- 6 files changed, 17 insertions(+), 13 deletions(-) diff --git a/content/shared/influxdb3-admin/distinct-value-cache/create.md b/content/shared/influxdb3-admin/distinct-value-cache/create.md index 99918ce7d..51575b27c 100644 --- a/content/shared/influxdb3-admin/distinct-value-cache/create.md +++ b/content/shared/influxdb3-admin/distinct-value-cache/create.md @@ -6,7 +6,7 @@ to create a Distinct Value Cache (DVC). Provide the following: associate the DVC with. You can also use the `INFLUXDB3_DATABASE_NAME` environment variable to specify the database. - **Token** (`--token`): _({{< req >}})_ Your {{< product-name >}} - admin authentication token. + {{% 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 @@ -74,7 +74,8 @@ 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 >}} admin authentication token + 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" %}} diff --git a/content/shared/influxdb3-admin/distinct-value-cache/delete.md b/content/shared/influxdb3-admin/distinct-value-cache/delete.md index 3336eb288..988d1a593 100644 --- a/content/shared/influxdb3-admin/distinct-value-cache/delete.md +++ b/content/shared/influxdb3-admin/distinct-value-cache/delete.md @@ -5,8 +5,8 @@ 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 >}} admin - authentication token. +- **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 diff --git a/content/shared/influxdb3-admin/distinct-value-cache/show.md b/content/shared/influxdb3-admin/distinct-value-cache/show.md index 20f1ede3e..0de0e2ac0 100644 --- a/content/shared/influxdb3-admin/distinct-value-cache/show.md +++ b/content/shared/influxdb3-admin/distinct-value-cache/show.md @@ -65,4 +65,5 @@ 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 >}} admin authentication token + your {{< product-name >}} {{% show-in "enterprise" %}}admin {{% /show-in %}} + authentication token diff --git a/content/shared/influxdb3-admin/last-value-cache/create.md b/content/shared/influxdb3-admin/last-value-cache/create.md index 79250f3ee..ecb110063 100644 --- a/content/shared/influxdb3-admin/last-value-cache/create.md +++ b/content/shared/influxdb3-admin/last-value-cache/create.md @@ -5,8 +5,8 @@ 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 >}} admin - authentication token. +- **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 @@ -85,7 +85,8 @@ 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 >}} admin authentication token + 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" %}} diff --git a/content/shared/influxdb3-admin/last-value-cache/delete.md b/content/shared/influxdb3-admin/last-value-cache/delete.md index 7994e1680..b06ba5eb9 100644 --- a/content/shared/influxdb3-admin/last-value-cache/delete.md +++ b/content/shared/influxdb3-admin/last-value-cache/delete.md @@ -5,8 +5,8 @@ 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 >}} admin - authentication token. +- **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 @@ -28,8 +28,8 @@ 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 >}} authentication token with write access to the - specified database + 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 %}}: diff --git a/content/shared/influxdb3-admin/last-value-cache/show.md b/content/shared/influxdb3-admin/last-value-cache/show.md index 7bf1c70a3..cf0aa7019 100644 --- a/content/shared/influxdb3-admin/last-value-cache/show.md +++ b/content/shared/influxdb3-admin/last-value-cache/show.md @@ -64,4 +64,5 @@ 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 >}} admin authentication token + your {{< product-name >}} {{% show-in "enterprise" %}}admin {{% /show-in %}} + authentication token From 21ad484c197a023406730bb0babe41fdf2a3070f Mon Sep 17 00:00:00 2001 From: Jason Stirnaman Date: Mon, 14 Apr 2025 18:54:38 -0500 Subject: [PATCH 11/44] feat(enterprise): Get-started using admin, database, and system tokens --- .../v3-enterprise-get-started/_index.md | 118 ++++++++++++++++++ 1 file changed, 118 insertions(+) diff --git a/content/shared/v3-enterprise-get-started/_index.md b/content/shared/v3-enterprise-get-started/_index.md index 26a1f3296..1488e6bca 100644 --- a/content/shared/v3-enterprise-get-started/_index.md +++ b/content/shared/v3-enterprise-get-started/_index.md @@ -232,6 +232,124 @@ Upon verification, the license creation, retrieval, and application are automate _During the beta period, licenses are valid until May 7, 2025._ +### Authentication and authorization + +{{% product-name %}} uses token-based authentication and authorization which is enabled by default when you start the server. +With authentication enabled, you must provide an _admin token_ or _database token_ to access the server. + +- **admin token**: Grants access to all CLI actions and API endpoints. +_ **database token**: Scoped to a specific database and grant access to write and query data in that database. + Creating a database token requires an admin token. + +After you have [started the server](#start-influxdb), you can create and manage tokens using the `influxdb3` CLI or the HTTP API. + +When you create a token InfluxDB 3 returns a token string in clear text +that you can use to authenticate CLI commands (using ) 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` subcommand and pass the `--admin` flag--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. + +To have the `influxdb3` CLI use your admin token automatically, assign it to the +`INFLUXDB3_AUTH_TOKEN` environment variable. + +After you have created an admin token, you can use it to create database tokens and system tokens. + +> [!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 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 (read and write) 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 (read) in the `RESOURCE_TYPE:RESOURCE_NAMES:ACTIONS` format--for example: + - system:*:read + - `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. + + + +#### 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 ` in the `Authorization` header--for example: + + ```bash + curl \ + "http://{{< influxdb/host >}}/api/v3/query_sql?db=mydb" \ + ### 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. From be6d98abce80ee83aea24a6eefcfb911df0e383b Mon Sep 17 00:00:00 2001 From: Jason Stirnaman Date: Mon, 14 Apr 2025 21:49:53 -0500 Subject: [PATCH 12/44] feat(monolith): Get started using tokens --- .../v3-enterprise-get-started/_index.md | 66 +++++++++++-------- 1 file changed, 37 insertions(+), 29 deletions(-) diff --git a/content/shared/v3-enterprise-get-started/_index.md b/content/shared/v3-enterprise-get-started/_index.md index 1488e6bca..2414010d5 100644 --- a/content/shared/v3-enterprise-get-started/_index.md +++ b/content/shared/v3-enterprise-get-started/_index.md @@ -234,19 +234,19 @@ _During the beta period, licenses are valid until May 7, 2025._ ### Authentication and authorization -{{% product-name %}} uses token-based authentication and authorization which is enabled by default when you start the server. -With authentication enabled, you must provide an _admin token_ or _database token_ to access the server. - -- **admin token**: Grants access to all CLI actions and API endpoints. -_ **database token**: Scoped to a specific database and grant access to write and query data in that database. - Creating a database token requires an admin token. - 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: -When you create a token InfluxDB 3 returns a token string in clear text -that you can use to authenticate CLI commands (using ) and API requests. +- **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. + - Database tokens are scoped to a specific database and grant access to write and query data in that database. You can create multiple resource tokens for different databases + - System tokens grant read access to system information and metrics for the server +When you create a token, InfluxDB 3 returns a token string in clear 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 @@ -264,24 +264,16 @@ To have the `influxdb3` CLI use your admin token automatically, assign it to the To create an admin token, use the `influxdb3 create token` subcommand and pass the `--admin` flag--for example: ```bash - influxdb3 create token --admin \ +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. -To have the `influxdb3` CLI use your admin token automatically, assign it to the -`INFLUXDB3_AUTH_TOKEN` environment variable. - After you have created an admin token, you can use it to create database tokens and system tokens. -> [!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. +For more information, see how to [Manage admin tokens](/influxdb3/version/admin/tokens/admin/). #### Create a database token @@ -293,8 +285,8 @@ To create a database token, use the `influxdb3 create token` subcommand and pass - `--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 (read and write) in the `RESOURCE_TYPE:RESOURCE_NAMES:ACTIONS` format--for example: - - db:mydb:read,write +- 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. @@ -332,23 +324,39 @@ To create a system token, use the `influxdb3 create token` subcommand and pass t 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 (read) in the `RESOURCE_TYPE:RESOURCE_NAMES:ACTIONS` format--for example: - - system:*:read - - `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. +- 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 ` in the `Authorization` header--for example: +- To authenticate HTTP API requests, include `Bearer ` in the `Authorization` header value--for example: ```bash - curl \ - "http://{{< influxdb/host >}}/api/v3/query_sql?db=mydb" \ + 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 From e088f1763db19b4164cf0b5a1682ba03e3efebb8 Mon Sep 17 00:00:00 2001 From: Jason Stirnaman Date: Mon, 14 Apr 2025 21:58:00 -0500 Subject: [PATCH 13/44] feat(monolith): Core: get-started with admin tokens --- content/shared/v3-core-get-started/_index.md | 34 ++++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/content/shared/v3-core-get-started/_index.md b/content/shared/v3-core-get-started/_index.md index ac88b1404..410603545 100644 --- a/content/shared/v3-core-get-started/_index.md +++ b/content/shared/v3-core-get-started/_index.md @@ -219,6 +219,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 clear 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` subcommand and pass the `--admin` flag--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. From 15c1c77f02c5e4499450752d6dff36793811686e Mon Sep 17 00:00:00 2001 From: Peter Barnett Date: Mon, 14 Apr 2025 23:05:58 -0400 Subject: [PATCH 14/44] chore:influxdb3 explorer install info --- .../_index.md | 15 ++++++++++++ content/shared/v3-core-get-started/_index.md | 24 +++++++++++++++++++ .../v3-enterprise-get-started/_index.md | 24 +++++++++++++++++++ 3 files changed, 63 insertions(+) diff --git a/content/shared/v3-core-enterprise-release-notes/_index.md b/content/shared/v3-core-enterprise-release-notes/_index.md index f5073a3d7..7650aa640 100644 --- a/content/shared/v3-core-enterprise-release-notes/_index.md +++ b/content/shared/v3-core-enterprise-release-notes/_index.md @@ -5,6 +5,21 @@ > All updates to Core are automatically included in Enterprise. > The Enterprise sections below only list features exclusive to Enterprise. +## v3.0.0-0 {date="2025-04-14"} +### Core +#### General Updates +- Performance and reliability improvements. + +### Enterprise +#### Token Support +- Authorization is now turned on by default. +- Token support for database level permissions are now available. +- Token support for system level queries are now available. + +#### General Updates +- You can now use Commercial, Trial, and At-Home licenses. + + ## v3.0.0-0.beta.3 {date="2025-04-01"} **Core**: revision f881c5844bec93a85242f26357a1ef3ebf419dd3 **Enterprise**: revision 6bef9e700a59c0973b0cefdc6baf11583933e262 diff --git a/content/shared/v3-core-get-started/_index.md b/content/shared/v3-core-get-started/_index.md index ac88b1404..25cd02bcf 100644 --- a/content/shared/v3-core-get-started/_index.md +++ b/content/shared/v3-core-get-started/_index.md @@ -102,6 +102,14 @@ Pull the image: docker pull quay.io/influxdb/influxdb3-core:latest ``` +##### InfluxDB 3 Explorer -- Query Interface + +You can additionally download the new InfluxDB 3 Explorer query interface using Docker. Pull the image: + +```bash +docker pull quay.io/influxdb/influxdb3-explorer:latest +``` + {{% /tab-content %}} {{% /tabs-wrapper %}} @@ -645,6 +653,22 @@ print(table.group_by('cpu').aggregate([('time_system', 'mean')])) For more information about the Python client library, see the [`influxdb3-python` repository](https://github.com/InfluxCommunity/influxdb3-python) in GitHub. + +### Query using InfluxDB 3 Explorer +You can use the InfluxDB 3 Explorer query interface by downloading the Docker image. + +```bash +docker pull quay.io/influxdb/influxdb3-explorer:latest +``` + +Run the interface using: + +```bash +docker run --name influxdb3-explorer -p 8086:8888 quay.io/influxdb/influxdb3-explorer:latest +``` + +With the default settings above, you can access the UI at http://localhost:8086. Set your expected database connection details on the Settings page. From there, you can query UI, browser your database schema, and do basic visualization of your time series data. + ### Last values cache {{% product-name %}} supports a **last-n values cache** which stores the last N values in a series or column hierarchy in memory. This gives the database the ability to answer these kinds of queries in under 10 milliseconds. diff --git a/content/shared/v3-enterprise-get-started/_index.md b/content/shared/v3-enterprise-get-started/_index.md index 26a1f3296..9f667657b 100644 --- a/content/shared/v3-enterprise-get-started/_index.md +++ b/content/shared/v3-enterprise-get-started/_index.md @@ -101,6 +101,13 @@ Pull the image: docker pull quay.io/influxdb/influxdb3-enterprise:latest ``` +##### InfluxDB 3 Explorer -- Query Interface + +You can additionally download the new InfluxDB 3 Explorer query interface using Docker. Pull the image: +```bash +docker pull quay.io/influxdb/influxdb3-explorer:latest +``` + {{% /tab-content %}} {{% /tabs-wrapper %}} @@ -645,6 +652,23 @@ print(table.group_by('cpu').aggregate([('time_system', 'mean')])) For more information about the Python client library, see the [`influxdb3-python` repository](https://github.com/InfluxCommunity/influxdb3-python) in GitHub. + +### Query using InfluxDB 3 Explorer +You can use the InfluxDB 3 Explorer query interface by downloading the Docker image. + +```bash +docker pull quay.io/influxdb/influxdb3-explorer:latest +``` + +Run the interface using: + +```bash +docker run --name influxdb3-explorer -p 8086:8888 quay.io/influxdb/influxdb3-explorer:latest +``` + +With the default settings above, you can access the UI at http://localhost:8086. Set your expected database connection details on the Settings page. From there, you can query UI, browser your database schema, and do basic visualization of your time series data. + + ### Last values cache {{% product-name %}} supports a **last-n values cache** which stores the last N values in a series or column hierarchy in memory. This gives the database the ability to answer these kinds of queries in under 10 milliseconds. From 86713e2ecb525f710d482f65db94ed2bd68e3f1c Mon Sep 17 00:00:00 2001 From: Jason Stirnaman Date: Mon, 14 Apr 2025 22:11:02 -0500 Subject: [PATCH 15/44] fix: cleanup --- content/shared/v3-core-get-started/_index.md | 17 +++++++++-------- .../v3-enterprise-get-started/_index.md | 19 ++++++++++--------- 2 files changed, 19 insertions(+), 17 deletions(-) diff --git a/content/shared/v3-core-get-started/_index.md b/content/shared/v3-core-get-started/_index.md index 410603545..0efb504bc 100644 --- a/content/shared/v3-core-get-started/_index.md +++ b/content/shared/v3-core-get-started/_index.md @@ -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 diff --git a/content/shared/v3-enterprise-get-started/_index.md b/content/shared/v3-enterprise-get-started/_index.md index 2414010d5..6bafe1de2 100644 --- a/content/shared/v3-enterprise-get-started/_index.md +++ b/content/shared/v3-enterprise-get-started/_index.md @@ -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 From 6161025dca71caeeae061de58065b3ecfc7db0f8 Mon Sep 17 00:00:00 2001 From: Jason Stirnaman Date: Mon, 14 Apr 2025 22:16:36 -0500 Subject: [PATCH 16/44] fix(mono): get-started suggestions --- content/shared/v3-core-get-started/_index.md | 4 ++-- content/shared/v3-enterprise-get-started/_index.md | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/content/shared/v3-core-get-started/_index.md b/content/shared/v3-core-get-started/_index.md index 0efb504bc..2522d3838 100644 --- a/content/shared/v3-core-get-started/_index.md +++ b/content/shared/v3-core-get-started/_index.md @@ -227,7 +227,7 @@ After you have [started the server](#start-influxdb), you can create and manage 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 clear text +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. @@ -243,7 +243,7 @@ To have the `influxdb3` CLI use your admin token automatically, assign it to the #### Create an admin token -To create an admin token, use the `influxdb3 create token` subcommand and pass the `--admin` flag--for example: +To create an admin token, use the `influxdb3 create token --admin` subcommand--for example: ```bash influxdb3 create token --admin \ diff --git a/content/shared/v3-enterprise-get-started/_index.md b/content/shared/v3-enterprise-get-started/_index.md index 6bafe1de2..55dbf398f 100644 --- a/content/shared/v3-enterprise-get-started/_index.md +++ b/content/shared/v3-enterprise-get-started/_index.md @@ -246,7 +246,7 @@ With authentication enabled, you must provide a token to access server actions. - Database tokens are scoped to a specific database and grant access to write and query data in that database. You can create multiple resource tokens for different databases - System tokens grant read access to system information and metrics for the server -When you create a token, InfluxDB 3 returns a token string in clear text +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. @@ -262,7 +262,7 @@ To have the `influxdb3` CLI use your admin token automatically, assign it to the #### Create an admin token -To create an admin token, use the `influxdb3 create token` subcommand and pass the `--admin` flag--for example: +To create an admin token, use the `influxdb3 create token --admin` subcommand--for example: ```bash influxdb3 create token --admin \ From f7be9d255e33fad0caef440a09e976105768730e Mon Sep 17 00:00:00 2001 From: Jason Stirnaman Date: Mon, 14 Apr 2025 22:25:40 -0500 Subject: [PATCH 17/44] fix(mono): get-started with resource tokens --- content/shared/v3-enterprise-get-started/_index.md | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/content/shared/v3-enterprise-get-started/_index.md b/content/shared/v3-enterprise-get-started/_index.md index 55dbf398f..f62276a2d 100644 --- a/content/shared/v3-enterprise-get-started/_index.md +++ b/content/shared/v3-enterprise-get-started/_index.md @@ -243,8 +243,14 @@ With authentication enabled, you must provide a token to access server actions. - **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. - - Database tokens are scoped to a specific database and grant access to write and query data in that database. You can create multiple resource tokens for different databases - - System tokens grant read access to system information and metrics for 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. From 674f8f4a9a3e8f305a7d31deb3d880114e3bf3ff Mon Sep 17 00:00:00 2001 From: Jason Stirnaman Date: Tue, 15 Apr 2025 00:44:19 -0500 Subject: [PATCH 18/44] fix(dist): CD and Clustered descriptions --- .../influxdb3/cloud-dedicated/admin/tokens/database/create.md | 2 +- content/influxdb3/clustered/admin/tokens/database/create.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/content/influxdb3/cloud-dedicated/admin/tokens/database/create.md b/content/influxdb3/cloud-dedicated/admin/tokens/database/create.md index 306baa7e2..5148268ec 100644 --- a/content/influxdb3/cloud-dedicated/admin/tokens/database/create.md +++ b/content/influxdb3/cloud-dedicated/admin/tokens/database/create.md @@ -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: diff --git a/content/influxdb3/clustered/admin/tokens/database/create.md b/content/influxdb3/clustered/admin/tokens/database/create.md index a08149983..2c5ad9a92 100644 --- a/content/influxdb3/clustered/admin/tokens/database/create.md +++ b/content/influxdb3/clustered/admin/tokens/database/create.md @@ -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: From de8ab2ec7ff6027807e57b28011bf04602d80538 Mon Sep 17 00:00:00 2001 From: Jason Stirnaman Date: Tue, 15 Apr 2025 02:21:38 -0500 Subject: [PATCH 19/44] feat(mono): Manage admin tokens --- content/influxdb3/core/admin/tokens/_index.md | 17 +++++++++ .../core/admin/tokens/admin/_index.md | 19 ++++++++++ .../core/admin/tokens/admin/create.md | 24 +++++++++++++ .../influxdb3/core/admin/tokens/admin/list.md | 21 +++++++++++ .../core/admin/tokens/admin/regenerate.md | 25 +++++++++++++ .../enterprise/admin/tokens/_index.md | 17 +++++++++ .../enterprise/admin/tokens/admin/_index.md | 19 ++++++++++ .../enterprise/admin/tokens/admin/create.md | 24 +++++++++++++ .../enterprise/admin/tokens/admin/list.md | 21 +++++++++++ .../admin/tokens/admin/regenerate.md | 25 +++++++++++++ .../enterprise/admin/tokens/resource/list.md | 36 +++++++++++++++++++ .../shared/influxdb3-admin/tokens/_index.md | 10 ++++++ .../influxdb3-admin/tokens/admin/_index.md | 6 ++++ .../influxdb3-admin/tokens/admin/create.md | 33 +++++++++++++++++ .../influxdb3-admin/tokens/admin/list.md | 29 +++++++++++++++ .../tokens/admin/regenerate.md | 15 ++++++++ 16 files changed, 341 insertions(+) create mode 100644 content/influxdb3/core/admin/tokens/_index.md create mode 100644 content/influxdb3/core/admin/tokens/admin/_index.md create mode 100644 content/influxdb3/core/admin/tokens/admin/create.md create mode 100644 content/influxdb3/core/admin/tokens/admin/list.md create mode 100644 content/influxdb3/core/admin/tokens/admin/regenerate.md create mode 100644 content/influxdb3/enterprise/admin/tokens/_index.md create mode 100644 content/influxdb3/enterprise/admin/tokens/admin/_index.md create mode 100644 content/influxdb3/enterprise/admin/tokens/admin/create.md create mode 100644 content/influxdb3/enterprise/admin/tokens/admin/list.md create mode 100644 content/influxdb3/enterprise/admin/tokens/admin/regenerate.md create mode 100644 content/influxdb3/enterprise/admin/tokens/resource/list.md create mode 100644 content/shared/influxdb3-admin/tokens/_index.md create mode 100644 content/shared/influxdb3-admin/tokens/admin/_index.md create mode 100644 content/shared/influxdb3-admin/tokens/admin/create.md create mode 100644 content/shared/influxdb3-admin/tokens/admin/list.md create mode 100644 content/shared/influxdb3-admin/tokens/admin/regenerate.md diff --git a/content/influxdb3/core/admin/tokens/_index.md b/content/influxdb3/core/admin/tokens/_index.md new file mode 100644 index 000000000..b5ecc09d7 --- /dev/null +++ b/content/influxdb3/core/admin/tokens/_index.md @@ -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 >}} diff --git a/content/influxdb3/core/admin/tokens/admin/_index.md b/content/influxdb3/core/admin/tokens/admin/_index.md new file mode 100644 index 000000000..ac5510003 --- /dev/null +++ b/content/influxdb3/core/admin/tokens/admin/_index.md @@ -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 +--- + + \ No newline at end of file diff --git a/content/influxdb3/core/admin/tokens/admin/create.md b/content/influxdb3/core/admin/tokens/admin/create.md new file mode 100644 index 000000000..c83de07fc --- /dev/null +++ b/content/influxdb3/core/admin/tokens/admin/create.md @@ -0,0 +1,24 @@ +--- +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 +--- + + \ No newline at end of file diff --git a/content/influxdb3/core/admin/tokens/admin/list.md b/content/influxdb3/core/admin/tokens/admin/list.md new file mode 100644 index 000000000..31ddcbc2c --- /dev/null +++ b/content/influxdb3/core/admin/tokens/admin/list.md @@ -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 +--- + + \ No newline at end of file diff --git a/content/influxdb3/core/admin/tokens/admin/regenerate.md b/content/influxdb3/core/admin/tokens/admin/regenerate.md new file mode 100644 index 000000000..fe7038826 --- /dev/null +++ b/content/influxdb3/core/admin/tokens/admin/regenerate.md @@ -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 +--- + + \ No newline at end of file diff --git a/content/influxdb3/enterprise/admin/tokens/_index.md b/content/influxdb3/enterprise/admin/tokens/_index.md new file mode 100644 index 000000000..05a33f63c --- /dev/null +++ b/content/influxdb3/enterprise/admin/tokens/_index.md @@ -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 >}} diff --git a/content/influxdb3/enterprise/admin/tokens/admin/_index.md b/content/influxdb3/enterprise/admin/tokens/admin/_index.md new file mode 100644 index 000000000..d870c5e91 --- /dev/null +++ b/content/influxdb3/enterprise/admin/tokens/admin/_index.md @@ -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 +--- + + \ No newline at end of file diff --git a/content/influxdb3/enterprise/admin/tokens/admin/create.md b/content/influxdb3/enterprise/admin/tokens/admin/create.md new file mode 100644 index 000000000..3eb05c425 --- /dev/null +++ b/content/influxdb3/enterprise/admin/tokens/admin/create.md @@ -0,0 +1,24 @@ +--- +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 +--- + + \ No newline at end of file diff --git a/content/influxdb3/enterprise/admin/tokens/admin/list.md b/content/influxdb3/enterprise/admin/tokens/admin/list.md new file mode 100644 index 000000000..0b05bb908 --- /dev/null +++ b/content/influxdb3/enterprise/admin/tokens/admin/list.md @@ -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 +--- + + \ No newline at end of file diff --git a/content/influxdb3/enterprise/admin/tokens/admin/regenerate.md b/content/influxdb3/enterprise/admin/tokens/admin/regenerate.md new file mode 100644 index 000000000..f595ce3b5 --- /dev/null +++ b/content/influxdb3/enterprise/admin/tokens/admin/regenerate.md @@ -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 +--- + + \ No newline at end of file diff --git a/content/influxdb3/enterprise/admin/tokens/resource/list.md b/content/influxdb3/enterprise/admin/tokens/resource/list.md new file mode 100644 index 000000000..9c3f54924 --- /dev/null +++ b/content/influxdb3/enterprise/admin/tokens/resource/list.md @@ -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 +--- + + \ No newline at end of file diff --git a/content/shared/influxdb3-admin/tokens/_index.md b/content/shared/influxdb3-admin/tokens/_index.md new file mode 100644 index 000000000..8c0d4f906 --- /dev/null +++ b/content/shared/influxdb3-admin/tokens/_index.md @@ -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 >}} \ No newline at end of file diff --git a/content/shared/influxdb3-admin/tokens/admin/_index.md b/content/shared/influxdb3-admin/tokens/admin/_index.md new file mode 100644 index 000000000..a98cfeedf --- /dev/null +++ b/content/shared/influxdb3-admin/tokens/admin/_index.md @@ -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 >}} \ No newline at end of file diff --git a/content/shared/influxdb3-admin/tokens/admin/create.md b/content/shared/influxdb3-admin/tokens/admin/create.md new file mode 100644 index 000000000..f3e77323e --- /dev/null +++ b/content/shared/influxdb3-admin/tokens/admin/create.md @@ -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. \ No newline at end of file diff --git a/content/shared/influxdb3-admin/tokens/admin/list.md b/content/shared/influxdb3-admin/tokens/admin/list.md new file mode 100644 index 000000000..152bdf1c2 --- /dev/null +++ b/content/shared/influxdb3-admin/tokens/admin/list.md @@ -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` + + +Use the `--format` flag to specify the output format: + +```sh +influxdb3 show tokens \ + --format json +``` \ No newline at end of file diff --git a/content/shared/influxdb3-admin/tokens/admin/regenerate.md b/content/shared/influxdb3-admin/tokens/admin/regenerate.md new file mode 100644 index 000000000..4d293076e --- /dev/null +++ b/content/shared/influxdb3-admin/tokens/admin/regenerate.md @@ -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. \ No newline at end of file From bee37a56c2f730b209fc18bda18a8bd45a8c7f93 Mon Sep 17 00:00:00 2001 From: Peter Barnett Date: Tue, 15 Apr 2025 07:27:51 -0400 Subject: [PATCH 20/44] chore: update to beta for explorer --- content/shared/v3-core-get-started/_index.md | 6 +++--- content/shared/v3-enterprise-get-started/_index.md | 4 ++-- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/content/shared/v3-core-get-started/_index.md b/content/shared/v3-core-get-started/_index.md index 25cd02bcf..b4fafc9ab 100644 --- a/content/shared/v3-core-get-started/_index.md +++ b/content/shared/v3-core-get-started/_index.md @@ -102,9 +102,9 @@ Pull the image: docker pull quay.io/influxdb/influxdb3-core:latest ``` -##### InfluxDB 3 Explorer -- Query Interface +##### InfluxDB 3 Explorer -- Query Interface (Beta) -You can additionally download the new InfluxDB 3 Explorer query interface using Docker. Pull the image: +You can additionally download the new InfluxDB 3 Explorer query interface using Docker. Explorer is currently in beta. Pull the image: ```bash docker pull quay.io/influxdb/influxdb3-explorer:latest @@ -654,7 +654,7 @@ print(table.group_by('cpu').aggregate([('time_system', 'mean')])) For more information about the Python client library, see the [`influxdb3-python` repository](https://github.com/InfluxCommunity/influxdb3-python) in GitHub. -### Query using InfluxDB 3 Explorer +### Query using InfluxDB 3 Explorer (Beta) You can use the InfluxDB 3 Explorer query interface by downloading the Docker image. ```bash diff --git a/content/shared/v3-enterprise-get-started/_index.md b/content/shared/v3-enterprise-get-started/_index.md index 9f667657b..2c93c7dbc 100644 --- a/content/shared/v3-enterprise-get-started/_index.md +++ b/content/shared/v3-enterprise-get-started/_index.md @@ -103,7 +103,7 @@ docker pull quay.io/influxdb/influxdb3-enterprise:latest ##### InfluxDB 3 Explorer -- Query Interface -You can additionally download the new InfluxDB 3 Explorer query interface using Docker. Pull the image: +You can additionally download the new InfluxDB 3 Explorer query interface using Docker. Explorer is currently in beta. Pull the image: ```bash docker pull quay.io/influxdb/influxdb3-explorer:latest ``` @@ -653,7 +653,7 @@ print(table.group_by('cpu').aggregate([('time_system', 'mean')])) For more information about the Python client library, see the [`influxdb3-python` repository](https://github.com/InfluxCommunity/influxdb3-python) in GitHub. -### Query using InfluxDB 3 Explorer +### Query using InfluxDB 3 Explorer (Beta) You can use the InfluxDB 3 Explorer query interface by downloading the Docker image. ```bash From 33a8e897458b45b66972e4175e811fe7ef6726ef Mon Sep 17 00:00:00 2001 From: Jakub Bednar Date: Tue, 15 Apr 2025 14:11:11 +0200 Subject: [PATCH 21/44] Release Chronograf v1.10.7 --- .../chronograf/v1/about_the_project/release-notes.md | 10 ++++++++++ data/products.yml | 12 ++++++------ 2 files changed, 16 insertions(+), 6 deletions(-) diff --git a/content/chronograf/v1/about_the_project/release-notes.md b/content/chronograf/v1/about_the_project/release-notes.md index ed15f4b61..5cc972a4f 100644 --- a/content/chronograf/v1/about_the_project/release-notes.md +++ b/content/chronograf/v1/about_the_project/release-notes.md @@ -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 diff --git a/data/products.yml b/data/products.yml index 4e46dbd3b..8643ba8ca 100644 --- a/data/products.yml +++ b/data/products.yml @@ -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? From 3f1726dc046426720b5c3785357be4a8317d3790 Mon Sep 17 00:00:00 2001 From: Scott Anderson Date: Tue, 15 Apr 2025 07:10:15 -0600 Subject: [PATCH 22/44] fixed token code examples in frontmatter --- content/influxdb3/core/admin/tokens/admin/create.md | 3 ++- content/influxdb3/enterprise/admin/tokens/admin/create.md | 1 + 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/content/influxdb3/core/admin/tokens/admin/create.md b/content/influxdb3/core/admin/tokens/admin/create.md index c83de07fc..6b2038e36 100644 --- a/content/influxdb3/core/admin/tokens/admin/create.md +++ b/content/influxdb3/core/admin/tokens/admin/create.md @@ -12,7 +12,8 @@ weight: 201 list_code_example: | ##### CLI ```bash - influxdb3 create token --admin + influxdb3 create token --admin + ``` alt_links: cloud-dedicated: /influxdb3/cloud-dedicated/admin/tokens/create-token/ cloud-serverless: /influxdb3/cloud-serverless/admin/tokens/create-token/ diff --git a/content/influxdb3/enterprise/admin/tokens/admin/create.md b/content/influxdb3/enterprise/admin/tokens/admin/create.md index 3eb05c425..3ccbca9e7 100644 --- a/content/influxdb3/enterprise/admin/tokens/admin/create.md +++ b/content/influxdb3/enterprise/admin/tokens/admin/create.md @@ -13,6 +13,7 @@ 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/ From 95eb62e234c23c411502236414986b16ade89149 Mon Sep 17 00:00:00 2001 From: Scott Anderson Date: Tue, 15 Apr 2025 07:16:29 -0600 Subject: [PATCH 23/44] Apply suggestions from code review --- .../v3-core-enterprise-release-notes/_index.md | 6 ++++++ content/shared/v3-core-get-started/_index.md | 8 ++++++-- content/shared/v3-enterprise-get-started/_index.md | 12 +++++++++--- 3 files changed, 21 insertions(+), 5 deletions(-) diff --git a/content/shared/v3-core-enterprise-release-notes/_index.md b/content/shared/v3-core-enterprise-release-notes/_index.md index 7650aa640..f30bf1b48 100644 --- a/content/shared/v3-core-enterprise-release-notes/_index.md +++ b/content/shared/v3-core-enterprise-release-notes/_index.md @@ -6,17 +6,23 @@ > The Enterprise sections below only list features exclusive to Enterprise. ## v3.0.0-0 {date="2025-04-14"} + ### Core + #### General Updates + - Performance and reliability improvements. ### Enterprise + #### Token Support + - Authorization is now turned on by default. - Token support for database level permissions are now available. - Token support for system level queries are now available. #### General Updates + - You can now use Commercial, Trial, and At-Home licenses. diff --git a/content/shared/v3-core-get-started/_index.md b/content/shared/v3-core-get-started/_index.md index b4fafc9ab..f0c20cec7 100644 --- a/content/shared/v3-core-get-started/_index.md +++ b/content/shared/v3-core-get-started/_index.md @@ -104,7 +104,8 @@ docker pull quay.io/influxdb/influxdb3-core:latest ##### InfluxDB 3 Explorer -- Query Interface (Beta) -You can additionally download the new InfluxDB 3 Explorer query interface using Docker. Explorer is currently in beta. Pull the image: +You can download the new InfluxDB 3 Explorer query interface using Docker. +Explorer is currently in beta. Pull the image: ```bash docker pull quay.io/influxdb/influxdb3-explorer:latest @@ -667,7 +668,10 @@ Run the interface using: docker run --name influxdb3-explorer -p 8086:8888 quay.io/influxdb/influxdb3-explorer:latest ``` -With the default settings above, you can access the UI at http://localhost:8086. Set your expected database connection details on the Settings page. From there, you can query UI, browser your database schema, and do basic visualization of your time series data. +With the default settings above, you can access the UI at http://localhost:8086. +Set your expected database connection details on the Settings page. +From there, you can query data, browser your database schema, and do basic +visualization of your time series data. ### Last values cache diff --git a/content/shared/v3-enterprise-get-started/_index.md b/content/shared/v3-enterprise-get-started/_index.md index 2c93c7dbc..68f0f8375 100644 --- a/content/shared/v3-enterprise-get-started/_index.md +++ b/content/shared/v3-enterprise-get-started/_index.md @@ -101,9 +101,11 @@ Pull the image: docker pull quay.io/influxdb/influxdb3-enterprise:latest ``` -##### InfluxDB 3 Explorer -- Query Interface +##### InfluxDB 3 Explorer -- Query Interface (beta) + +You can download the new InfluxDB 3 Explorer query interface using Docker. +Explorer is currently in beta. Pull the image: -You can additionally download the new InfluxDB 3 Explorer query interface using Docker. Explorer is currently in beta. Pull the image: ```bash docker pull quay.io/influxdb/influxdb3-explorer:latest ``` @@ -654,6 +656,7 @@ For more information about the Python client library, see the [`influxdb3-python ### Query using InfluxDB 3 Explorer (Beta) + You can use the InfluxDB 3 Explorer query interface by downloading the Docker image. ```bash @@ -666,7 +669,10 @@ Run the interface using: docker run --name influxdb3-explorer -p 8086:8888 quay.io/influxdb/influxdb3-explorer:latest ``` -With the default settings above, you can access the UI at http://localhost:8086. Set your expected database connection details on the Settings page. From there, you can query UI, browser your database schema, and do basic visualization of your time series data. +With the default settings above, you can access the UI at http://localhost:8086. +Set your expected database connection details on the Settings page. +From there, you can query data, browser your database schema, and do basic +visualization of your time series data. ### Last values cache From ee2ab9f1138d7b39d31f4b44ebab169b871821eb Mon Sep 17 00:00:00 2001 From: Jason Stirnaman Date: Tue, 15 Apr 2025 07:57:59 -0500 Subject: [PATCH 24/44] feat(enterprise): Create database and system resource tokens --- .../admin/tokens/resource/_index.md | 20 + .../admin/tokens/resource/create.md | 515 ++++++++++++++++++ 2 files changed, 535 insertions(+) create mode 100644 content/influxdb3/enterprise/admin/tokens/resource/_index.md create mode 100644 content/influxdb3/enterprise/admin/tokens/resource/create.md diff --git a/content/influxdb3/enterprise/admin/tokens/resource/_index.md b/content/influxdb3/enterprise/admin/tokens/resource/_index.md new file mode 100644 index 000000000..48e676198 --- /dev/null +++ b/content/influxdb3/enterprise/admin/tokens/resource/_index.md @@ -0,0 +1,20 @@ +--- +title: Manage resource tokens +seotitle: Manage resource tokens in {{< product-name >}} +description: > + Manage resource tokens in your {{< product-name >}} instance. + Resource tokens grant read and write permissions resources, such as databases + and system information endpoints in your {{< product-name >}} instance. + Database resource tokens allow for actions like writing and querying data. +menu: + influxdb3_core: + parent: Manage tokens + name: Resource tokens +weight: 101 +influxdb3/core/tags: [tokens] +source: /shared/influxdb3-admin/tokens/database/_index.md +--- + + diff --git a/content/influxdb3/enterprise/admin/tokens/resource/create.md b/content/influxdb3/enterprise/admin/tokens/resource/create.md new file mode 100644 index 000000000..48a3c248b --- /dev/null +++ b/content/influxdb3/enterprise/admin/tokens/resource/create.md @@ -0,0 +1,515 @@ +--- +title: Create a resource token +description: > + Use the [`influxdb3 create token --permission` command](/influxdb3/enterprise/reference/cli/influxdb3/create/token/) + or the [HTTP API](/influxdb3/enterprise/api/v3/) + to create tokens that grant access to resources such as databases and system information. + Database tokens allow for reading and writing data in your {{< product-name omit="Clustered" >}} instance. + System tokens allow for reading system information and metrics for your server. +menu: + influxdb3_enterprise: + parent: Resource tokens +weight: 201 +list_code_example: | + ##### CLI + ```bash + influxdb3 create token --permission \ + --token ADMIN_TOKEN \ + --expiry 1y \ + --name "Read-write on DATABASE1, DATABASE2" \ + db:DATABASE1,DATABASE2:read,write + ``` + + ##### HTTP API + "http://{{< influxdb/host >}}/api/v3/enterprise/configure/token" \ + --header 'Accept: application/json' \ + --header 'Content-Type: application/json' \ + --header "Authorization: Bearer ADMIN_TOKEN" \ + --data '{ + "token_name": "Read-write for DATABASE1, DATABASE2", + "permissions": [{ + "resource_type": "db", + "resource_identifier": ["DATABASE1","DATABASE2"], + "actions": ["read","write"] + }], + "expiry_secs": 300000 + }' + ``` +alt_links: + cloud-dedicated: /influxdb3/enterprise/admin/tokens/create-token/ + cloud-serverless: /influxdb3/cloud-serverless/admin/tokens/create-token/ +source: /shared/influxdb3-admin/tokens/database/create.md +--- + +Use the [`influxdb3 create token --permission` command](/influxdb3/enterprise/reference/cli/influxdb3/create/token/) +or the [`/api/v3/configure/token` HTTP API endpoint](/influxdb3/enterprise/api/v3/) +to create tokens that grant access to resources such as databases and system information. +Database tokens allow for reading and writing data in your {{< product-name omit="Clustered" >}} instance. +System tokens allow for reading system information and metrics for your server. + +After you +[create an _admin token_](/influxdb3/enterprise/admin/token/admin/create/), you +can use the token string to authenticate `influxdb3` commands and HTTP API requests +for managing database and system tokens. + +> [!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 a resource token string, revoke the token and create a new one. + +## Create a database token + +{{< tabs-wrapper >}} +{{% tabs %}} +[influxdb3](#) +[HTTP API](#) +{{% /tabs %}} +{{% tab-content %}} + + + +Use the [`influxdb3 create token` command](/influxdb3/enterprise/reference/cli/influxdb3/create/token/) +to create a database token with permissions for reading and writing data in +your {{% product-name %}} instance. + +In your terminal, run the `influxdb3 create token` command and provide the following: + + - `--permission` flag to create a token with permissions + - `--name` flag with 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 permissions (read and write) in the Permission in the `RESOURCE_TYPE:RESOURCE_NAMES:ACTIONS` format--for example: + - db:DATABASE1,DATABASE2:read,write + - `db:`: The `db` resource type, which specifies the token is for a database. + - `DATABASE1,DATABASE2`: The names of the databases to grant permissions to. + The resource names part supports the `*` wildcard, which grants read or write permissions to all databases. + - `read,write`: The permissions to grant to the token. + +{{% code-placeholders "DATABASE1|DATABASE2|1y" %}} + +```bash +influxdb3 create token \ +--permission \ +--expiry 1y \ +--name "Read-write on DATABASE1, DATABASE2" \ +"db:DATABASE1,DATABASE2:read,write" +``` + +{{% /code-placeholders %}} + +Replace the following: + +- {{% code-placeholder-key %}}`DATABASE1`{{% /code-placeholder-key %}}, {{% code-placeholder-key %}}`DATABASE2`{{% /code-placeholder-key %}}: + your {{% product-name %}} [database](/influxdb3/enterprise/admin/databases/) +- {{% code-placeholder-key %}}`1y`{{% /code-placeholder-key %}}: + the token expiration time as a + [duration](/influxdb3/enterprise/reference/glossary/#duration). + +The output is the token string in plain text. + + +{{% /tab-content %}} +{{% tab-content %}} + +_This example uses [cURL](https://curl.se/) to send an HTTP API request, but you can use any HTTP client._ + +1. If you haven't already, follow the instructions to [install cURL](https://everything.curl.dev/install/index.html) for your system. +2. In your terminal, use cURL to send a request to the following {{% product-name %}} endpoint: + + {{% api-endpoint endpoint="http://{{< influxdb/host >}}/api/v3/enterprise/configure/token" method="post" %}} + + Provide the following request headers: + + - `Accept: application/json` to ensure the response body is JSON content + - `Content-Type: application/json` to indicate the request body is JSON content + - `Authorization: Bearer` and the [admin token](/influxdb3/enterprise/admin/tokens/admin/) + for your instance to authorize the request + + In the request body, provide the following parameters: + + - `token_name`: a description of the token, unique within the instance + - `resource_type`: the resource type for the token, which is always `db` + - `resource_identifier`: an array of database names to grant permissions to + - The resource identifier field supports the `*` wildcard, which grants read or write + permissions to all databases. + - `permissions`: an array of token permission actions (`"read"`, `"write"`) for the database + - `expiry_secs`: Specify the token expiration time in seconds. + +The following example shows how to use the HTTP API to create a database token: + +{{% code-placeholders "DATABASE1|DATABASE2|300000" %}} + +```bash + curl \ + "http://{{< influxdb/host >}}/api/v3/enterprise/configure/token" \ + --header 'Accept: application/json' \ + --header 'Content-Type: application/json' \ + --data '{ + "token_name": "Read-write for DATABASE1, DATABASE2", + "permissions": [{ + "resource_type": "db", + "resource_identifier": ["DATABASE1","DATABASE2"], + "actions": ["read","write"] + }], + "expiry_secs": 300000 + }' +``` + +{{% /code-placeholders %}} + +Replace the following in your request: + +- {{% code-placeholder-key %}}`DATABASE1`{{% /code-placeholder-key %}}, {{% code-placeholder-key %}}`DATABASE2`{{% /code-placeholder-key %}}: + your {{% product-name %}} [database](/influxdb3/enterprise/admin/databases/) +- {{% code-placeholder-key %}}`300000`{{% /code-placeholder-key %}}: + the token expiration time in seconds. + +The response body contains token details, including the `token` field with the +token string in plain text. + + +{{% /tab-content %}} +{{< /tabs-wrapper >}} + +### Examples + +- [Create a token with read and write access to a database](#create-a-token-with-read-and-write-access-to-a-database) +- [Create a token with read and write access to all databases](#create-a-token-with-read-and-write-access-to-all-databases) +- [Create a token with read-only access to a database](#create-a-token-with-read-only-access-to-a-database) +- [Create a token with read-only access to multiple databases](#create-a-token-with-read-only-access-to-multiple-databases) +- [Create a token with mixed permissions to multiple databases](#create-a-token-with-mixed-permissions-to-multiple-databases) +- [Create a token that expires in seven days](#create-a-token-that-expires-in-seven-days) + +In the examples below, replace the following: + +- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: your {{< product-name >}} [database](/influxdb3/enterprise/admin/databases/) +- {{% code-placeholder-key %}}`DATABASE2_NAME`{{% /code-placeholder-key %}}: your {{< product-name >}} [database](/influxdb3/enterprise/admin/databases/) +- {{% code-placeholder-key %}}`ADMIN TOKEN`{{% /code-placeholder-key %}}: the [admin token](/influxdb3/enterprise/admin/tokens/admin/) for your {{% product-name %}} instance +{{% code-placeholders "DATABASE_NAME|DATABASE2_NAME|ADMIN_TOKEN" %}} + +#### Create a token with read and write access to a database + +{{< code-tabs-wrapper >}} +{{% code-tabs %}} +[influxdb3](#) +[HTTP API](#) +{{% /code-tabs %}} +{{% code-tab-content %}} + +```bash +influxdb3 create token \ + --permission \ + --name "Read/write token for DATABASE_NAME" \ + db:DATABASE_NAME:read,write +``` + +{{% /code-tab-content %}} +{{% code-tab-content %}} + +```bash +curl \ + "http://{{< influxdb/host >}}/api/v3/enterprise/configure/token" \ + --header 'Accept: application/json' \ + --header 'Content-Type: application/json' \ + --header "Authorization: Bearer ADMIN_TOKEN" \ + --data '{ + "token_name": "Read/write token for DATABASE_NAME", + "permissions": [{ + "resource_type": "db", + "resource_identifier": ["DATABASE_NAME"], + "actions": ["read","write"] + }] + }' +``` + +{{% /code-tab-content %}} +{{< /code-tabs-wrapper >}} + +#### Create a token with read and write access to all databases + +{{< code-tabs-wrapper >}} +{{% code-tabs %}} +[influxdb3](#) +[HTTP API](#) +{{% /code-tabs %}} +{{% code-tab-content %}} + +```bash +influxdb3 create token \ + --permission \ + --name "Read/write token for all databases" \ + db:*:read,write +``` + +{{% /code-tab-content %}} +{{% code-tab-content %}} + +```bash +curl \ + "http://{{< influxdb/host >}}/api/v3/enterprise/configure/token" \ + --header 'Accept: application/json' \ + --header 'Content-Type: application/json' \ + --header "Authorization: Bearer ADMIN_TOKEN" \ + --data '{ + "token_name": "Read/write token for all databases", + "permissions": [{ + "resource_type": "db", + "resource_identifier": ["*"], + "actions": ["read","write"] + }] + }' +``` + +{{% /code-tab-content %}} +{{< /code-tabs-wrapper >}} + +#### Create a token with read-only access to a database + +{{< code-tabs-wrapper >}} +{{% code-tabs %}} +[influxdb3](#) +[HTTP API](#) +{{% /code-tabs %}} +{{% code-tab-content %}} + +```bash +influxdb3 create token \ + --permission \ + --name "Read-only token for DATABASE_NAME" \ + db:DATABASE_NAME:read +``` + +{{% /code-tab-content %}} +{{% code-tab-content %}} + +```bash +curl \ + "http://{{< influxdb/host >}}/api/v3/enterprise/configure/token" \ + --header 'Accept: application/json' \ + --header 'Content-Type: application/json' \ + --header "Authorization: Bearer ADMIN_TOKEN" \ + --data '{ + "token_name": "Read-only token for DATABASE_NAME", + "permissions": [{ + "resource_type": "db", + "resource_identifier": ["DATABASE_NAME"], + "actions": ["read"] + }] + }' +``` + +{{% /code-tab-content %}} +{{< /code-tabs-wrapper >}} + +#### Create a token with read-only access to multiple databases + +{{< code-tabs-wrapper >}} +{{% code-tabs %}} +[influxdb3](#) +[HTTP API](#) +{{% /code-tabs %}} +{{% code-tab-content %}} + +```bash +influxdb3 create token \ + --permission \ + --name "Read-only token for DATABASE_NAME and DATABASE2_NAME" \ + db:DATABASE_NAME,DATABASE2_NAME:read +``` + +{{% /code-tab-content %}} +{{% code-tab-content %}} + +```bash +curl \ + "http://{{< influxdb/host >}}/api/v3/enterprise/configure/token" \ + --header 'Accept: application/json' \ + --header 'Content-Type: application/json' \ + --header "Authorization: Bearer ADMIN_TOKEN" \ + --data '{ + "token_name": "Read-only token for DATABASE_NAME and DATABASE2_NAME", + "permissions": [{ + "resource_type": "db", + "resource_identifier": ["DATABASE_NAME","DATABASE2_NAME"], + "actions": ["read"] + }] + }' +``` + +{{% /code-tab-content %}} +{{< /code-tabs-wrapper >}} + +#### Create a token that expires in seven days + +{{< code-tabs-wrapper >}} +{{% code-tabs %}} +[influxdb3](#) +[HTTP API](#) +{{% /code-tabs %}} +{{% code-tab-content %}} + +```bash +influxdb3 create token \ + --permission \ + --expiry 7d \ + --name "Read/write token for DATABASE_NAME with 7d expiration" \ + db:DATABASE_NAME:read,write +``` + +{{% /code-tab-content %}} +{{% code-tab-content %}} + +```bash +curl \ + "http://{{< influxdb/host >}}/api/v3/enterprise/configure/token" \ + --header 'Accept: application/json' \ + --header 'Content-Type: application/json' \ + --header "Authorization: Bearer ADMIN_TOKEN" \ + --data '{ + "token_name": "Read/write token for DATABASE_NAME with 7d expiration", + "permissions": [{ + "resource_type": "db", + "resource_identifier": ["DATABASE_NAME"], + "actions": ["read","write"] + }], + "expiry_secs": 604800 + }' +``` + +{{% /code-tab-content %}} +{{< /code-tabs-wrapper >}} + +{{% /code-placeholders %}} + +## Create a system token + +System tokens have the `system` resource type and allow for read-only access +to system information and metrics from your server. + +You can create system tokens for the following system resources: + +- `health`: system health information from the `/health` HTTP API endpoint +- `metrics`: system metrics information from the `/metrics` HTTP API endpoint +- `ping`: system ping information from the `/ping` HTTP API endpoint + +{{< tabs-wrapper >}} +{{% tabs %}} +[influxdb3](#) +[HTTP API](#) +{{% /tabs %}} +{{% tab-content %}} + + + +Use the [`influxdb3 create token` command](/influxdb3/enterprise/reference/cli/influxdb3/create/token/) +to create a system token with permissions for reading system information from +your {{% product-name %}} instance. + +In your terminal, run the `influxdb3 create token` command and provide the following: + + - `--permission` flag to create a token with permissions + - `--name` flag with 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 permissions in the `RESOURCE_TYPE:RESOURCE_NAMES:ACTIONS` format--for example: + - system:health:read + - `system:`: The `system` resource type, which specifies the token is for system information. + - `health`: The specific system resource to grant permissions to. + - `read`: The permission to grant to the token (system tokens are always read-only). + +{{% code-placeholders "1y" %}} + +```bash +influxdb3 create token \ +--permission \ +--expiry 1y \ +--name "System health token" \ +"system:health:read" +``` + +{{% /code-placeholders %}} + +Replace the following: + +- {{% code-placeholder-key %}}`1y`{{% /code-placeholder-key %}}: + the token expiration time as a + [duration](/influxdb3/enterprise/reference/glossary/#duration). + +The output is the token string in plain text. + + +{{% /tab-content %}} +{{% tab-content %}} + +_This example uses [cURL](https://curl.se/) to send an HTTP API request, but you can use any HTTP client._ + +1. If you haven't already, follow the instructions to [install cURL](https://everything.curl.dev/install/index.html) for your system. +2. In your terminal, use cURL to send a request to the following {{% product-name %}} endpoint: + + {{% api-endpoint endpoint="http://{{< influxdb/host >}}/api/v3/enterprise/configure/token" method="post" %}} + + Provide the following request headers: + + - `Accept: application/json` to ensure the response body is JSON content + - `Content-Type: application/json` to indicate the request body is JSON content + - `Authorization: Bearer` and the [admin token](/influxdb3/enterprise/admin/tokens/admin/) + for your instance to authorize the request + + In the request body, provide the following parameters: + + - `token_name`: a description of the token, unique within the instance + - `resource_type`: the resource type for the token, which is `system` for system tokens + - `resource_identifier`: an array of system resource names to grant permissions to + - The resource identifier field supports the `*` wildcard, which grants read or write + permissions to all system information resources. + - `permissions`: an array of token permission actions (only `"read"` for system tokens) + - `expiry_secs`: Specify the token expiration time in seconds. + +The following example shows how to use the HTTP API to create a system token: + +{{% code-placeholders "300000" %}} + +```bash +curl \ +"http://{{< influxdb/host >}}/api/v3/enterprise/configure/token" \ +--header 'Accept: application/json' \ +--header 'Content-Type: application/json' \ +--header "Authorization: Bearer ADMIN_TOKEN" \ +--data '{ + "token_name": "System health token", + "permissions": [{ + "resource_type": "system", + "resource_identifier": ["health"], + "actions": ["read"] + }], + "expiry_secs": 300000 +}' +``` + +{{% /code-placeholders %}} + +Replace the following in your request: + +- {{% code-placeholder-key %}}`300000`{{% /code-placeholder-key %}}: + the token expiration time in seconds. + +The response body contains token details, including the `token` field with the +token string in plain text. + + +{{% /tab-content %}} +{{< /tabs-wrapper >}} + + +## Output format + +The `influxdb3 create token` command supports the `--format json` option. +By default, the command outputs the token string. +For [token details](/influxdb3/enterprise/api/management/#operation/CreateDatabaseToken) and easier programmatic access to the command output, include `--format json` +with your command to format the output as JSON. + +The `/api/v3/configure/token` endpoint outputs JSON format in the response body. From dd75bf13cd82d7c241c2870411e4cda5b0425c8b Mon Sep 17 00:00:00 2001 From: Jason Stirnaman Date: Tue, 15 Apr 2025 08:23:02 -0500 Subject: [PATCH 25/44] feat(enterprise): Manage resource tokens for databases and sysinfo --- .../admin/tokens/resource/_index.md | 7 ++++--- .../admin/tokens/resource/create.md | 1 - .../enterprise/admin/tokens/resource/list.md | 19 +++++-------------- 3 files changed, 9 insertions(+), 18 deletions(-) diff --git a/content/influxdb3/enterprise/admin/tokens/resource/_index.md b/content/influxdb3/enterprise/admin/tokens/resource/_index.md index 48e676198..025064604 100644 --- a/content/influxdb3/enterprise/admin/tokens/resource/_index.md +++ b/content/influxdb3/enterprise/admin/tokens/resource/_index.md @@ -7,14 +7,15 @@ description: > and system information endpoints in your {{< product-name >}} instance. Database resource tokens allow for actions like writing and querying data. menu: - influxdb3_core: + influxdb3_enterprise: parent: Manage tokens name: Resource tokens weight: 101 -influxdb3/core/tags: [tokens] -source: /shared/influxdb3-admin/tokens/database/_index.md +influxdb3/enterprise/tags: [tokens] --- +{{< children depth="1" >}} + diff --git a/content/influxdb3/enterprise/admin/tokens/resource/create.md b/content/influxdb3/enterprise/admin/tokens/resource/create.md index 48a3c248b..c141c51ca 100644 --- a/content/influxdb3/enterprise/admin/tokens/resource/create.md +++ b/content/influxdb3/enterprise/admin/tokens/resource/create.md @@ -38,7 +38,6 @@ list_code_example: | alt_links: cloud-dedicated: /influxdb3/enterprise/admin/tokens/create-token/ cloud-serverless: /influxdb3/cloud-serverless/admin/tokens/create-token/ -source: /shared/influxdb3-admin/tokens/database/create.md --- Use the [`influxdb3 create token --permission` command](/influxdb3/enterprise/reference/cli/influxdb3/create/token/) diff --git a/content/influxdb3/enterprise/admin/tokens/resource/list.md b/content/influxdb3/enterprise/admin/tokens/resource/list.md index 9c3f54924..15e052584 100644 --- a/content/influxdb3/enterprise/admin/tokens/resource/list.md +++ b/content/influxdb3/enterprise/admin/tokens/resource/list.md @@ -1,11 +1,11 @@ --- -title: List database tokens +title: List resource tokens description: > Use the `influxdb3 show tokens` command - to list database tokens in your InfluxDB 3 Enterprise instance. + to list resource tokens in your InfluxDB 3 Enterprise instance. menu: influxdb3_enterprise: - parent: Database tokens + parent: Resource tokens weight: 202 list_code_example: | ##### CLI @@ -14,23 +14,14 @@ list_code_example: | --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 +source: /shared/influxdb3-admin/tokens/admin/list.md --- \ No newline at end of file From e6e162a752f8d4c5a3611d97aa5f9b682f6e2680 Mon Sep 17 00:00:00 2001 From: Jason Stirnaman Date: Tue, 15 Apr 2025 08:23:02 -0500 Subject: [PATCH 26/44] feat(enterprise): Manage resource tokens for databases and sysinfo --- .../admin/tokens/resource/create.md | 89 +++++++++---------- 1 file changed, 43 insertions(+), 46 deletions(-) diff --git a/content/influxdb3/enterprise/admin/tokens/resource/create.md b/content/influxdb3/enterprise/admin/tokens/resource/create.md index c141c51ca..ae252c2c2 100644 --- a/content/influxdb3/enterprise/admin/tokens/resource/create.md +++ b/content/influxdb3/enterprise/admin/tokens/resource/create.md @@ -51,6 +51,8 @@ After you can use the token string to authenticate `influxdb3` commands and HTTP API requests for managing database and system tokens. +The HTTP API examples in this guide use [cURL](https://curl.se/) to send an API request, but you can use any HTTP client._ + > [!Note] > #### Store secure tokens in a secret store > @@ -75,17 +77,17 @@ your {{% product-name %}} instance. In your terminal, run the `influxdb3 create token` command and provide the following: - - `--permission` flag to create a token with permissions - - `--name` flag with 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 permissions (read and write) in the Permission in the `RESOURCE_TYPE:RESOURCE_NAMES:ACTIONS` format--for example: - - db:DATABASE1,DATABASE2:read,write - - `db:`: The `db` resource type, which specifies the token is for a database. - - `DATABASE1,DATABASE2`: The names of the databases to grant permissions to. - The resource names part supports the `*` wildcard, which grants read or write permissions to all databases. - - `read,write`: The permissions to grant to the token. +- `--permission` flag to create a token with permissions +- `--name` flag with 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 permissions (read and write) in the `RESOURCE_TYPE:RESOURCE_NAMES:ACTIONS` format--for example: + - db:DATABASE1,DATABASE2:read,write + - `db:`: The `db` resource type, which specifies the token is for a database. + - `DATABASE1,DATABASE2`: The names of the databases to grant permissions to. + The resource names part supports the `*` wildcard, which grants read or write permissions to all databases. + - `read,write`: The permissions to grant to the token. {{% code-placeholders "DATABASE1|DATABASE2|1y" %}} @@ -113,29 +115,27 @@ The output is the token string in plain text. {{% /tab-content %}} {{% tab-content %}} -_This example uses [cURL](https://curl.se/) to send an HTTP API request, but you can use any HTTP client._ -1. If you haven't already, follow the instructions to [install cURL](https://everything.curl.dev/install/index.html) for your system. -2. In your terminal, use cURL to send a request to the following {{% product-name %}} endpoint: +Send a request to the following {{% product-name %}} endpoint: - {{% api-endpoint endpoint="http://{{< influxdb/host >}}/api/v3/enterprise/configure/token" method="post" %}} +{{% api-endpoint endpoint="http://{{< influxdb/host >}}/api/v3/enterprise/configure/token" method="post" %}} - Provide the following request headers: +Provide the following request headers: - - `Accept: application/json` to ensure the response body is JSON content - - `Content-Type: application/json` to indicate the request body is JSON content - - `Authorization: Bearer` and the [admin token](/influxdb3/enterprise/admin/tokens/admin/) - for your instance to authorize the request +- `Accept: application/json` to ensure the response body is JSON content +- `Content-Type: application/json` to indicate the request body is JSON content +- `Authorization: Bearer` and the [admin token](/influxdb3/enterprise/admin/tokens/admin/) + for your instance to authorize the request - In the request body, provide the following parameters: +In the request body, provide the following parameters: - - `token_name`: a description of the token, unique within the instance - - `resource_type`: the resource type for the token, which is always `db` - - `resource_identifier`: an array of database names to grant permissions to - - The resource identifier field supports the `*` wildcard, which grants read or write - permissions to all databases. - - `permissions`: an array of token permission actions (`"read"`, `"write"`) for the database - - `expiry_secs`: Specify the token expiration time in seconds. +- `token_name`: a description of the token, unique within the instance +- `resource_type`: the resource type for the token, which is always `db` +- `resource_identifier`: an array of database names to grant permissions to + - The resource identifier field supports the `*` wildcard, which grants read or write + permissions to all databases. +- `permissions`: an array of token permission actions (`"read"`, `"write"`) for the database +- `expiry_secs`: Specify the token expiration time in seconds. The following example shows how to use the HTTP API to create a database token: @@ -444,29 +444,26 @@ The output is the token string in plain text. {{% /tab-content %}} {{% tab-content %}} -_This example uses [cURL](https://curl.se/) to send an HTTP API request, but you can use any HTTP client._ +Send a request to the following {{% product-name %}} endpoint: -1. If you haven't already, follow the instructions to [install cURL](https://everything.curl.dev/install/index.html) for your system. -2. In your terminal, use cURL to send a request to the following {{% product-name %}} endpoint: +{{% api-endpoint endpoint="http://{{< influxdb/host >}}/api/v3/enterprise/configure/token" method="post" %}} - {{% api-endpoint endpoint="http://{{< influxdb/host >}}/api/v3/enterprise/configure/token" method="post" %}} +Provide the following request headers: - Provide the following request headers: +- `Accept: application/json` to ensure the response body is JSON content +- `Content-Type: application/json` to indicate the request body is JSON content +- `Authorization: Bearer` and the [admin token](/influxdb3/enterprise/admin/tokens/admin/) + for your instance to authorize the request - - `Accept: application/json` to ensure the response body is JSON content - - `Content-Type: application/json` to indicate the request body is JSON content - - `Authorization: Bearer` and the [admin token](/influxdb3/enterprise/admin/tokens/admin/) - for your instance to authorize the request +In the request body, provide the following parameters: - In the request body, provide the following parameters: - - - `token_name`: a description of the token, unique within the instance - - `resource_type`: the resource type for the token, which is `system` for system tokens - - `resource_identifier`: an array of system resource names to grant permissions to - - The resource identifier field supports the `*` wildcard, which grants read or write - permissions to all system information resources. - - `permissions`: an array of token permission actions (only `"read"` for system tokens) - - `expiry_secs`: Specify the token expiration time in seconds. +- `token_name`: a description of the token, unique within the instance +- `resource_type`: the resource type for the token, which is `system` for system tokens +- `resource_identifier`: an array of system resource names to grant permissions to + - The resource identifier field supports the `*` wildcard, which grants read or write + permissions to all system information resources. +- `permissions`: an array of token permission actions (only `"read"` for system tokens) +- `expiry_secs`: Specify the token expiration time in seconds. The following example shows how to use the HTTP API to create a system token: From dd4100d10fa3ca8934b13bf20f2b5a27011301ef Mon Sep 17 00:00:00 2001 From: Scott Anderson Date: Tue, 15 Apr 2025 07:47:54 -0600 Subject: [PATCH 27/44] hotfix: fix resource token create example in frontmatter --- content/influxdb3/enterprise/admin/tokens/resource/create.md | 1 + 1 file changed, 1 insertion(+) diff --git a/content/influxdb3/enterprise/admin/tokens/resource/create.md b/content/influxdb3/enterprise/admin/tokens/resource/create.md index ae252c2c2..165787ab2 100644 --- a/content/influxdb3/enterprise/admin/tokens/resource/create.md +++ b/content/influxdb3/enterprise/admin/tokens/resource/create.md @@ -21,6 +21,7 @@ list_code_example: | ``` ##### HTTP API + ```bash "http://{{< influxdb/host >}}/api/v3/enterprise/configure/token" \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \ From ab802aa229871578570bed72eac074b3ec302343 Mon Sep 17 00:00:00 2001 From: Scott Anderson Date: Tue, 15 Apr 2025 08:44:41 -0600 Subject: [PATCH 28/44] hotfix: updated influxdb3 table limits --- layouts/shortcodes/influxdb3/limit.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/layouts/shortcodes/influxdb3/limit.html b/layouts/shortcodes/influxdb3/limit.html index ecbcd35c2..fe7e36b76 100644 --- a/layouts/shortcodes/influxdb3/limit.html +++ b/layouts/shortcodes/influxdb3/limit.html @@ -3,6 +3,6 @@ {{- $limit := .Get 0 | default "database" -}} {{- $modifier := .Get 1 | default 0 -}} {{- $coreLimits := dict "database" 5 "table" 2000 "column" 500 -}} -{{- $enterpriseLimits := dict "database" 100 "table" 4000 "column" 500 -}} +{{- $enterpriseLimits := dict "database" 100 "table" 10000 "column" 500 -}} {{- $productLimits := cond (eq $product "core") $coreLimits $enterpriseLimits -}} {{ add (index $productLimits $limit) $modifier }} \ No newline at end of file From 22b52f8efcfccefbc995470978254391ccd5b0c4 Mon Sep 17 00:00:00 2001 From: Jason Stirnaman Date: Tue, 15 Apr 2025 10:07:52 -0500 Subject: [PATCH 29/44] hotfix: admin/tokens path, format permissions, remove glossary link --- .../admin/tokens/resource/create.md | 32 ++++++++++++------- 1 file changed, 20 insertions(+), 12 deletions(-) diff --git a/content/influxdb3/enterprise/admin/tokens/resource/create.md b/content/influxdb3/enterprise/admin/tokens/resource/create.md index 165787ab2..3b265f17e 100644 --- a/content/influxdb3/enterprise/admin/tokens/resource/create.md +++ b/content/influxdb3/enterprise/admin/tokens/resource/create.md @@ -48,7 +48,7 @@ Database tokens allow for reading and writing data in your {{< product-name omit System tokens allow for reading system information and metrics for your server. After you -[create an _admin token_](/influxdb3/enterprise/admin/token/admin/create/), you +[create an _admin token_](/influxdb3/enterprise/admin/tokens/admin/create/), you can use the token string to authenticate `influxdb3` commands and HTTP API requests for managing database and system tokens. @@ -81,14 +81,18 @@ In your terminal, run the `influxdb3 create token` command and provide the follo - `--permission` flag to create a token with permissions - `--name` flag with a unique description of the token - _Options_, for example: - - `--expiry` option with the token expiration time as a [duration](/influxdb3/enterprise/reference/glossary/#duration). + - `--expiry` option with the token expiration time as a duration. If an expiration isn't set, the token does not expire until revoked. - Token permissions (read and write) in the `RESOURCE_TYPE:RESOURCE_NAMES:ACTIONS` format--for example: - - db:DATABASE1,DATABASE2:read,write - - `db:`: The `db` resource type, which specifies the token is for a database. - - `DATABASE1,DATABASE2`: The names of the databases to grant permissions to. - The resource names part supports the `*` wildcard, which grants read or write permissions to all databases. - - `read,write`: The permissions to grant to the token. + + ``` + db:DATABASE1,DATABASE2:read,write + ``` + + - `db:`: The `db` resource type, which specifies the token is for a database. + - `DATABASE1,DATABASE2`: The names of the databases to grant permissions to. + The resource names part supports the `*` wildcard, which grants read or write permissions to all databases. + - `read,write`: The permissions to grant to the token. {{% code-placeholders "DATABASE1|DATABASE2|1y" %}} @@ -108,7 +112,7 @@ Replace the following: your {{% product-name %}} [database](/influxdb3/enterprise/admin/databases/) - {{% code-placeholder-key %}}`1y`{{% /code-placeholder-key %}}: the token expiration time as a - [duration](/influxdb3/enterprise/reference/glossary/#duration). + duration. The output is the token string in plain text. @@ -413,10 +417,14 @@ In your terminal, run the `influxdb3 create token` command and provide the follo - `--permission` flag to create a token with permissions - `--name` flag with a unique description of the token - _Options_, for example: - - `--expiry` option with the token expiration time as a [duration](/influxdb3/enterprise/reference/glossary/#duration). + - `--expiry` option with the token expiration time as a duration. If an expiration isn't set, the token does not expire until revoked. - Token permissions in the `RESOURCE_TYPE:RESOURCE_NAMES:ACTIONS` format--for example: - - system:health:read + + ``` + system:health:read + ``` + - `system:`: The `system` resource type, which specifies the token is for system information. - `health`: The specific system resource to grant permissions to. - `read`: The permission to grant to the token (system tokens are always read-only). @@ -437,7 +445,7 @@ Replace the following: - {{% code-placeholder-key %}}`1y`{{% /code-placeholder-key %}}: the token expiration time as a - [duration](/influxdb3/enterprise/reference/glossary/#duration). + duration. The output is the token string in plain text. @@ -506,7 +514,7 @@ token string in plain text. The `influxdb3 create token` command supports the `--format json` option. By default, the command outputs the token string. -For [token details](/influxdb3/enterprise/api/management/#operation/CreateDatabaseToken) and easier programmatic access to the command output, include `--format json` +For easier programmatic access to the command output, include `--format json` with your command to format the output as JSON. The `/api/v3/configure/token` endpoint outputs JSON format in the response body. From 1d6d58a2fee432894815ab8fc914d9dc7da9aa56 Mon Sep 17 00:00:00 2001 From: Jason Stirnaman Date: Tue, 15 Apr 2025 10:10:02 -0500 Subject: [PATCH 30/44] Update content/influxdb3/enterprise/admin/tokens/resource/create.md Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- content/influxdb3/enterprise/admin/tokens/resource/create.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/influxdb3/enterprise/admin/tokens/resource/create.md b/content/influxdb3/enterprise/admin/tokens/resource/create.md index 3b265f17e..329e12d7e 100644 --- a/content/influxdb3/enterprise/admin/tokens/resource/create.md +++ b/content/influxdb3/enterprise/admin/tokens/resource/create.md @@ -514,7 +514,7 @@ token string in plain text. The `influxdb3 create token` command supports the `--format json` option. By default, the command outputs the token string. -For easier programmatic access to the command output, include `--format json` +For easier programmatic access to the command output, include `--format json` with your command to format the output as JSON. The `/api/v3/configure/token` endpoint outputs JSON format in the response body. From 3e08da9d61a4d4d53281bfc04f6955aba3a5e753 Mon Sep 17 00:00:00 2001 From: Jason Stirnaman Date: Tue, 15 Apr 2025 10:14:28 -0500 Subject: [PATCH 31/44] chore(reference): Initial commit of shared glossary copied from Cloud Dedicated --- .../shared/influxdb3-reference/glossary.md | 1149 +++++++++++++++++ 1 file changed, 1149 insertions(+) create mode 100644 content/shared/influxdb3-reference/glossary.md diff --git a/content/shared/influxdb3-reference/glossary.md b/content/shared/influxdb3-reference/glossary.md new file mode 100644 index 000000000..35c717f18 --- /dev/null +++ b/content/shared/influxdb3-reference/glossary.md @@ -0,0 +1,1149 @@ +--- +title: Glossary +description: > + Terms related to InfluxData products and platforms. +weight: 109 +menu: + influxdb3_cloud_dedicated: + parent: Reference +influxdb3/cloud-dedicated/tags: [glossary] +--- + +[A](#a) | [B](#b) | [C](#c) | [D](#d) | [E](#e) | [F](#f) | [G](#g) | [H](#h) | [I](#i) | [J](#j) | [K](#k) | [L](#l) | [M](#m) | [N](#n) | [O](#o) | [P](#p) | [Q](#q) | [R](#r) | [S](#s) | [T](#t) | [U](#u) | [V](#v) | [W](#w) | X | Y | Z + +## A + +### abstract syntax tree (AST) + +Tree representation of source code that shows the structure, content, and rules +of programming statements and discards additional syntax elements. +The tree is hierarchical, with elements of program statements broken down into their parts. + +For more information about AST design, see [Abstract Syntax Tree on Wikipedia](https://en.wikipedia.org/wiki/Abstract_syntax_tree). + +### agent + +A background process started by (or on behalf of) a user that typically requires user input. + +[Telegraf](/telegraf/v1/) is an agent that requires user input +(a configuration file) to gather metrics from declared input plugins and sends +metrics to declared output plugins, based on the plugins enabled for a configuration. + +Related entries: +[input plugin](#input-plugin), +[output plugin](#output-plugin), +[daemon](#daemon) + +### aggregator plugin + +Receives metrics from input plugins, creates aggregate metrics, and then passes aggregate metrics to configured output plugins. + +Related entries: +[input plugin](#input-plugin), +[output plugin](#output-plugin), +[processor plugin](#processor-plugin) + +### aggregate + +A function that returns an aggregated value across a set of points. +For a list of available aggregation functions, +see [SQL aggregate functions](/influxdb3/cloud-dedicated/reference/sql/functions/aggregate/). + + + +Related entries: +[function](#function), +[selector](#selector) + +### API + +Application programming interface that facilitates and standardizes communication +between two or more computer programs. + +### argument + +A value passed to a function or command that determines how the process operates. + +Related entries: +[parameter](#parameter) + +## B + +### batch + +A collection of points in line protocol format, separated by newlines (`0x0A`). +Submitting a batch of points using a single HTTP request to the write endpoints +drastically increases performance by reducing the HTTP overhead. +InfluxData typically recommends batch sizes of 5,000-10,000 points. +In some use cases, performance may improve with significantly smaller or larger batches. + +Related entries: +[line protocol](#line-protocol-lp), +[point](#point) + +### batch size + +The number of lines or individual data points in a line protocol batch. +The Telegraf agent sends metrics to output plugins in batches rather than individually. +Batch size controls the size of each write batch that Telegraf sends to the output plugins. + +Related entries: +[output plugin](#output-plugin) + +### bin + +In a cumulative histogram, a bin includes all data points less than or equal to a specified upper bound. +In a normal histogram, a bin includes all data points between the upper and lower bounds. +Histogram bins are also sometimes referred to as "buckets." + +### boolean + +A data type with two possible values: true or false. +By convention, you can express `true` as the integer `1` and false as the integer `0` (zero). + +### bucket + +"Bucket" is the term used in InfluxDB 2.x and _InfluxDB Cloud Serverless_ to refer +to a named location where time series data is stored. +Bucket is synonymous with "database" when using InfluxDB Cloud Dedicated. + +Related entries: +[database](#database) + +## C + +### CSV + +Comma-separated values (CSV) delimits text between commas to separate values. +A CSV file stores tabular data (numbers and text) in plain text. +Each line of the file is a data row. +Each row consists of one or more columns, separated by commas. +CSV file format is not fully standardized. + +### cardinality + +Cardinality is the number of unique values in a set. +Series cardinality is the number of unique [series](#series) in a database as a whole. +With the InfluxDB 3 storage engine, high series cardinality _does not_ affect performance. + +### cluster + +A collection of servers or processes that work together as a single unit. +An InfluxDB Cloud Dedicated cluster is a collection of InfluxDB servers dedicated +to the workload of a single customer. + +### collect + +Collect and write time series data to InfluxDB using line protocol, Telegraf, +the InfluxDB v1 and v2 HTTP APIs, v1 and v2 `influx` command line interface (CLI), +and InfluxDB client libraries. + +### collection interval + +The default global interval for collecting data from each Telegraf input plugin. +The collection interval can be overridden by each individual input plugin's configuration. + +Related entries: +[input plugin](#input-plugin) + +### collection jitter + +Collection jitter prevents every input plugin from collecting metrics simultaneously, +which can have a measurable effect on the system. +For each collection interval, every Telegraf input plugin will sleep for a random +time between zero and the collection jitter before collecting the metrics. + +Related entries: +[collection interval](#collection-interval), +[input plugin](#input-plugin) + +### column + +InfluxDB data is stored in tables within rows and columns. +Columns store tag sets and fields sets, and time values. +The only required column is _time_, which stores timestamps and is included +in all InfluxDB tables. + +### common log format (CLF) + +A standardized text file format used by the InfluxDB server to create log +entries when generating server log files. + +### compaction + +Compressing time series data to optimize disk usage. + +### continuous query (CQ) + +Continuous queries are a feature of InfluxDB 1.x used to regularly downsample +or process time series data. + +## D + +### daemon + +A background process that runs without user input. + +### dashboard + +A collection of data visualizations used to query and display time series data. +There a many tools designed specifically to create dashboards including +[Grafana](https://grafana.com), [Apache Superset](https://superset.apache.org/), +[Tableau](https://www.tableau.com/), and others. + + + +### data model + +A data model organizes elements of data and standardizes how they relate to one +another and to properties of the real world entities. + +For information about the InfluxDB data model, see +[InfluxDB data organization](/influxdb3/cloud-dedicated/get-started/#data-organization) + +### data service + +Stores time series data and handles writes and queries. + +### data source + +A source of data that InfluxDB collects or queries data from. + +Related entries: +[database](#database) + +### data type + +A data type is defined by the values it can take, the programming language used, +or the operations that can be performed on it. + +InfluxDB supports the following data types: + +- string +- boolean +- float (64-bit) +- integer (64-bit) +- unsigned integer (64-bit) +- time + +For more information about different data types, see: + +- [line protocol](/influxdb/v2/reference/syntax/line-protocol/#data-types-and-format) +- [InfluxQL](/influxdb/v1/query_language/spec/#literals) +- [InfluxDB](/influxdb/v2/reference/syntax/line-protocol/#data-types-and-format) + +#### database + +A named location where time series data is stored. + +In InfluxDB 1.x, a database represented a logical container for users, retention +policies, continuous queries, and time series data. +In InfluxDB 2.x, the equivalent of this concept is an InfluxDB [bucket](#bucket). + +Related entries: +[bucket](#bucket), +[retention policy](#retention-policy-rp) + +### date-time + +InfluxDB stores the date-time format for each data point in a timestamp with +nanosecond-precision Unix time. +Specifying a timestamp is optional. +If a timestamp isn't specified for a data point, InfluxDB uses the server’s +local nanosecond timestamp in UTC. + +### downsample + +Aggregating high resolution data into lower resolution data to preserve disk space. + +### duration + +A data type that represents a duration of time--for example, `1s`, `1m`, `1h`, `1d`. +Retention periods are set using durations. + +Related entries: +[retention period](#retention-period) + +## E + +### event + +Metrics gathered at irregular time intervals. + +### expression + +A combination of one or more constants, variables, operators, and functions. + +In the following SQL example, `now() - INTERVAL '7 days'` is an expression that calculates the difference between the `now()` function expression and the duration represented by `INTERVAL '7 days`: + +```sql +SELECT * +FROM home +WHERE + time >= now() - INTERVAL '7 days' +``` + +## F + +### field + +A key-value pair in InfluxDB's data structure that records a data value. +Generally, field values change over time. +Fields are required in InfluxDB's data structure. + +Related entries: +[field key](#field-key), +[field set](#field-set), +[field value](#field-value), +[tag](#tag) + +### field key + +The key of the key-value pair. +Field keys are strings. + +Related entries: +[field](#field), +[field set](#field-set), +[field value](#field-value), +[tag key](#tag-key) + +### field set + +The collection of field key-value pairs. + +Related entries: +[field](#field), +[field key](#field-key), +[field value](#field-value), +[point](#point) + +### field value + +The value of a key-value pair. +Field values are the actual data; they can be strings, floats, integers, unsigned integers or booleans. +A field value is always associated with a timestamp. + +Related entries: +[field](#field), +[field key](#field-key), +[field set](#field-set), +[tag set](#tag-set), +[tag value](#tag-value), +[timestamp](#timestamp) + +### file block + +A file block is a fixed-length chunk of data read into memory when requested by an application. + +### float + +A real number written with a decimal point dividing the integer and fractional parts (`1.0`, `3.14`, `-20.1`). +InfluxDB supports 64-bit float values. + +### flush interval + +The global interval for flushing data from each Telegraf output plugin to its destination. +This value should not be set lower than the collection interval. + +Related entries: +[collection interval](#collection-interval), +[flush jitter](#flush-jitter), +[output plugin](#output-plugin) + +### flush jitter + +Flush jitter prevents every Telegraf output plugin from sending writes +simultaneously, which can overwhelm some data sinks. +Each flush interval, every Telegraf output plugin sleeps for a random time +between zero and the flush jitter before emitting metrics. +Flush jitter smooths out write spikes when running a large number of Telegraf instances. + +Related entries: +[flush interval](#flush-interval), +[output plugin](#output-plugin) + +### function + +A function is an operation that performs a specific task. +Functions take input, operate on that input, and then return output. +For a complete list of available SQL functions, see +[SQL functions](/influxdb3/cloud-dedicated/reference/sql/functions/). + + + +Related entries: +[aggregate](#aggregate), +[selector](#selector) + +## G + +### gzip + +gzip is a type of data compression that compress chunks of data, which is +restored by unzipping compressed gzip files. +The gzip file extension is `.gz`. + +## H + +### histogram + +A visual representation of statistical information that uses rectangles to show +the frequency of data items in successive, equal intervals or bins. + +## I + +### identifier + +Identifiers are tokens that refer to specific database objects such as database +names, field keys, measurement names, tag keys, etc. + +Related entries: +[database](#database), +[field key](#field-key), +[measurement](#measurement), +[tag key](#tag-key) + +### influx + +`influx` is a command line interface (CLI) that interacts with the InfluxDB v1.x and v2.x server. + +### influxctl + +[`influxctl`](/influxdb3/cloud-dedicated/reference/cli/influxctl/) is a CLI that +performs [administrative tasks](/influxdb3/cloud-dedicated/admin/) for an +InfluxDB Cloud dedicated cluster. + +### influxd + +`influxd` is the InfluxDB OSS v1.x and v2.x daemon that runs the InfluxDB server +and other required processes. + +### InfluxDB + +An open source time series database (TSDB) developed by InfluxData, optimized for fast, high-availability storage and retrieval of +time series data in fields such as operations monitoring, application metrics, +Internet of Things sensor data, and real-time analytics. + +### InfluxQL + +The SQL-like query language used to query data in InfluxDB. + +### input plugin + +Telegraf input plugins actively gather metrics and deliver them to the core agent, +where aggregator, processor, and output plugins can operate on the metrics. +To activate an input plugin, enable and configure it in the +Telegraf configuration file. + +Related entries: +[aggregator plugin](#aggregator-plugin), +[collection interval](#collection-interval), +[output plugin](#output-plugin), +[processor plugin](#processor-plugin) + +### instance + +An entity comprising data on a server (or virtual server in cloud computing). + + +### integer + +A whole number that is positive, negative, or zero (`0`, `-5`, `143`). +InfluxDB supports 64-bit integers (minimum: `-9223372036854775808`, maximum: `9223372036854775807`). + +Related entries: +[unsigned integer](#unsigned-integer) + +### IOx + +The IOx storage engine (InfluxDB 3 storage engine) is a real-time, columnar +database optimized for time series data built in Rust on top of +[Apache Arrow](https://arrow.apache.org/) and +[DataFusion](https://arrow.apache.org/datafusion/user-guide/introduction.html). +IOx replaces the [TSM (Time Structured Merge tree)](#tsm-time-structured-merge-tree) storage engine. + +## J + +### JWT + +Typically, JSON web tokens (JWT) are used to authenticate users between an +identity provider and a service provider. +A server can generate a JWT to assert any business processes. +For example, an "admin" token sent to a client can prove the client is logged in as admin. +Tokens are signed by one party's private key (typically, the server). +Private keys are used by both parties to verify that a token is legitimate. + +JWT uses an open standard specified in [RFC 7519](https://tools.ietf.org/html/rfc7519). + +### Jaeger + +Open source tracing used in distributed systems to monitor and troubleshoot transactions. + +### JSON + +JavaScript Object Notation (JSON) is an open-standard file format that uses +human-readable text to transmit data objects consisting of attribute–value pairs +and array data types. + +## K + +### keyword + +A keyword is reserved by a program because it has special meaning. +Every programming language has a set of keywords (reserved names) that cannot be used as identifiers--for example, +you can't use `SELECT` (an SQL keyword) as a variable name in an SQL query. + +See keyword lists: + +- [SQL keywords](/influxdb3/cloud-dedicated/reference/sql/#keywords) +- [InfluxQL keywords](/influxdb3/cloud-dedicated/reference/influxql/#keywords) + +## L + +### literal + +A literal is value in an expression, a number, character, string, function, record, or array. +Literal values are interpreted as defined. + +### load balancing + +Improves workload distribution across multiple computing resources in a network. +Load balancing optimizes resource use, maximizes throughput, minimizes response +time, and avoids overloading a single resource. +Using multiple components with load balancing instead of a single component may +increase reliability and availability. +If requests to any server in a network increase, requests are forwarded to +another server with more capacity. +Load balancing can also refer to the communications channels themselves. + +### logs + +Logs record information. +Event logs describe system events and activity that help to describe and diagnose problems. +Transaction logs describe changes to stored data that help recover data if a +database crashes or other errors occur. + +### line protocol (LP) + +The text based format for writing points to InfluxDB. +See [line protocol](/influxdb3/cloud-dedicated/reference/syntax/line-protocol/). + +## M + +### measurement + +The part of InfluxDB's data structure that describes the data stored in associated fields. +Measurements are strings. + +Related entries: +[field](#field), [series](#series) + +### metric + +Data tracked over time. + +### metric buffer + +The metric buffer caches individual metrics when writes are failing for an Telegraf output plugin. +Telegraf will attempt to flush the buffer upon a successful write to the output. +The oldest metrics are dropped first when this buffer fills. + +Related entries: +[output plugin](#output-plugin) + +### missing values + +Denoted by a null value. +Identifies missing information, which may be useful to include in an error message. + +## N + +### node + +An independent process or server in a cluster. + +Related entries: +[cluster](#cluster), +[server](#server) + +### now + +The local server's nanosecond timestamp. + +### null + +A data type that represents a missing or unknown value. +Denoted by the `null` value. +Values of [tags](#tag) and [fields](#field) may be `null`, but timestamp values are never `null`. + +## O + +### operator + +A symbol that usually represents an action or process. +For example: `+`, `-`, `>`. + +Related entries: +[operand](#operand) + +### operand + +The object or value on either side of an [operator](#operator). + +Related entries: +[operator](#operator) + +### organization + +An InfluxDB v2 concept that describes workspace for a group of users. +All InfluxDB v2 dashboards, tasks, buckets, members, and so on, belong to an organization. +Organizations are not part of InfluxDB Cloud Dedicated. + +### owner + +A type of role for a user. +Owners have read/write permissions. +Users can have owner roles for databases and other resources. + +Role permissions are separate from API token permissions. For additional +information on API tokens, see [token](#token). + +### output plugin + +Telegraf output plugins deliver metrics to their configured destination. +To activate an output plugin, enable and configure the plugin in Telegraf's configuration file. + +Related entries: +[aggregator plugin](#aggregator-plugin), +[flush interval](#flush-interval), +[input plugin](#input-plugin), +[processor plugin](#processor-plugin) + +## P + +### parameter + +A key-value pair used to pass information to a function that determines how the +function operates. + +Related entries: +[argument](#argument) + +### pipe + +Method for passing information from one process to another. +For example, an output parameter from one process is input to another process. +Information passed through a pipe is retained until the receiving process reads the information. + +### point + +Single data record identified by its _measurement_, _tag keys_, _tag values_, +_field key_, and _timestamp_. + +In a [series](#series), each point has a unique timestamp. +If you write a point to a series with a timestamp that matches an existing point, +the field set becomes a union of the old and new field set, where any ties go to +the new field set. + +Related entries: +[measurement](#measurement), +[tag set](#tag-set), +[field set](#field-set), +[timestamp](#timestamp) + +### primary key + +With the InfluxDB IOx storage engine, the primary key is the list of columns +used to uniquely identify each row in a table. +Rows are uniquely identified by their timestamp and tag set. +A row's primary key tag set does not include tags with null values. + +### precision + +The precision configuration setting determines the timestamp precision retained +for input data points. +All incoming timestamps are truncated to the specified precision. +Valid precisions are `ns`, `us` or `µs`, `ms`, and `s`. + +In Telegraf, truncated timestamps are padded with zeros to create a nanosecond timestamp. +Telegraf output plugins emit timestamps in nanoseconds. +For example, if the precision is set to `ms`, the nanosecond epoch timestamp `1480000000123456789` is truncated to `1480000000123` in millisecond precision and padded with zeroes to make a new, less precise nanosecond timestamp of `1480000000123000000`. +Telegraf output plugins do not alter the timestamp further. +The precision setting is ignored for service input plugins. + +Related entries: +[aggregator plugin](#aggregator-plugin), +[input plugin](#input-plugin), +[output plugin](#output-plugin), +[processor plugin](#processor-plugin), +[service input plugin](#service-input-plugin) + +### predicate expression + +A predicate expression compares two values and returns `true` or `false` based on +the relationship between the two values. +A predicate expression is comprised of a left operand, a comparison operator, and a right operand. + +### process + +A set of predetermined rules. +A process can refer to instructions being executed by the computer processor or +refer to the act of manipulating data. + +### processor plugin + +Telegraf processor plugins transform, decorate, and filter metrics collected by +input plugins, passing the transformed metrics to the output plugins. + +Related entries: +[aggregator plugin](#aggregator-plugin), +[input plugin](#input-plugin), +[output plugin](#output-plugin) + +### Prometheus format + +A simple text-based format for exposing metrics and ingesting them into Prometheus. + +## Q + +### query + +A request for information. +An InfluxDB query returns time series data. + +See [Query data in InfluxDB](/influxdb3/cloud-dedicated/query-data/). + +### query plan + +A sequence of steps (_nodes_) that the InfluxDB Querier devises and executes to calculate the result of the query in the least amount of time. +A _logical plan_ is a high level representation of a query and doesn't consider cluster configuration or data organization. +A _physical plan_ represents the query execution plan and data flow through plan nodes that read (_scan_), deduplicate, merge, filter, and sort data. +A physical plan is optimized for the cluster configuration and data organization. + +See [Query plans](/influxdb3/cloud-dedicated/reference/internals/query-plans/). + +## R + +### REPL + +A Read-Eval-Print Loop (REPL) is an interactive programming environment where +you type a command and immediately see the result. + +### regular expressions + +Regular expressions (regex or regexp) are patterns used to match character +combinations in strings. + +### rejected points + +In a batch of data, points that InfluxDB couldn't write to a database. +Field type conflicts are a common cause of rejected points. + +### retention period + +The [duration](#duration) of time that a database retains data. +InfluxDB drops points with timestamps older than their database's retention period +relative to [now](#now). +The minimum retention period is **one hour**. + +Related entries: +[bucket](#bucket) + +### retention policy (RP) + +A retention policy is part of the InfluxDB 1.x data model that describes how long +InfluxDB keeps data (duration), how many copies of the data to store when in a +in the cluster (replication factor), and the time range covered by shard groups +(shard group duration). RPs are unique per database and along with the measurement +and tag set define a series. + +In {{< product-name >}}, the equivalent is [retention period](#retention-period), +however retention periods are not part of the data model. +The retention period describes the data persistence behavior of a database. + +Related entries: +[retention period](#retention-period), + +### RFC3339 timestamp + +A timestamp that uses the human-readable DateTime format proposed in +[RFC 3339](https://tools.ietf.org/html/rfc3339) (for example: `2020-01-01T00:00:00.00Z`). + +Related entries: +[RFC3339Nano timestamp](#rfc3339nano-timestamp), +[timestamp](#timestamp), +[unix timestamp](#unix-timestamp) + +### RFC3339Nano timestamp + +A [Golang representation of the RFC 3339 DateTime format](https://go.dev/src/time/format.go) +that uses nanosecond resolution--for example: +`2006-01-02T15:04:05.999999999Z07:00`. + +InfluxDB clients can return RFC3339Nano timestamps in log events and CSV-formatted +query results. + +Related entries: +[RFC3339 timestamp](#rfc3339-timestamp), +[timestamp](#timestamp), +[unix timestamp](#unix-timestamp) + +### row + +A row in a [table](#table) represents a specific record or instance of data. +[Column](#column) values in a row represent specific attributes or properties of the instance. +Each row has a [primary key](/#primary-key) that makes the row unique from other rows in the table. + +Related entries: +[column](#column), +[primary key](#primary-key), +[series](#series), +[table](#table) + +## S + +### schema + +How data is organized in InfluxDB. +The fundamentals of the InfluxDB schema are databases, measurements, +tag keys, tag values, and field keys. + +Related entries: +[bucket](#bucket), +[field key](#field-key), +[measurement](#measurement), +[series](#series), +[tag key](#tag-key), +[tag value](#tag-value) + +### secret + +Secrets are key-value pairs that contain information you want to control access +to, such as API keys, passwords, or certificates. + +### selector + +A function that returns a single point from the range of specified points. +See [SQL selector functions](/influxdb3/cloud-dedicated/reference/sql/functions/selector/) +for a complete list of available SQL selector functions. + +Related entries: +[aggregate](#aggregate), +[function](#function), +[transformation](#transformation) + +### series + +In the InfluxDB 3 data structure, a collection of data that share a common +_measurement_ and _tag set_. + +Related entries: +[field set](#field-set), +[measurement](#measurement), +[tag set](#tag-set) + +### series cardinality + +The number of unique measurement (table), tag set, and field key combinations in an InfluxDB database. + +For example, assume that an InfluxDB database has one measurement. +The single measurement has two tag keys: `email` and `status`. +If there are three different `email` tag values, +and each email address is associated with two +different `status` tag values, then the series cardinality for the measurement is 6 +(3 × 2 = 6): + +| email | status | +| :-------------------- | :----- | +| lorr@influxdata.com | start | +| lorr@influxdata.com | finish | +| marv@influxdata.com | start | +| marv@influxdata.com | finish | +| cliff@influxdata.com | start | +| cliff@influxdata.com | finish | + +In some cases, performing this multiplication may overestimate series cardinality +because of the presence of dependent tags. +Dependent tags are scoped by another tag and do not increase series cardinality. +If we add the tag `firstname` to the preceding example, the series cardinality +would not be 18 (3 × 2 × 3 = 18). +The series cardinality would remain unchanged at 6, as `firstname` is already scoped by the `email` tag: + +| email | status | firstname | +| :------------------- | :----- | :-------- | +| lorr@influxdata.com | start | lorraine | +| lorr@influxdata.com | finish | lorraine | +| marv@influxdata.com | start | marvin | +| marv@influxdata.com | finish | marvin | +| cliff@influxdata.com | start | clifford | +| cliff@influxdata.com | finish | clifford | + +Related entries: +[field key](#field-key), +[measurement](#measurement), +[tag key](#tag-key), +[tag set](#tag-set) + +### series key + +A series key identifies a particular series by measurement, tag set, and field key. + +For example: + +```text +# measurement, tag set, field key +h2o_level, location=santa_monica, h2o_feet +``` + +Related entries: +[series](#series) + +### server + +A computer, virtual or physical, running InfluxDB. + + +### service input plugin + +Telegraf input plugins that run in a passive collection mode while the Telegraf agent is running. +Service input plugins listen on a socket for known protocol inputs, or apply +their own logic to ingested metrics before delivering metrics to the Telegraf agent. + +Related entries: +[aggregator plugin](#aggregator-plugin), +[input plugin](#input-plugin), +[output plugin](#output-plugin), +[processor plugin](#processor-plugin) + +### string + +A data type used to represent text. + +## T + +### TCP + +Transmission Control Protocol. + +### table + +A collection of related data organized in a structured way with a predefined set +of columns and data types. +Each row in the table represents a specific record or instance of the data, and +each column represents a specific attribute or property of the data. + +In InfluxDB Cloud Dedicated, a table represents a measurement. + +Related entries: +[column](#column), +[measurement](#measurement), +[primary key](#primary-key), +[row](#row) + +### tag + +The key-value pair in InfluxDB's data structure that records metadata. +Tags are an optional part of InfluxDB's data structure but they are useful for +storing commonly queried metadata. + +Related entries: +[field](#field), +[tag key](#tag-key), +[tag set](#tag-set), +[tag value](#tag-value) + +### tag key + +The key of a tag key-value pair. +Tag keys are strings and store metadata. + +Related entries: +[field key](#field-key), +[tag](#tag), +[tag set](#tag-set), +[tag value](#tag-value) + +### tag set + +The collection of tag keys and tag values on a point. + +Related entries: +[point](#point), +[primary key](#primary-key), +[series](#series), +[tag](#tag), +[tag key](#tag-key), +[tag value](#tag-value) + +### tag value + +The value of a tag key-value pair. +Tag values are strings and they store metadata. + +Related entries: +[tag](#tag), +[tag key](#tag-key), +[tag set](#tag-set) + +### Telegraf + +A plugin-driven agent that collects, processes, aggregates, and writes metrics. + +Related entries: +[Telegraf plugins](/telegraf/v1/plugins/), +[Use Telegraf to collect data](/influxdb3/cloud-dedicated/write-data/use-telegraf/), + +### time (data type) + +A data type that represents a single point in time with nanosecond precision. + +### time series data + +Sequence of data points typically consisting of successive measurements made +from the same source over a time interval. +Time series data shows how data evolves over time. +On a time series data graph, one of the axes is always time. +Time series data may be regular or irregular. +Regular time series data changes in constant intervals. +Irregular time series data changes at non-constant intervals. + +### timestamp + +The date and time associated with a point. +Time in InfluxDB is in UTC. + +To specify time when writing data, see +[Elements of line protocol](/influxdb3/cloud-dedicated/reference/syntax/line-protocol/#elements-of-line-protocol). + +Related entries: +[point](#point), +[unix timestamp](#unix-timestamp), +[RFC3339 timestamp](#rfc3339-timestamp) + +### token + +Tokens provide authorization to perform specific actions in InfluxDB. +There are different types of API tokens: + +- **Database token:** Grants read and write access to a database. +- **Management token:** A short-lived token that grants clients administrative + access to your InfluxDB Cloud Dedicated cluster. + +Related entries: +[Manage token](/influxdb3/cloud-dedicated/admin/tokens/) + +### transformation + +Data transformation refers to the process of converting or modifying input data from one format, value, or structure to another. + +InfluxQL [transformation functions](/influxdb3/cloud-dedicated/reference/influxql/functions/transformations/) modify and return values in each row of queried data, but do not return an aggregated value across those rows. + +Related entries: [aggregate](#aggregate), [function](#function), [selector](#selector) + +### TSM (Time Structured Merge tree) + +The InfluxDB v1 and v2 data storage format that allows greater compaction and +higher write and read throughput than B+ or LSM tree implementations. +The TSM storage engine has been replaced by the [InfluxDB 3 storage engine (IOx)](#iox). + +Related entries: +[IOx](#iox) + +## U + +### UDP + +User Datagram Protocol is a packet of information. +When a request is made, a UDP packet is sent to the recipient. +The sender doesn't verify the packet is received. +The sender continues to send the next packets. +This means computers can communicate more quickly. +This protocol is used when speed is desirable and error correction is not necessary. + +### unix epoch + +The date and time from which Unix system times are measured. +The Unix epoch is `1970-01-01T00:00:00Z`. + +### unix timestamp + +Counts time since **Unix Epoch (1970-01-01T00:00:00Z UTC)** in specified units ([precision](#precision)). +Specify timestamp precision when [writing data to InfluxDB](/influxdb3/cloud-dedicated/write-data/). +InfluxDB supports the following unix timestamp precisions: + +| Precision | Description | Example | +|:--------- |:----------- |:------- | +| `ns` | Nanoseconds | `1577836800000000000` | +| `us` | Microseconds | `1577836800000000` | +| `ms` | Milliseconds | `1577836800000` | +| `s` | Seconds | `1577836800` | + +

    The examples above represent 2020-01-01T00:00:00Z UTC.

    + +Related entries: +[timestamp](#timestamp), +[RFC3339 timestamp](#rfc3339-timestamp) + +### unsigned integer + +A whole number that is positive or zero (`0`, `143`). Also known as a "uinteger." +InfluxDB supports 64-bit unsigned integers (minimum: `0`, maximum: `18446744073709551615`). + +Related entries: +[integer](#integer) + +### user + +InfluxDB users are granted permission to access to InfluxDB. + +## V + +### values per second + +The preferred measurement of the rate at which data is persisted to InfluxDB. +Write speeds are generally quoted in values per second. + +To calculate the values per second rate, multiply the number of points written +per second by the number of values stored per point. +For example, if the points have four fields each, and a batch of 5000 points is +written 10 times per second, the values per second rate is: + +**4 field values per point** × **5000 points per batch** × **10 batches per second** = **200,000 values per second** + +Related entries: +[batch](#batch), +[field](#field), +[point](#point) + +### variable + +A storage location (identified by a memory address) paired with an associated +symbolic name (an identifier). +A variable contains some known or unknown quantity of information referred to as a value. + +### variable assignment + +A statement that sets or updates the value stored in a variable. + +## W + +### WAL (Write-Ahead Log) + +The temporary cache for recently written points. +To reduce the frequency that permanent storage files are accessed, InfluxDB +caches new points in the WAL until their total size or age triggers a flush to +more permanent storage. This allows for efficient batching of the writes into +the storage engine. + +Points in the WAL are queryable and persist through a system reboot. +On process start, all points in the WAL must be flushed before the system +accepts new writes. + +### windowing + +Grouping data based on specified time intervals. +This is also referred to as "time binning" or "date binning." From 4c7c19baaf4b3030891aaf9281d746d6a6c50d62 Mon Sep 17 00:00:00 2001 From: Jason Stirnaman Date: Tue, 15 Apr 2025 12:07:18 -0500 Subject: [PATCH 32/44] chore(influxdb3): shared glossary suitable for all InfluxDB 3 versions. Currently, only using for Enterprise and Core --- content/influxdb3/core/reference/glossary.md | 15 ++ .../enterprise/reference/glossary.md | 15 ++ .../shared/influxdb3-reference/glossary.md | 158 +++++++++++++----- 3 files changed, 143 insertions(+), 45 deletions(-) create mode 100644 content/influxdb3/core/reference/glossary.md create mode 100644 content/influxdb3/enterprise/reference/glossary.md diff --git a/content/influxdb3/core/reference/glossary.md b/content/influxdb3/core/reference/glossary.md new file mode 100644 index 000000000..c29e9cc0e --- /dev/null +++ b/content/influxdb3/core/reference/glossary.md @@ -0,0 +1,15 @@ +--- +title: Glossary +description: > + Terms related to InfluxData products and platforms. +weight: 109 +menu: + influxdb3_core: + parent: Reference +influxdb3/core/tags: [glossary] +source: /shared/influxdb3-reference/glossary.md +--- + + diff --git a/content/influxdb3/enterprise/reference/glossary.md b/content/influxdb3/enterprise/reference/glossary.md new file mode 100644 index 000000000..80c5cca00 --- /dev/null +++ b/content/influxdb3/enterprise/reference/glossary.md @@ -0,0 +1,15 @@ +--- +title: Glossary +description: > + Terms related to InfluxData products and platforms. +weight: 109 +menu: + influxdb3_enterprise: + parent: Reference +influxdb3/enterprise/tags: [glossary] +source: /shared/influxdb3-reference/glossary.md +--- + + diff --git a/content/shared/influxdb3-reference/glossary.md b/content/shared/influxdb3-reference/glossary.md index 35c717f18..8bb5dfb74 100644 --- a/content/shared/influxdb3-reference/glossary.md +++ b/content/shared/influxdb3-reference/glossary.md @@ -1,13 +1,3 @@ ---- -title: Glossary -description: > - Terms related to InfluxData products and platforms. -weight: 109 -menu: - influxdb3_cloud_dedicated: - parent: Reference -influxdb3/cloud-dedicated/tags: [glossary] ---- [A](#a) | [B](#b) | [C](#c) | [D](#d) | [E](#e) | [F](#f) | [G](#g) | [H](#h) | [I](#i) | [J](#j) | [K](#k) | [L](#l) | [M](#m) | [N](#n) | [O](#o) | [P](#p) | [Q](#q) | [R](#r) | [S](#s) | [T](#t) | [U](#u) | [V](#v) | [W](#w) | X | Y | Z @@ -47,7 +37,7 @@ Related entries: A function that returns an aggregated value across a set of points. For a list of available aggregation functions, -see [SQL aggregate functions](/influxdb3/cloud-dedicated/reference/sql/functions/aggregate/). +see [SQL aggregate functions](/influxdb3/version/reference/sql/functions/aggregate/). @@ -105,7 +95,10 @@ By convention, you can express `true` as the integer `1` and false as the intege "Bucket" is the term used in InfluxDB 2.x and _InfluxDB Cloud Serverless_ to refer to a named location where time series data is stored. -Bucket is synonymous with "database" when using InfluxDB Cloud Dedicated. + +{{% hide-in "serverless" %}} +Bucket is synonymous with "database" when using {{< product-name >}}. +{{% /hide-in %}} Related entries: [database](#database) @@ -186,10 +179,11 @@ A background process that runs without user input. ### dashboard -A collection of data visualizations used to query and display time series data. -There a many tools designed specifically to create dashboards including -[Grafana](https://grafana.com), [Apache Superset](https://superset.apache.org/), -[Tableau](https://www.tableau.com/), and others. +A collection of data visualizations used to query and display data. +Some versions of InfluxDB include a built-in dashboarding tool for time series data. +Tools such as [Grafana](https://grafana.com), [Apache Superset](https://superset.apache.org/), +[Tableau](https://www.tableau.com/) specialize in data visualization and dashboards +for various data sources, including time series data stored in InfluxDB. A data model organizes elements of data and standardizes how they relate to one another and to properties of the real world entities. +{{% show-in "cloud-dedicated,clustered,cloud-serverless" %}} For information about the InfluxDB data model, see -[InfluxDB data organization](/influxdb3/cloud-dedicated/get-started/#data-organization) +[InfluxDB data organization](/influxdb3/version/get-started/#data-organization) +{{% /show-in %}} + +{{% show-in "core,enterprise" %}} +For more information, see the [{{< product-name >}} data model](/influxdb3/version/get-started/#data-model) +{{% /show-in %}} ### data service @@ -231,9 +231,9 @@ InfluxDB supports the following data types: For more information about different data types, see: -- [line protocol](/influxdb/v2/reference/syntax/line-protocol/#data-types-and-format) -- [InfluxQL](/influxdb/v1/query_language/spec/#literals) -- [InfluxDB](/influxdb/v2/reference/syntax/line-protocol/#data-types-and-format) +- [line protocol](/influxdb3/version/reference/syntax/line-protocol/#data-types-and-format) +- [InfluxQL](/influxdb3/version/reference/influxql/#literals) +- [SQL](/influxdb3/version/reference/sql/data-types/#sql-and-arrow-data-types) #### database @@ -370,10 +370,11 @@ Related entries: A function is an operation that performs a specific task. Functions take input, operate on that input, and then return output. -For a complete list of available SQL functions, see -[SQL functions](/influxdb3/cloud-dedicated/reference/sql/functions/). - +For complete lists of available query language functions, see: + +- [InfluxQL functions](/influxdb3/version/reference/influxql/functions/) +- [SQL functions](/influxdb3/version/reference/sql/functions/). Related entries: [aggregate](#aggregate), @@ -415,7 +416,7 @@ Related entries: [`influxctl`](/influxdb3/cloud-dedicated/reference/cli/influxctl/) is a CLI that performs [administrative tasks](/influxdb3/cloud-dedicated/admin/) for an -InfluxDB Cloud dedicated cluster. +InfluxDB Cloud Dedicated cluster. ### influxd @@ -428,6 +429,13 @@ An open source time series database (TSDB) developed by InfluxData, optimized fo time series data in fields such as operations monitoring, application metrics, Internet of Things sensor data, and real-time analytics. +### influxdb3 + +`influxdb3` is: + +- the InfluxDB 3 Core and Enterprise daemon that runs the InfluxDB 3 server +- the InfluxDB 3 CLI that interacts with the server for InfluxDB 3 Core and Enterprise + ### InfluxQL The SQL-like query language used to query data in InfluxDB. @@ -448,7 +456,6 @@ Related entries: ### instance An entity comprising data on a server (or virtual server in cloud computing). - ### integer @@ -499,14 +506,14 @@ you can't use `SELECT` (an SQL keyword) as a variable name in an SQL query. See keyword lists: -- [SQL keywords](/influxdb3/cloud-dedicated/reference/sql/#keywords) -- [InfluxQL keywords](/influxdb3/cloud-dedicated/reference/influxql/#keywords) +- [SQL keywords](/influxdb3/version/reference/sql/#keywords) +- [InfluxQL keywords](/influxdb3/version/reference/influxql/#keywords) ## L ### literal -A literal is value in an expression, a number, character, string, function, record, or array. +A literal is a value in an expression, a number, character, string, function, record, or array. Literal values are interpreted as defined. ### load balancing @@ -530,7 +537,7 @@ database crashes or other errors occur. ### line protocol (LP) The text based format for writing points to InfluxDB. -See [line protocol](/influxdb3/cloud-dedicated/reference/syntax/line-protocol/). +See [line protocol](/influxdb3/version/reference/syntax/line-protocol/). ## M @@ -601,7 +608,10 @@ Related entries: An InfluxDB v2 concept that describes workspace for a group of users. All InfluxDB v2 dashboards, tasks, buckets, members, and so on, belong to an organization. -Organizations are not part of InfluxDB Cloud Dedicated. + +{{% hide-in "cloud-serverless" %}} +Organizations are not part of {{< product-name >}}. +{{% /hide-in %}} ### owner @@ -639,6 +649,17 @@ Method for passing information from one process to another. For example, an output parameter from one process is input to another process. Information passed through a pipe is retained until the receiving process reads the information. +### plugin + +A Python file with a specific function signature that corresponds to a +[trigger](#trigger) type. +Plugins run in the [Processing engine](#processing-engine) to process data, +respond to database events, and connect to external systems. + +Related entries: +[Processing engine](#processing-engine), +[trigger](#trigger) + ### point Single data record identified by its _measurement_, _tag keys_, _tag values_, @@ -657,7 +678,7 @@ Related entries: ### primary key -With the InfluxDB IOx storage engine, the primary key is the list of columns +With the InfluxDB 3 storage engine, the primary key is the list of columns used to uniquely identify each row in a table. Rows are uniquely identified by their timestamp and tag set. A row's primary key tag set does not include tags with null values. @@ -694,6 +715,21 @@ A set of predetermined rules. A process can refer to instructions being executed by the computer processor or refer to the act of manipulating data. +### Processing engine + +The Processing engine is a Python virtual machine (VM) embedded within +InfluxDB 3 Core and Enterprise for automatically processing data and responding +to database events. It executes Python plugins in response to events defined by +triggers. The Processing engine runs Python code directly in your +database, allowing plugins to react to specific triggers without requiring external services. + +Related entries: +[plugin](#plugin), +[trigger](#trigger) + + + + ### processor plugin Telegraf processor plugins transform, decorate, and filter metrics collected by @@ -715,7 +751,7 @@ A simple text-based format for exposing metrics and ingesting them into Promethe A request for information. An InfluxDB query returns time series data. -See [Query data in InfluxDB](/influxdb3/cloud-dedicated/query-data/). +See [Query data in InfluxDB](/influxdb3/version/query-data/). ### query plan @@ -724,7 +760,9 @@ A _logical plan_ is a high level representation of a query and doesn't consider A _physical plan_ represents the query execution plan and data flow through plan nodes that read (_scan_), deduplicate, merge, filter, and sort data. A physical plan is optimized for the cluster configuration and data organization. -See [Query plans](/influxdb3/cloud-dedicated/reference/internals/query-plans/). +{{% show-in "cloud-dedicated,clustered" %}} +For more information, see [Query plans](/influxdb3/version/reference/internals/query-plans/). +{{% /show-in %}} ## R @@ -828,7 +866,7 @@ to, such as API keys, passwords, or certificates. ### selector A function that returns a single point from the range of specified points. -See [SQL selector functions](/influxdb3/cloud-dedicated/reference/sql/functions/selector/) +See [SQL selector functions](/influxdb3/version/reference/sql/functions/selector/) for a complete list of available SQL selector functions. Related entries: @@ -936,7 +974,9 @@ of columns and data types. Each row in the table represents a specific record or instance of the data, and each column represents a specific attribute or property of the data. -In InfluxDB Cloud Dedicated, a table represents a measurement. +{{% show-in "cloud-dedicated,clustered,core,enterprise" %}} +In {{< product-name >}}, a table represents a measurement. +{{% /show-in %}} Related entries: [column](#column), @@ -995,7 +1035,7 @@ A plugin-driven agent that collects, processes, aggregates, and writes metrics. Related entries: [Telegraf plugins](/telegraf/v1/plugins/), -[Use Telegraf to collect data](/influxdb3/cloud-dedicated/write-data/use-telegraf/), +[Use Telegraf to collect data](/influxdb3/version/write-data/use-telegraf/), ### time (data type) @@ -1017,7 +1057,7 @@ The date and time associated with a point. Time in InfluxDB is in UTC. To specify time when writing data, see -[Elements of line protocol](/influxdb3/cloud-dedicated/reference/syntax/line-protocol/#elements-of-line-protocol). +[Elements of line protocol](/influxdb3/version/reference/syntax/line-protocol/#elements-of-line-protocol). Related entries: [point](#point), @@ -1027,23 +1067,51 @@ Related entries: ### token Tokens provide authorization to perform specific actions in InfluxDB. -There are different types of API tokens: +{{% show-in "cloud-serverless" %}} +{{< product-name >}} uses **API tokens** to authorize read and write access to resources and data. +{{% /show-in %}} + +{{% show-in "cloud-dedicated,clustered" %}} +There are different types of API tokens: - **Database token:** Grants read and write access to a database. - **Management token:** A short-lived token that grants clients administrative - access to your InfluxDB Cloud Dedicated cluster. + access to your {{< product-name >}} cluster. +{{% /show-in %}} -Related entries: -[Manage token](/influxdb3/cloud-dedicated/admin/tokens/) +{{% show-in "core,enterprise" %}} +There are different types of API tokens: +- **Admin token:** A token that grants full access to InfluxDB 3 server actions. +- **Resource token:** Tokens that grant read and write access to server resources, + such as databases and system information. + Database tokens allow for reading and writing data in your {{< product-name omit="Clustered" >}} instance. + System tokens allow for reading system information and metrics for your server. +{{% /show-in %}} + +For more information, see [Manage tokens](/influxdb3/version/admin/tokens/). ### transformation -Data transformation refers to the process of converting or modifying input data from one format, value, or structure to another. +Data transformation refers to the process of converting or modifying input data +from one format, value, or structure to another. -InfluxQL [transformation functions](/influxdb3/cloud-dedicated/reference/influxql/functions/transformations/) modify and return values in each row of queried data, but do not return an aggregated value across those rows. +InfluxQL [transformation functions](/influxdb3/version/reference/influxql/functions/transformations/) +modify and return values in each row of queried data, but do not return an +aggregated value across those rows. Related entries: [aggregate](#aggregate), [function](#function), [selector](#selector) +### trigger + +An InfluxDB 3 resource that connects a [plugin](#plugin) to an event that runs the plugin. +Events include data ingestion, time intervals or schedules, and HTTP requests. +Triggers activate plugins and can provide configuration parameters to the plugin. +The plugin function signature in a plugin file determines which trigger specification you can use for configuring and activating the plugin. + +Related entries: +[plugin](#plugin), +[Processing engine](#processing-engine) + ### TSM (Time Structured Merge tree) The InfluxDB v1 and v2 data storage format that allows greater compaction and @@ -1072,7 +1140,7 @@ The Unix epoch is `1970-01-01T00:00:00Z`. ### unix timestamp Counts time since **Unix Epoch (1970-01-01T00:00:00Z UTC)** in specified units ([precision](#precision)). -Specify timestamp precision when [writing data to InfluxDB](/influxdb3/cloud-dedicated/write-data/). +Specify timestamp precision when [writing data to InfluxDB](/influxdb3/version/write-data/). InfluxDB supports the following unix timestamp precisions: | Precision | Description | Example | @@ -1098,7 +1166,7 @@ Related entries: ### user -InfluxDB users are granted permission to access to InfluxDB. +InfluxDB users are granted permission to access InfluxDB. ## V From a79e4cf02a52630808ee65e8f81d66f1dcdb4846 Mon Sep 17 00:00:00 2001 From: Jason Stirnaman Date: Tue, 15 Apr 2025 13:56:24 -0500 Subject: [PATCH 33/44] Update content/shared/influxdb3-reference/glossary.md Co-authored-by: Scott Anderson --- content/shared/influxdb3-reference/glossary.md | 4 ---- 1 file changed, 4 deletions(-) diff --git a/content/shared/influxdb3-reference/glossary.md b/content/shared/influxdb3-reference/glossary.md index 8bb5dfb74..a66f13bdf 100644 --- a/content/shared/influxdb3-reference/glossary.md +++ b/content/shared/influxdb3-reference/glossary.md @@ -726,10 +726,6 @@ database, allowing plugins to react to specific triggers without requiring exter Related entries: [plugin](#plugin), [trigger](#trigger) - - - - ### processor plugin Telegraf processor plugins transform, decorate, and filter metrics collected by From ab3d20f81ffa239b6a742d8f24807fc662f8231d Mon Sep 17 00:00:00 2001 From: Jason Stirnaman Date: Tue, 15 Apr 2025 14:41:43 -0500 Subject: [PATCH 34/44] chore(influxdb3): Glossary: improve Processing engine definitions, merge improvements from Clustered --- .../shared/influxdb3-reference/glossary.md | 44 ++++++++++++------- 1 file changed, 27 insertions(+), 17 deletions(-) diff --git a/content/shared/influxdb3-reference/glossary.md b/content/shared/influxdb3-reference/glossary.md index a66f13bdf..a3d88ae71 100644 --- a/content/shared/influxdb3-reference/glossary.md +++ b/content/shared/influxdb3-reference/glossary.md @@ -122,14 +122,19 @@ With the InfluxDB 3 storage engine, high series cardinality _does not_ affect pe ### cluster A collection of servers or processes that work together as a single unit. -An InfluxDB Cloud Dedicated cluster is a collection of InfluxDB servers dedicated +An InfluxDB cluster is a collection of InfluxDB servers dedicated to the workload of a single customer. ### collect -Collect and write time series data to InfluxDB using line protocol, Telegraf, -the InfluxDB v1 and v2 HTTP APIs, v1 and v2 `influx` command line interface (CLI), -and InfluxDB client libraries. +Collect and write time series data to InfluxDB using line protocol and any of the following tools: + +- Telegraf +- the InfluxDB v1, v2, or v3 HTTP APIs +- `influxdb3` command line interface (CLI) for InfluxDB 3 Core and Enterprise +- InfluxDB 3 Processing engine with the `LineBuilder` and `influxdb3_local` shared API. +- v1 or v2 `influx` command line interface (CLI) +- InfluxDB v1, v2, or v3 client libraries ### collection interval @@ -143,7 +148,7 @@ Related entries: Collection jitter prevents every input plugin from collecting metrics simultaneously, which can have a measurable effect on the system. -For each collection interval, every Telegraf input plugin will sleep for a random +For each collection interval, every Telegraf input plugin sleeps for a random time between zero and the collection jitter before collecting the metrics. Related entries: @@ -179,11 +184,11 @@ A background process that runs without user input. ### dashboard -A collection of data visualizations used to query and display data. -Some versions of InfluxDB include a built-in dashboarding tool for time series data. -Tools such as [Grafana](https://grafana.com), [Apache Superset](https://superset.apache.org/), -[Tableau](https://www.tableau.com/) specialize in data visualization and dashboards -for various data sources, including time series data stored in InfluxDB. +A collection of data visualizations, charts, and panels organized in a single view to monitor and analyze time series data. Dashboards provide at-a-glance visualization of metrics and allow users to track trends, spot anomalies, and understand relationships between different data points over time. +Some versions of InfluxDB include built-in dashboarding features. +InfluxDB can integrate with third-party visualization and dashboard tools, such as +[Grafana](https://grafana.com), [Apache Superset](https://superset.apache.org/), +[Tableau](https://www.tableau.com/). - -Related entries: -[function](#function), -[selector](#selector) - -### API - -Application programming interface that facilitates and standardizes communication -between two or more computer programs. - -### argument - -A value passed to a function or command that determines how the process operates. - -Related entries: -[parameter](#parameter) - -## B - -### batch - -A collection of points in line protocol format, separated by newlines (`0x0A`). -Submitting a batch of points using a single HTTP request to the write endpoints -drastically increases performance by reducing the HTTP overhead. -InfluxData typically recommends batch sizes of 5,000-10,000 points. -In some use cases, performance may improve with significantly smaller or larger batches. - -Related entries: -[line protocol](#line-protocol-lp), -[point](#point) - -### batch size - -The number of lines or individual data points in a line protocol batch. -The Telegraf agent sends metrics to output plugins in batches rather than individually. -Batch size controls the size of each write batch that Telegraf sends to the output plugins. - -Related entries: -[output plugin](#output-plugin) - -### bin - -In a cumulative histogram, a bin includes all data points less than or equal to a specified upper bound. -In a normal histogram, a bin includes all data points between the upper and lower bounds. -Histogram bins are also sometimes referred to as "buckets." - -### boolean - -A data type with two possible values: true or false. -By convention, you can express `true` as the integer `1` and false as the integer `0` (zero). - -### bucket - -"Bucket" is the term used in InfluxDB 2.x and _InfluxDB Cloud Serverless_ to refer -to a named location where time series data is stored. -Bucket is synonymous with "database" when using InfluxDB Clustered. - -Related entries: -[database](#database) - -## C - -### CSV - -Comma-separated values (CSV) delimits text between commas to separate values. -A CSV file stores tabular data (numbers and text) in plain text. -Each line of the file is a data row. -Each row consists of one or more columns, separated by commas. -CSV file format is not fully standardized. - -### cardinality - -Cardinality is the number of unique values in a set. -Series cardinality is the number of unique [series](#series) in a database as a whole. -With the InfluxDB 3 storage engine, high series cardinality _does not_ affect performance. - -### cluster - -A collection of servers or processes that work together as a single unit. -An InfluxDB cluster is a collection of InfluxDB servers dedicated -to the workload of a single customer. - -### collect - -Collect and write time series data to InfluxDB using line protocol and any of the following tools: - -- Telegraf -- the InfluxDB v1 or v2 HTTP APIs -- v1 or v2 `influx` command line interface (CLI) -- InfluxDB client libraries - -### collection interval - -The default global interval for collecting data from each Telegraf input plugin. -The collection interval can be overridden by each individual input plugin's configuration. - -Related entries: -[input plugin](#input-plugin) - -### collection jitter - -Collection jitter prevents every input plugin from collecting metrics simultaneously, -which can have a measurable effect on the system. -For each collection interval, every Telegraf input plugin sleeps for a random -time between zero and the collection jitter before collecting the metrics. - -Related entries: -[collection interval](#collection-interval), -[input plugin](#input-plugin) - -### column - -InfluxDB data is stored in tables within rows and columns. -Columns store tag sets and fields sets, and time values. -The only required column is _time_, which stores timestamps and is included -in all InfluxDB tables. - -### common log format (CLF) - -A standardized text file format used by the InfluxDB server to create log -entries when generating server log files. - -### compaction - -Compressing time series data to optimize disk usage. - -### continuous query (CQ) - -Continuous queries are a feature of InfluxDB 1.x used to regularly downsample -or process time series data. - -## D - -### daemon - -A background process that runs without user input. - -### dashboard - -A collection of data visualizations used to query and display time series data. -There a many tools designed specifically to create dashboards including -[Grafana](https://grafana.com), [Apache Superset](https://superset.apache.org/), -[Tableau](https://www.tableau.com/), and others. - - - -### data model - -A data model organizes elements of data and standardizes how they relate to one -another and to properties of the real world entities. - -For information about the InfluxDB data model, see -[InfluxDB data organization](/influxdb3/clustered/get-started/#data-organization) - -### data service - -Stores time series data and handles writes and queries. - -### data source - -A source of data that InfluxDB collects or queries data from. - -Related entries: -[database](#database) - -### data type - -A data type is defined by the values it can take, the programming language used, -or the operations that can be performed on it. - -InfluxDB supports the following data types: - -- string -- boolean -- float (64-bit) -- integer (64-bit) -- unsigned integer (64-bit) -- time - -For more information about different data types, see: - -- [line protocol](/influxdb/v2/reference/syntax/line-protocol/#data-types-and-format) -- [InfluxQL](/influxdb/v1/query_language/spec/#literals) -- [InfluxDB](/influxdb/v2/reference/syntax/line-protocol/#data-types-and-format) - -#### database - -A named location where time series data is stored. - -In InfluxDB 1.x, a database represented a logical container for users, retention -policies, continuous queries, and time series data. -In InfluxDB 2.x, the equivalent of this concept is an InfluxDB [bucket](#bucket). - -Related entries: -[bucket](#bucket), -[retention policy](#retention-policy-rp) - -### date-time - -InfluxDB stores the date-time format for each data point in a timestamp with -nanosecond-precision Unix time. -Specifying a timestamp is optional. -If a timestamp isn't specified for a data point, InfluxDB uses the server’s -local nanosecond timestamp in UTC. - -### downsample - -Aggregating high resolution data into lower resolution data to preserve disk space. - -### duration - -A data type that represents a duration of time--for example, `1s`, `1m`, `1h`, `1d`. -Retention periods are set using durations. - -Related entries: -[retention period](#retention-period) - -## E - -### event - -Metrics gathered at irregular time intervals. - -### expression - -A combination of one or more constants, variables, operators, and functions. - -In the following SQL example, `now() - INTERVAL '7 days'` is an expression that calculates the difference between the `now()` function expression and the duration represented by `INTERVAL '7 days`: - -```sql -SELECT * -FROM home -WHERE - time >= now() - INTERVAL '7 days' -``` - -## F - -### field - -A key-value pair in InfluxDB's data structure that records a data value. -Generally, field values change over time. -Fields are required in InfluxDB's data structure. - -Related entries: -[field key](#field-key), -[field set](#field-set), -[field value](#field-value), -[tag](#tag) - -### field key - -The key of the key-value pair. -Field keys are strings. - -Related entries: -[field](#field), -[field set](#field-set), -[field value](#field-value), -[tag key](#tag-key) - -### field set - -The collection of field key-value pairs. - -Related entries: -[field](#field), -[field key](#field-key), -[field value](#field-value), -[point](#point) - -### field value - -The value of a key-value pair. -Field values are the actual data; they can be strings, floats, integers, unsigned integers or booleans. -A field value is always associated with a timestamp. - -Related entries: -[field](#field), -[field key](#field-key), -[field set](#field-set), -[tag set](#tag-set), -[tag value](#tag-value), -[timestamp](#timestamp) - -### file block - -A file block is a fixed-length chunk of data read into memory when requested by an application. - -### float - -A real number written with a decimal point dividing the integer and fractional parts (`1.0`, `3.14`, `-20.1`). -InfluxDB supports 64-bit float values. - -### flush interval - -The global interval for flushing data from each Telegraf output plugin to its destination. -This value should not be set lower than the collection interval. - -Related entries: -[collection interval](#collection-interval), -[flush jitter](#flush-jitter), -[output plugin](#output-plugin) - -### flush jitter - -Flush jitter prevents every Telegraf output plugin from sending writes -simultaneously, which can overwhelm some data sinks. -Each flush interval, every Telegraf output plugin sleeps for a random time -between zero and the flush jitter before emitting metrics. -Flush jitter smooths out write spikes when running a large number of Telegraf instances. - -Related entries: -[flush interval](#flush-interval), -[output plugin](#output-plugin) - -### function - -A function is an operation that performs a specific task. -Functions take input, operate on that input, and then return output. -For a complete list of available SQL functions, see -[SQL functions](/influxdb3/clustered/reference/sql/functions/). - - - -Related entries: -[aggregate](#aggregate), -[selector](#selector) - -## G - -### gzip - -gzip is a type of data compression that compress chunks of data, which is -restored by unzipping compressed gzip files. -The gzip file extension is `.gz`. - -## H - -### histogram - -A visual representation of statistical information that uses rectangles to show -the frequency of data items in successive, equal intervals or bins. - -## I - -### identifier - -Identifiers are tokens that refer to specific database objects such as database -names, field keys, measurement names, tag keys, etc. - -Related entries: -[database](#database), -[field key](#field-key), -[measurement](#measurement), -[tag key](#tag-key) - -### influx - -`influx` is a command line interface (CLI) that interacts with the InfluxDB v1.x and v2.x server. - -### influxctl - -[`influxctl`](/influxdb3/clustered/reference/cli/influxctl/) is a CLI that -performs [administrative tasks](/influxdb3/clustered/admin/) for an -InfluxDB cluster. - -### influxd - -`influxd` is the InfluxDB OSS v1.x and v2.x daemon that runs the InfluxDB server -and other required processes. - -### InfluxDB - -An open source time series database (TSDB) developed by InfluxData, optimized -for fast, high-availability storage and retrieval of -time series data in fields such as operations monitoring, application metrics, -Internet of Things sensor data, and real-time analytics. - -### InfluxQL - -The SQL-like query language used to query data in InfluxDB. - -### input plugin - -Telegraf input plugins actively gather metrics and deliver them to the core agent, -where aggregator, processor, and output plugins can operate on the metrics. -To activate an input plugin, enable and configure it in the -Telegraf configuration file. - -Related entries: -[aggregator plugin](#aggregator-plugin), -[collection interval](#collection-interval), -[output plugin](#output-plugin), -[processor plugin](#processor-plugin) - -### instance - -An entity comprising data on a server (or virtual server in cloud computing). - - -### integer - -A whole number that is positive, negative, or zero (`0`, `-5`, `143`). -InfluxDB supports 64-bit integers (minimum: `-9223372036854775808`, maximum: `9223372036854775807`). - -Related entries: -[unsigned integer](#unsigned-integer) - -### IOx - -The IOx (InfluxDB 3) storage engine is a real-time, columnar database optimized for time series -data built in Rust on top of [Apache Arrow](https://arrow.apache.org/) and -[DataFusion](https://arrow.apache.org/datafusion/user-guide/introduction.html). -IOx replaces the [TSM (Time Structured Merge tree)](#tsm-time-structured-merge-tree) storage engine. - -## J - -### JWT - -Typically, JSON web tokens (JWT) are used to authenticate users between an -identity provider and a service provider. -A server can generate a JWT to assert any business processes. -For example, an "admin" token sent to a client can prove the client is logged in as admin. -Tokens are signed by one party's private key (typically, the server). -Private keys are used by both parties to verify that a token is legitimate. - -JWT uses an open standard specified in [RFC 7519](https://tools.ietf.org/html/rfc7519). - -### Jaeger - -Open source tracing used in distributed systems to monitor and troubleshoot transactions. - -### JSON - -JavaScript Object Notation (JSON) is an open-standard file format that uses -human-readable text to transmit data objects consisting of attribute–value pairs -and array data types. - -## K - -### keyword - -A keyword is reserved by a program because it has special meaning. -Every programming language has a set of keywords (reserved names) that cannot be used as identifiers--for example, -you can't use `SELECT` (an SQL keyword) as a variable name in an SQL query. - -See keyword lists: - -- [SQL keywords](/influxdb3/clustered/reference/sql/#keywords) -- [InfluxQL keywords](/influxdb3/clustered/reference/influxql/#keywords) - -## L - -### literal - -A literal is value in an expression, a number, character, string, function, record, or array. -Literal values are interpreted as defined. - -### load balancing - -Improves workload distribution across multiple computing resources in a network. -Load balancing optimizes resource use, maximizes throughput, minimizes response -time, and avoids overloading a single resource. -Using multiple components with load balancing instead of a single component may -increase reliability and availability. -If requests to any server in a network increase, requests are forwarded to -another server with more capacity. -Load balancing can also refer to the communications channels themselves. - -### logs - -Logs record information. -Event logs describe system events and activity that help to describe and diagnose problems. -Transaction logs describe changes to stored data that help recover data if a -database crashes or other errors occur. - -### line protocol (LP) - -The text based format for writing points to InfluxDB. -See [line protocol](/influxdb3/clustered/reference/syntax/line-protocol/). - -## M - -### measurement - -The part of InfluxDB's data structure that describes the data stored in associated fields. -Measurements are strings. - -Related entries: -[field](#field), [series](#series) - -### metric - -Data tracked over time. - -### metric buffer - -The metric buffer caches individual metrics when writes are failing for an Telegraf output plugin. -Telegraf will attempt to flush the buffer upon a successful write to the output. -The oldest metrics are dropped first when this buffer fills. - -Related entries: -[output plugin](#output-plugin) - -### missing values - -Denoted by a null value. -Identifies missing information, which may be useful to include in an error message. - -## N - -### node - -An independent process or server in a cluster. - -Related entries: -[cluster](#cluster), -[server](#server) - -### now - -The local server's nanosecond timestamp. - -### null - -A data type that represents a missing or unknown value. -Denoted by the `null` value. -Values of [tags](#tag) and [fields](#field) may be `null`, but timestamp values are never `null`. - -## O - -### operator - -A symbol that usually represents an action or process. -For example: `+`, `-`, `>`. - -Related entries: -[operand](#operand) - -### operand - -The object or value on either side of an [operator](#operator). - -Related entries: -[operator](#operator) - -### organization - -An InfluxDB v2 concept that describes workspace for a group of users. -All InfluxDB v2 dashboards, tasks, buckets, members, and so on, belong to an organization. -Organizations are not part of InfluxDB Clustered. - -### owner - -A type of role for a user. -Owners have read/write permissions. -Users can have owner roles for databases and other resources. - -Role permissions are separate from API token permissions. For additional -information on API tokens, see [token](#token). - -### output plugin - -Telegraf output plugins deliver metrics to their configured destination. -To activate an output plugin, enable and configure the plugin in Telegraf's configuration file. - -Related entries: -[aggregator plugin](#aggregator-plugin), -[flush interval](#flush-interval), -[input plugin](#input-plugin), -[processor plugin](#processor-plugin) - -## P - -### parameter - -A key-value pair used to pass information to a function that determines how the -function operates. - -Related entries: -[argument](#argument) - -### pipe - -Method for passing information from one process to another. -For example, an output parameter from one process is input to another process. -Information passed through a pipe is retained until the receiving process reads the information. - -### point - -Single data record identified by its _measurement_, _tag keys_, _tag values_, -_field key_, and _timestamp_. - -In a [series](#series), each point has a unique timestamp. -If you write a point to a series with a timestamp that matches an existing point, -the field set becomes a union of the old and new field set, where any ties go to -the new field set. - -Related entries: -[measurement](#measurement), -[tag set](#tag-set), -[field set](#field-set), -[timestamp](#timestamp) - -### primary key - -With the InfluxDB 3 storage engine, the primary key is the list of columns -used to uniquely identify each row in a table. -Rows are uniquely identified by their timestamp and tag set. -A row's primary key tag set does not include tags with null values. - -### precision - -The precision configuration setting determines the timestamp precision retained -for input data points. -All incoming timestamps are truncated to the specified precision. -Valid precisions are `ns`, `us` or `µs`, `ms`, and `s`. - -In Telegraf, truncated timestamps are padded with zeros to create a nanosecond timestamp. -Telegraf output plugins emit timestamps in nanoseconds. -For example, if the precision is set to `ms`, the nanosecond epoch timestamp `1480000000123456789` is truncated to `1480000000123` in millisecond precision and padded with zeroes to make a new, less precise nanosecond timestamp of `1480000000123000000`. -Telegraf output plugins do not alter the timestamp further. -The precision setting is ignored for service input plugins. - -Related entries: -[aggregator plugin](#aggregator-plugin), -[input plugin](#input-plugin), -[output plugin](#output-plugin), -[processor plugin](#processor-plugin), -[service input plugin](#service-input-plugin) - -### predicate expression - -A predicate expression compares two values and returns `true` or `false` based on -the relationship between the two values. -A predicate expression is comprised of a left operand, a comparison operator, and a right operand. - -### process - -A set of predetermined rules. -A process can refer to instructions being executed by the computer processor or -refer to the act of manipulating data. - -### processor plugin - -Telegraf processor plugins transform, decorate, and filter metrics collected by -input plugins, passing the transformed metrics to the output plugins. - -Related entries: -[aggregator plugin](#aggregator-plugin), -[input plugin](#input-plugin), -[output plugin](#output-plugin) - -### Prometheus format - -A simple text-based format for exposing metrics and ingesting them into Prometheus. - -## Q - -### query - -A request for information. -An InfluxDB query returns time series data. - -See [Query data in InfluxDB](/influxdb3/clustered/query-data/). - -### query plan - -A sequence of steps (_nodes_) that the InfluxDB Querier devises and executes to calculate the result of the query in the least amount of time. -A _logical plan_ is a high level representation of a query and doesn't consider cluster configuration or data organization. -A _physical plan_ represents the query execution plan and data flow through plan nodes that read (_scan_), deduplicate, merge, filter, and sort data. -A physical plan is optimized for the cluster configuration and data organization. - -See [Query plans](/influxdb3/clustered/reference/internals/query-plans/). - -## R - -### REPL - -A Read-Eval-Print Loop (REPL) is an interactive programming environment where -you type a command and immediately see the result. - -### regular expressions - -Regular expressions (regex or regexp) are patterns used to match character -combinations in strings. - -### rejected points - -In a batch of data, points that InfluxDB couldn't write to a database. -Field type conflicts are a common cause of rejected points. - -### retention period - -The [duration](#duration) of time that a database retains data. -InfluxDB drops points with timestamps older than their database's retention period -relative to [now](#now). -The minimum retention period is **one hour**. - -Related entries: -[bucket](#bucket) - -### retention policy (RP) - -A retention policy is part of the InfluxDB 1.x data model that describes how long -InfluxDB keeps data (duration), how many copies of the data to store when in a -in the cluster (replication factor), and the time range covered by shard groups -(shard group duration). RPs are unique per database and along with the measurement -and tag set define a series. - -In {{< product-name >}}, the equivalent is [retention period](#retention-period), -however retention periods are not part of the data model. -The retention period describes the data persistence behavior of a database. - -Related entries: -[retention period](#retention-period), - -### RFC3339 timestamp - -A timestamp that uses the human-readable DateTime format proposed in -[RFC 3339](https://tools.ietf.org/html/rfc3339) (for example: `2020-01-01T00:00:00.00Z`). - -Related entries: -[RFC3339Nano timestamp](#rfc3339nano-timestamp), -[timestamp](#timestamp), -[unix timestamp](#unix-timestamp) - -### RFC3339Nano timestamp - -A [Golang representation of the RFC 3339 DateTime format](https://go.dev/src/time/format.go) -that uses nanosecond resolution--for example: -`2006-01-02T15:04:05.999999999Z07:00`. - -InfluxDB clients can return RFC3339Nano timestamps in log events and CSV-formatted -query results. - -Related entries: -[RFC3339 timestamp](#rfc3339-timestamp), -[timestamp](#timestamp), -[unix timestamp](#unix-timestamp) - -### row - -A row in a [table](#table) represents a specific record or instance of data. -[Column](#column) values in a row represent specific attributes or properties of the instance. -Each row has a [primary key](/#primary-key) that makes the row unique from other rows in the table. - -Related entries: -[column](#column), -[primary key](#primary-key), -[series](#series), -[table](#table) - -## S - -### schema - -How data is organized in InfluxDB. -The fundamentals of the InfluxDB schema are databases, measurements, -tag keys, tag values, and field keys. - -Related entries: -[bucket](#bucket), -[field key](#field-key), -[measurement](#measurement), -[series](#series), -[tag key](#tag-key), -[tag value](#tag-value) - -### secret - -Secrets are key-value pairs that contain information you want to control access -to, such as API keys, passwords, or certificates. - -### selector - -A function that returns a single point from the range of specified points. -See [SQL selector functions](/influxdb3/clustered/reference/sql/functions/selector/) -for a complete list of available SQL selector functions. - -Related entries: -[aggregate](#aggregate), -[function](#function), -[transformation](#transformation) - -### series - -In the InfluxDB 3 data structure, a collection of data that share a common -_measurement_ and _tag set_. - -Related entries: -[field set](#field-set), -[measurement](#measurement), -[tag set](#tag-set) - -### series cardinality - -The number of unique measurement (table), tag set, and field key combinations in an InfluxDB database. - -For example, assume that an InfluxDB database has one measurement. -The single measurement has two tag keys: `email` and `status`. -If there are three different `email` tag values, -and each email address is associated with two -different `status` tag values, then the series cardinality for the measurement is 6 -(3 × 2 = 6): - -| email | status | -| :-------------------- | :----- | -| lorr@influxdata.com | start | -| lorr@influxdata.com | finish | -| marv@influxdata.com | start | -| marv@influxdata.com | finish | -| cliff@influxdata.com | start | -| cliff@influxdata.com | finish | - -In some cases, performing this multiplication may overestimate series cardinality -because of the presence of dependent tags. -Dependent tags are scoped by another tag and do not increase series cardinality. -If we add the tag `firstname` to the preceding example, the series cardinality -would not be 18 (3 × 2 × 3 = 18). -The series cardinality would remain unchanged at 6, as `firstname` is already scoped by the `email` tag: - -| email | status | firstname | -| :------------------- | :----- | :-------- | -| lorr@influxdata.com | start | lorraine | -| lorr@influxdata.com | finish | lorraine | -| marv@influxdata.com | start | marvin | -| marv@influxdata.com | finish | marvin | -| cliff@influxdata.com | start | clifford | -| cliff@influxdata.com | finish | clifford | - -Related entries: -[field key](#field-key), -[measurement](#measurement), -[tag key](#tag-key), -[tag set](#tag-set) - -### series key - -A series key identifies a particular series by measurement, tag set, and field key. - -For example: - -```text -# measurement, tag set, field key -h2o_level, location=santa_monica, h2o_feet -``` - -Related entries: -[series](#series) - -### server - -A computer, virtual or physical, running InfluxDB. - - -### service input plugin - -Telegraf input plugins that run in a passive collection mode while the Telegraf agent is running. -Service input plugins listen on a socket for known protocol inputs, or apply -their own logic to ingested metrics before delivering metrics to the Telegraf agent. - -Related entries: -[aggregator plugin](#aggregator-plugin), -[input plugin](#input-plugin), -[output plugin](#output-plugin), -[processor plugin](#processor-plugin) - -### string - -A data type used to represent text. - -## T - -### TCP - -Transmission Control Protocol. - -### table - -A collection of related data organized in a structured way with a predefined set -of columns and data types. -Each row in the table represents a specific record or instance of the data, and -each column represents a specific attribute or property of the data. - -In InfluxDB Clustered, a table represents a measurement. - -Related entries: -[column](#column), -[measurement](#measurement), -[primary key](#primary-key), -[row](#row) - -### tag - -The key-value pair in InfluxDB's data structure that records metadata. -Tags are an optional part of InfluxDB's data structure but they are useful for -storing commonly queried metadata. - -Related entries: -[field](#field), -[tag key](#tag-key), -[tag set](#tag-set), -[tag value](#tag-value) - -### tag key - -The key of a tag key-value pair. -Tag keys are strings and store metadata. - -Related entries: -[field key](#field-key), -[tag](#tag), -[tag set](#tag-set), -[tag value](#tag-value) - -### tag set - -The collection of tag keys and tag values on a point. - -Related entries: -[point](#point), -[primary key](#primary-key), -[series](#series), -[tag](#tag), -[tag key](#tag-key), -[tag value](#tag-value) - -### tag value - -The value of a tag key-value pair. -Tag values are strings and they store metadata. - -Related entries: -[tag](#tag), -[tag key](#tag-key), -[tag set](#tag-set) - -### Telegraf - -A plugin-driven agent that collects, processes, aggregates, and writes metrics. - -Related entries: -[Telegraf plugins](/telegraf/v1/plugins/), -[Use Telegraf to collect data](/influxdb3/clustered/write-data/use-telegraf/), - -### time (data type) - -A data type that represents a single point in time with nanosecond precision. - -### time series data - -Sequence of data points typically consisting of successive measurements made -from the same source over a time interval. -Time series data shows how data evolves over time. -On a time series data graph, one of the axes is always time. -Time series data may be regular or irregular. -Regular time series data changes in constant intervals. -Irregular time series data changes at non-constant intervals. - -### timestamp - -The date and time associated with a point. -Time in InfluxDB is in UTC. - -To specify time when writing data, see -[Elements of line protocol](/influxdb3/clustered/reference/syntax/line-protocol/#elements-of-line-protocol). - -Related entries: -[point](#point), -[unix timestamp](#unix-timestamp), -[RFC3339 timestamp](#rfc3339-timestamp) - -### token - -Tokens provide authorization to perform specific actions in InfluxDB. -There are different types of API tokens: - -- **Database token:** Grants read and write access to a database. -- **Management token:** A short-lived token that grants clients administrative - access to your InfluxDB cluster. - -Related entries: -[Manage token](/influxdb3/clustered/admin/tokens/) - -### transformation - -Data transformation refers to the process of converting or modifying input data from one format, value, or structure to another. - -InfluxQL [transformation functions](/influxdb3/clustered/reference/influxql/functions/transformations/) modify and return values in each row of queried data, but do not return an aggregated value across those rows. - -Related entries: [aggregate](#aggregate), [function](#function), [selector](#selector) - -### TSM (Time Structured Merge tree) - -The InfluxDB v1 and v2 data storage format that allows greater compaction and -higher write and read throughput than B+ or LSM tree implementations. -The TSM storage engine has been replaced by the [InfluxDB 3 storage engine (IOx)](#iox). - -Related entries: -[IOx](#iox) - -## U - -### UDP - -User Datagram Protocol is a packet of information. -When a request is made, a UDP packet is sent to the recipient. -The sender doesn't verify the packet is received. -The sender continues to send the next packets. -This means computers can communicate more quickly. -This protocol is used when speed is desirable and error correction is not necessary. - -### unix epoch - -The date and time from which Unix system times are measured. -The Unix epoch is `1970-01-01T00:00:00Z`. - -### unix timestamp - -Counts time since **Unix Epoch (1970-01-01T00:00:00Z UTC)** in specified units ([precision](#precision)). -Specify timestamp precision when [writing data to InfluxDB](/influxdb3/clustered/write-data/). -InfluxDB supports the following unix timestamp precisions: - -| Precision | Description | Example | -|:--------- |:----------- |:------- | -| `ns` | Nanoseconds | `1577836800000000000` | -| `us` | Microseconds | `1577836800000000` | -| `ms` | Milliseconds | `1577836800000` | -| `s` | Seconds | `1577836800` | - -

    The examples above represent 2020-01-01T00:00:00Z UTC.

    - -Related entries: -[timestamp](#timestamp), -[RFC3339 timestamp](#rfc3339-timestamp) - -### unsigned integer - -A whole number that is positive or zero (`0`, `143`). Also known as a "uinteger." -InfluxDB supports 64-bit unsigned integers (minimum: `0`, maximum: `18446744073709551615`). - -Related entries: -[integer](#integer) - -### user - -InfluxDB users are granted permission to access to InfluxDB. - -## V - -### values per second - -The preferred measurement of the rate at which data is persisted to InfluxDB. -Write speeds are generally quoted in values per second. - -To calculate the values per second rate, multiply the number of points written -per second by the number of values stored per point. -For example, if the points have four fields each, and a batch of 5000 points is -written 10 times per second, the values per second rate is: - -**4 field values per point** × **5000 points per batch** × **10 batches per second** = **200,000 values per second** - -Related entries: -[batch](#batch), -[field](#field), -[point](#point) - -### variable - -A storage location (identified by a memory address) paired with an associated -symbolic name (an identifier). -A variable contains some known or unknown quantity of information referred to as a value. - -### variable assignment - -A statement that sets or updates the value stored in a variable. - -## W - -### WAL (Write-Ahead Log) - -The temporary cache for recently written points. -To reduce the frequency that permanent storage files are accessed, InfluxDB -caches new points in the WAL until their total size or age triggers a flush to -more permanent storage. This allows for efficient batching of the writes into -the storage engine. - -Points in the WAL are queryable and persist through a system reboot. -On process start, all points in the WAL must be flushed before the system -accepts new writes. - -### windowing - -Grouping data based on specified time intervals. -This is also referred to as "time binning" or "date binning." + From 92a105907ba4c5c8b9d33070f811112412cd411e Mon Sep 17 00:00:00 2001 From: Jason Stirnaman Date: Tue, 15 Apr 2025 15:15:45 -0500 Subject: [PATCH 36/44] chore(influxdb3): Cloud Dedicated: use shared glossary file --- .../cloud-dedicated/reference/glossary.md | 1142 +---------------- 1 file changed, 4 insertions(+), 1138 deletions(-) diff --git a/content/influxdb3/cloud-dedicated/reference/glossary.md b/content/influxdb3/cloud-dedicated/reference/glossary.md index 35c717f18..b30476260 100644 --- a/content/influxdb3/cloud-dedicated/reference/glossary.md +++ b/content/influxdb3/cloud-dedicated/reference/glossary.md @@ -7,1143 +7,9 @@ menu: influxdb3_cloud_dedicated: parent: Reference influxdb3/cloud-dedicated/tags: [glossary] +source: /shared/influxdb3-reference/glossary.md --- -[A](#a) | [B](#b) | [C](#c) | [D](#d) | [E](#e) | [F](#f) | [G](#g) | [H](#h) | [I](#i) | [J](#j) | [K](#k) | [L](#l) | [M](#m) | [N](#n) | [O](#o) | [P](#p) | [Q](#q) | [R](#r) | [S](#s) | [T](#t) | [U](#u) | [V](#v) | [W](#w) | X | Y | Z - -## A - -### abstract syntax tree (AST) - -Tree representation of source code that shows the structure, content, and rules -of programming statements and discards additional syntax elements. -The tree is hierarchical, with elements of program statements broken down into their parts. - -For more information about AST design, see [Abstract Syntax Tree on Wikipedia](https://en.wikipedia.org/wiki/Abstract_syntax_tree). - -### agent - -A background process started by (or on behalf of) a user that typically requires user input. - -[Telegraf](/telegraf/v1/) is an agent that requires user input -(a configuration file) to gather metrics from declared input plugins and sends -metrics to declared output plugins, based on the plugins enabled for a configuration. - -Related entries: -[input plugin](#input-plugin), -[output plugin](#output-plugin), -[daemon](#daemon) - -### aggregator plugin - -Receives metrics from input plugins, creates aggregate metrics, and then passes aggregate metrics to configured output plugins. - -Related entries: -[input plugin](#input-plugin), -[output plugin](#output-plugin), -[processor plugin](#processor-plugin) - -### aggregate - -A function that returns an aggregated value across a set of points. -For a list of available aggregation functions, -see [SQL aggregate functions](/influxdb3/cloud-dedicated/reference/sql/functions/aggregate/). - - - -Related entries: -[function](#function), -[selector](#selector) - -### API - -Application programming interface that facilitates and standardizes communication -between two or more computer programs. - -### argument - -A value passed to a function or command that determines how the process operates. - -Related entries: -[parameter](#parameter) - -## B - -### batch - -A collection of points in line protocol format, separated by newlines (`0x0A`). -Submitting a batch of points using a single HTTP request to the write endpoints -drastically increases performance by reducing the HTTP overhead. -InfluxData typically recommends batch sizes of 5,000-10,000 points. -In some use cases, performance may improve with significantly smaller or larger batches. - -Related entries: -[line protocol](#line-protocol-lp), -[point](#point) - -### batch size - -The number of lines or individual data points in a line protocol batch. -The Telegraf agent sends metrics to output plugins in batches rather than individually. -Batch size controls the size of each write batch that Telegraf sends to the output plugins. - -Related entries: -[output plugin](#output-plugin) - -### bin - -In a cumulative histogram, a bin includes all data points less than or equal to a specified upper bound. -In a normal histogram, a bin includes all data points between the upper and lower bounds. -Histogram bins are also sometimes referred to as "buckets." - -### boolean - -A data type with two possible values: true or false. -By convention, you can express `true` as the integer `1` and false as the integer `0` (zero). - -### bucket - -"Bucket" is the term used in InfluxDB 2.x and _InfluxDB Cloud Serverless_ to refer -to a named location where time series data is stored. -Bucket is synonymous with "database" when using InfluxDB Cloud Dedicated. - -Related entries: -[database](#database) - -## C - -### CSV - -Comma-separated values (CSV) delimits text between commas to separate values. -A CSV file stores tabular data (numbers and text) in plain text. -Each line of the file is a data row. -Each row consists of one or more columns, separated by commas. -CSV file format is not fully standardized. - -### cardinality - -Cardinality is the number of unique values in a set. -Series cardinality is the number of unique [series](#series) in a database as a whole. -With the InfluxDB 3 storage engine, high series cardinality _does not_ affect performance. - -### cluster - -A collection of servers or processes that work together as a single unit. -An InfluxDB Cloud Dedicated cluster is a collection of InfluxDB servers dedicated -to the workload of a single customer. - -### collect - -Collect and write time series data to InfluxDB using line protocol, Telegraf, -the InfluxDB v1 and v2 HTTP APIs, v1 and v2 `influx` command line interface (CLI), -and InfluxDB client libraries. - -### collection interval - -The default global interval for collecting data from each Telegraf input plugin. -The collection interval can be overridden by each individual input plugin's configuration. - -Related entries: -[input plugin](#input-plugin) - -### collection jitter - -Collection jitter prevents every input plugin from collecting metrics simultaneously, -which can have a measurable effect on the system. -For each collection interval, every Telegraf input plugin will sleep for a random -time between zero and the collection jitter before collecting the metrics. - -Related entries: -[collection interval](#collection-interval), -[input plugin](#input-plugin) - -### column - -InfluxDB data is stored in tables within rows and columns. -Columns store tag sets and fields sets, and time values. -The only required column is _time_, which stores timestamps and is included -in all InfluxDB tables. - -### common log format (CLF) - -A standardized text file format used by the InfluxDB server to create log -entries when generating server log files. - -### compaction - -Compressing time series data to optimize disk usage. - -### continuous query (CQ) - -Continuous queries are a feature of InfluxDB 1.x used to regularly downsample -or process time series data. - -## D - -### daemon - -A background process that runs without user input. - -### dashboard - -A collection of data visualizations used to query and display time series data. -There a many tools designed specifically to create dashboards including -[Grafana](https://grafana.com), [Apache Superset](https://superset.apache.org/), -[Tableau](https://www.tableau.com/), and others. - - - -### data model - -A data model organizes elements of data and standardizes how they relate to one -another and to properties of the real world entities. - -For information about the InfluxDB data model, see -[InfluxDB data organization](/influxdb3/cloud-dedicated/get-started/#data-organization) - -### data service - -Stores time series data and handles writes and queries. - -### data source - -A source of data that InfluxDB collects or queries data from. - -Related entries: -[database](#database) - -### data type - -A data type is defined by the values it can take, the programming language used, -or the operations that can be performed on it. - -InfluxDB supports the following data types: - -- string -- boolean -- float (64-bit) -- integer (64-bit) -- unsigned integer (64-bit) -- time - -For more information about different data types, see: - -- [line protocol](/influxdb/v2/reference/syntax/line-protocol/#data-types-and-format) -- [InfluxQL](/influxdb/v1/query_language/spec/#literals) -- [InfluxDB](/influxdb/v2/reference/syntax/line-protocol/#data-types-and-format) - -#### database - -A named location where time series data is stored. - -In InfluxDB 1.x, a database represented a logical container for users, retention -policies, continuous queries, and time series data. -In InfluxDB 2.x, the equivalent of this concept is an InfluxDB [bucket](#bucket). - -Related entries: -[bucket](#bucket), -[retention policy](#retention-policy-rp) - -### date-time - -InfluxDB stores the date-time format for each data point in a timestamp with -nanosecond-precision Unix time. -Specifying a timestamp is optional. -If a timestamp isn't specified for a data point, InfluxDB uses the server’s -local nanosecond timestamp in UTC. - -### downsample - -Aggregating high resolution data into lower resolution data to preserve disk space. - -### duration - -A data type that represents a duration of time--for example, `1s`, `1m`, `1h`, `1d`. -Retention periods are set using durations. - -Related entries: -[retention period](#retention-period) - -## E - -### event - -Metrics gathered at irregular time intervals. - -### expression - -A combination of one or more constants, variables, operators, and functions. - -In the following SQL example, `now() - INTERVAL '7 days'` is an expression that calculates the difference between the `now()` function expression and the duration represented by `INTERVAL '7 days`: - -```sql -SELECT * -FROM home -WHERE - time >= now() - INTERVAL '7 days' -``` - -## F - -### field - -A key-value pair in InfluxDB's data structure that records a data value. -Generally, field values change over time. -Fields are required in InfluxDB's data structure. - -Related entries: -[field key](#field-key), -[field set](#field-set), -[field value](#field-value), -[tag](#tag) - -### field key - -The key of the key-value pair. -Field keys are strings. - -Related entries: -[field](#field), -[field set](#field-set), -[field value](#field-value), -[tag key](#tag-key) - -### field set - -The collection of field key-value pairs. - -Related entries: -[field](#field), -[field key](#field-key), -[field value](#field-value), -[point](#point) - -### field value - -The value of a key-value pair. -Field values are the actual data; they can be strings, floats, integers, unsigned integers or booleans. -A field value is always associated with a timestamp. - -Related entries: -[field](#field), -[field key](#field-key), -[field set](#field-set), -[tag set](#tag-set), -[tag value](#tag-value), -[timestamp](#timestamp) - -### file block - -A file block is a fixed-length chunk of data read into memory when requested by an application. - -### float - -A real number written with a decimal point dividing the integer and fractional parts (`1.0`, `3.14`, `-20.1`). -InfluxDB supports 64-bit float values. - -### flush interval - -The global interval for flushing data from each Telegraf output plugin to its destination. -This value should not be set lower than the collection interval. - -Related entries: -[collection interval](#collection-interval), -[flush jitter](#flush-jitter), -[output plugin](#output-plugin) - -### flush jitter - -Flush jitter prevents every Telegraf output plugin from sending writes -simultaneously, which can overwhelm some data sinks. -Each flush interval, every Telegraf output plugin sleeps for a random time -between zero and the flush jitter before emitting metrics. -Flush jitter smooths out write spikes when running a large number of Telegraf instances. - -Related entries: -[flush interval](#flush-interval), -[output plugin](#output-plugin) - -### function - -A function is an operation that performs a specific task. -Functions take input, operate on that input, and then return output. -For a complete list of available SQL functions, see -[SQL functions](/influxdb3/cloud-dedicated/reference/sql/functions/). - - - -Related entries: -[aggregate](#aggregate), -[selector](#selector) - -## G - -### gzip - -gzip is a type of data compression that compress chunks of data, which is -restored by unzipping compressed gzip files. -The gzip file extension is `.gz`. - -## H - -### histogram - -A visual representation of statistical information that uses rectangles to show -the frequency of data items in successive, equal intervals or bins. - -## I - -### identifier - -Identifiers are tokens that refer to specific database objects such as database -names, field keys, measurement names, tag keys, etc. - -Related entries: -[database](#database), -[field key](#field-key), -[measurement](#measurement), -[tag key](#tag-key) - -### influx - -`influx` is a command line interface (CLI) that interacts with the InfluxDB v1.x and v2.x server. - -### influxctl - -[`influxctl`](/influxdb3/cloud-dedicated/reference/cli/influxctl/) is a CLI that -performs [administrative tasks](/influxdb3/cloud-dedicated/admin/) for an -InfluxDB Cloud dedicated cluster. - -### influxd - -`influxd` is the InfluxDB OSS v1.x and v2.x daemon that runs the InfluxDB server -and other required processes. - -### InfluxDB - -An open source time series database (TSDB) developed by InfluxData, optimized for fast, high-availability storage and retrieval of -time series data in fields such as operations monitoring, application metrics, -Internet of Things sensor data, and real-time analytics. - -### InfluxQL - -The SQL-like query language used to query data in InfluxDB. - -### input plugin - -Telegraf input plugins actively gather metrics and deliver them to the core agent, -where aggregator, processor, and output plugins can operate on the metrics. -To activate an input plugin, enable and configure it in the -Telegraf configuration file. - -Related entries: -[aggregator plugin](#aggregator-plugin), -[collection interval](#collection-interval), -[output plugin](#output-plugin), -[processor plugin](#processor-plugin) - -### instance - -An entity comprising data on a server (or virtual server in cloud computing). - - -### integer - -A whole number that is positive, negative, or zero (`0`, `-5`, `143`). -InfluxDB supports 64-bit integers (minimum: `-9223372036854775808`, maximum: `9223372036854775807`). - -Related entries: -[unsigned integer](#unsigned-integer) - -### IOx - -The IOx storage engine (InfluxDB 3 storage engine) is a real-time, columnar -database optimized for time series data built in Rust on top of -[Apache Arrow](https://arrow.apache.org/) and -[DataFusion](https://arrow.apache.org/datafusion/user-guide/introduction.html). -IOx replaces the [TSM (Time Structured Merge tree)](#tsm-time-structured-merge-tree) storage engine. - -## J - -### JWT - -Typically, JSON web tokens (JWT) are used to authenticate users between an -identity provider and a service provider. -A server can generate a JWT to assert any business processes. -For example, an "admin" token sent to a client can prove the client is logged in as admin. -Tokens are signed by one party's private key (typically, the server). -Private keys are used by both parties to verify that a token is legitimate. - -JWT uses an open standard specified in [RFC 7519](https://tools.ietf.org/html/rfc7519). - -### Jaeger - -Open source tracing used in distributed systems to monitor and troubleshoot transactions. - -### JSON - -JavaScript Object Notation (JSON) is an open-standard file format that uses -human-readable text to transmit data objects consisting of attribute–value pairs -and array data types. - -## K - -### keyword - -A keyword is reserved by a program because it has special meaning. -Every programming language has a set of keywords (reserved names) that cannot be used as identifiers--for example, -you can't use `SELECT` (an SQL keyword) as a variable name in an SQL query. - -See keyword lists: - -- [SQL keywords](/influxdb3/cloud-dedicated/reference/sql/#keywords) -- [InfluxQL keywords](/influxdb3/cloud-dedicated/reference/influxql/#keywords) - -## L - -### literal - -A literal is value in an expression, a number, character, string, function, record, or array. -Literal values are interpreted as defined. - -### load balancing - -Improves workload distribution across multiple computing resources in a network. -Load balancing optimizes resource use, maximizes throughput, minimizes response -time, and avoids overloading a single resource. -Using multiple components with load balancing instead of a single component may -increase reliability and availability. -If requests to any server in a network increase, requests are forwarded to -another server with more capacity. -Load balancing can also refer to the communications channels themselves. - -### logs - -Logs record information. -Event logs describe system events and activity that help to describe and diagnose problems. -Transaction logs describe changes to stored data that help recover data if a -database crashes or other errors occur. - -### line protocol (LP) - -The text based format for writing points to InfluxDB. -See [line protocol](/influxdb3/cloud-dedicated/reference/syntax/line-protocol/). - -## M - -### measurement - -The part of InfluxDB's data structure that describes the data stored in associated fields. -Measurements are strings. - -Related entries: -[field](#field), [series](#series) - -### metric - -Data tracked over time. - -### metric buffer - -The metric buffer caches individual metrics when writes are failing for an Telegraf output plugin. -Telegraf will attempt to flush the buffer upon a successful write to the output. -The oldest metrics are dropped first when this buffer fills. - -Related entries: -[output plugin](#output-plugin) - -### missing values - -Denoted by a null value. -Identifies missing information, which may be useful to include in an error message. - -## N - -### node - -An independent process or server in a cluster. - -Related entries: -[cluster](#cluster), -[server](#server) - -### now - -The local server's nanosecond timestamp. - -### null - -A data type that represents a missing or unknown value. -Denoted by the `null` value. -Values of [tags](#tag) and [fields](#field) may be `null`, but timestamp values are never `null`. - -## O - -### operator - -A symbol that usually represents an action or process. -For example: `+`, `-`, `>`. - -Related entries: -[operand](#operand) - -### operand - -The object or value on either side of an [operator](#operator). - -Related entries: -[operator](#operator) - -### organization - -An InfluxDB v2 concept that describes workspace for a group of users. -All InfluxDB v2 dashboards, tasks, buckets, members, and so on, belong to an organization. -Organizations are not part of InfluxDB Cloud Dedicated. - -### owner - -A type of role for a user. -Owners have read/write permissions. -Users can have owner roles for databases and other resources. - -Role permissions are separate from API token permissions. For additional -information on API tokens, see [token](#token). - -### output plugin - -Telegraf output plugins deliver metrics to their configured destination. -To activate an output plugin, enable and configure the plugin in Telegraf's configuration file. - -Related entries: -[aggregator plugin](#aggregator-plugin), -[flush interval](#flush-interval), -[input plugin](#input-plugin), -[processor plugin](#processor-plugin) - -## P - -### parameter - -A key-value pair used to pass information to a function that determines how the -function operates. - -Related entries: -[argument](#argument) - -### pipe - -Method for passing information from one process to another. -For example, an output parameter from one process is input to another process. -Information passed through a pipe is retained until the receiving process reads the information. - -### point - -Single data record identified by its _measurement_, _tag keys_, _tag values_, -_field key_, and _timestamp_. - -In a [series](#series), each point has a unique timestamp. -If you write a point to a series with a timestamp that matches an existing point, -the field set becomes a union of the old and new field set, where any ties go to -the new field set. - -Related entries: -[measurement](#measurement), -[tag set](#tag-set), -[field set](#field-set), -[timestamp](#timestamp) - -### primary key - -With the InfluxDB IOx storage engine, the primary key is the list of columns -used to uniquely identify each row in a table. -Rows are uniquely identified by their timestamp and tag set. -A row's primary key tag set does not include tags with null values. - -### precision - -The precision configuration setting determines the timestamp precision retained -for input data points. -All incoming timestamps are truncated to the specified precision. -Valid precisions are `ns`, `us` or `µs`, `ms`, and `s`. - -In Telegraf, truncated timestamps are padded with zeros to create a nanosecond timestamp. -Telegraf output plugins emit timestamps in nanoseconds. -For example, if the precision is set to `ms`, the nanosecond epoch timestamp `1480000000123456789` is truncated to `1480000000123` in millisecond precision and padded with zeroes to make a new, less precise nanosecond timestamp of `1480000000123000000`. -Telegraf output plugins do not alter the timestamp further. -The precision setting is ignored for service input plugins. - -Related entries: -[aggregator plugin](#aggregator-plugin), -[input plugin](#input-plugin), -[output plugin](#output-plugin), -[processor plugin](#processor-plugin), -[service input plugin](#service-input-plugin) - -### predicate expression - -A predicate expression compares two values and returns `true` or `false` based on -the relationship between the two values. -A predicate expression is comprised of a left operand, a comparison operator, and a right operand. - -### process - -A set of predetermined rules. -A process can refer to instructions being executed by the computer processor or -refer to the act of manipulating data. - -### processor plugin - -Telegraf processor plugins transform, decorate, and filter metrics collected by -input plugins, passing the transformed metrics to the output plugins. - -Related entries: -[aggregator plugin](#aggregator-plugin), -[input plugin](#input-plugin), -[output plugin](#output-plugin) - -### Prometheus format - -A simple text-based format for exposing metrics and ingesting them into Prometheus. - -## Q - -### query - -A request for information. -An InfluxDB query returns time series data. - -See [Query data in InfluxDB](/influxdb3/cloud-dedicated/query-data/). - -### query plan - -A sequence of steps (_nodes_) that the InfluxDB Querier devises and executes to calculate the result of the query in the least amount of time. -A _logical plan_ is a high level representation of a query and doesn't consider cluster configuration or data organization. -A _physical plan_ represents the query execution plan and data flow through plan nodes that read (_scan_), deduplicate, merge, filter, and sort data. -A physical plan is optimized for the cluster configuration and data organization. - -See [Query plans](/influxdb3/cloud-dedicated/reference/internals/query-plans/). - -## R - -### REPL - -A Read-Eval-Print Loop (REPL) is an interactive programming environment where -you type a command and immediately see the result. - -### regular expressions - -Regular expressions (regex or regexp) are patterns used to match character -combinations in strings. - -### rejected points - -In a batch of data, points that InfluxDB couldn't write to a database. -Field type conflicts are a common cause of rejected points. - -### retention period - -The [duration](#duration) of time that a database retains data. -InfluxDB drops points with timestamps older than their database's retention period -relative to [now](#now). -The minimum retention period is **one hour**. - -Related entries: -[bucket](#bucket) - -### retention policy (RP) - -A retention policy is part of the InfluxDB 1.x data model that describes how long -InfluxDB keeps data (duration), how many copies of the data to store when in a -in the cluster (replication factor), and the time range covered by shard groups -(shard group duration). RPs are unique per database and along with the measurement -and tag set define a series. - -In {{< product-name >}}, the equivalent is [retention period](#retention-period), -however retention periods are not part of the data model. -The retention period describes the data persistence behavior of a database. - -Related entries: -[retention period](#retention-period), - -### RFC3339 timestamp - -A timestamp that uses the human-readable DateTime format proposed in -[RFC 3339](https://tools.ietf.org/html/rfc3339) (for example: `2020-01-01T00:00:00.00Z`). - -Related entries: -[RFC3339Nano timestamp](#rfc3339nano-timestamp), -[timestamp](#timestamp), -[unix timestamp](#unix-timestamp) - -### RFC3339Nano timestamp - -A [Golang representation of the RFC 3339 DateTime format](https://go.dev/src/time/format.go) -that uses nanosecond resolution--for example: -`2006-01-02T15:04:05.999999999Z07:00`. - -InfluxDB clients can return RFC3339Nano timestamps in log events and CSV-formatted -query results. - -Related entries: -[RFC3339 timestamp](#rfc3339-timestamp), -[timestamp](#timestamp), -[unix timestamp](#unix-timestamp) - -### row - -A row in a [table](#table) represents a specific record or instance of data. -[Column](#column) values in a row represent specific attributes or properties of the instance. -Each row has a [primary key](/#primary-key) that makes the row unique from other rows in the table. - -Related entries: -[column](#column), -[primary key](#primary-key), -[series](#series), -[table](#table) - -## S - -### schema - -How data is organized in InfluxDB. -The fundamentals of the InfluxDB schema are databases, measurements, -tag keys, tag values, and field keys. - -Related entries: -[bucket](#bucket), -[field key](#field-key), -[measurement](#measurement), -[series](#series), -[tag key](#tag-key), -[tag value](#tag-value) - -### secret - -Secrets are key-value pairs that contain information you want to control access -to, such as API keys, passwords, or certificates. - -### selector - -A function that returns a single point from the range of specified points. -See [SQL selector functions](/influxdb3/cloud-dedicated/reference/sql/functions/selector/) -for a complete list of available SQL selector functions. - -Related entries: -[aggregate](#aggregate), -[function](#function), -[transformation](#transformation) - -### series - -In the InfluxDB 3 data structure, a collection of data that share a common -_measurement_ and _tag set_. - -Related entries: -[field set](#field-set), -[measurement](#measurement), -[tag set](#tag-set) - -### series cardinality - -The number of unique measurement (table), tag set, and field key combinations in an InfluxDB database. - -For example, assume that an InfluxDB database has one measurement. -The single measurement has two tag keys: `email` and `status`. -If there are three different `email` tag values, -and each email address is associated with two -different `status` tag values, then the series cardinality for the measurement is 6 -(3 × 2 = 6): - -| email | status | -| :-------------------- | :----- | -| lorr@influxdata.com | start | -| lorr@influxdata.com | finish | -| marv@influxdata.com | start | -| marv@influxdata.com | finish | -| cliff@influxdata.com | start | -| cliff@influxdata.com | finish | - -In some cases, performing this multiplication may overestimate series cardinality -because of the presence of dependent tags. -Dependent tags are scoped by another tag and do not increase series cardinality. -If we add the tag `firstname` to the preceding example, the series cardinality -would not be 18 (3 × 2 × 3 = 18). -The series cardinality would remain unchanged at 6, as `firstname` is already scoped by the `email` tag: - -| email | status | firstname | -| :------------------- | :----- | :-------- | -| lorr@influxdata.com | start | lorraine | -| lorr@influxdata.com | finish | lorraine | -| marv@influxdata.com | start | marvin | -| marv@influxdata.com | finish | marvin | -| cliff@influxdata.com | start | clifford | -| cliff@influxdata.com | finish | clifford | - -Related entries: -[field key](#field-key), -[measurement](#measurement), -[tag key](#tag-key), -[tag set](#tag-set) - -### series key - -A series key identifies a particular series by measurement, tag set, and field key. - -For example: - -```text -# measurement, tag set, field key -h2o_level, location=santa_monica, h2o_feet -``` - -Related entries: -[series](#series) - -### server - -A computer, virtual or physical, running InfluxDB. - - -### service input plugin - -Telegraf input plugins that run in a passive collection mode while the Telegraf agent is running. -Service input plugins listen on a socket for known protocol inputs, or apply -their own logic to ingested metrics before delivering metrics to the Telegraf agent. - -Related entries: -[aggregator plugin](#aggregator-plugin), -[input plugin](#input-plugin), -[output plugin](#output-plugin), -[processor plugin](#processor-plugin) - -### string - -A data type used to represent text. - -## T - -### TCP - -Transmission Control Protocol. - -### table - -A collection of related data organized in a structured way with a predefined set -of columns and data types. -Each row in the table represents a specific record or instance of the data, and -each column represents a specific attribute or property of the data. - -In InfluxDB Cloud Dedicated, a table represents a measurement. - -Related entries: -[column](#column), -[measurement](#measurement), -[primary key](#primary-key), -[row](#row) - -### tag - -The key-value pair in InfluxDB's data structure that records metadata. -Tags are an optional part of InfluxDB's data structure but they are useful for -storing commonly queried metadata. - -Related entries: -[field](#field), -[tag key](#tag-key), -[tag set](#tag-set), -[tag value](#tag-value) - -### tag key - -The key of a tag key-value pair. -Tag keys are strings and store metadata. - -Related entries: -[field key](#field-key), -[tag](#tag), -[tag set](#tag-set), -[tag value](#tag-value) - -### tag set - -The collection of tag keys and tag values on a point. - -Related entries: -[point](#point), -[primary key](#primary-key), -[series](#series), -[tag](#tag), -[tag key](#tag-key), -[tag value](#tag-value) - -### tag value - -The value of a tag key-value pair. -Tag values are strings and they store metadata. - -Related entries: -[tag](#tag), -[tag key](#tag-key), -[tag set](#tag-set) - -### Telegraf - -A plugin-driven agent that collects, processes, aggregates, and writes metrics. - -Related entries: -[Telegraf plugins](/telegraf/v1/plugins/), -[Use Telegraf to collect data](/influxdb3/cloud-dedicated/write-data/use-telegraf/), - -### time (data type) - -A data type that represents a single point in time with nanosecond precision. - -### time series data - -Sequence of data points typically consisting of successive measurements made -from the same source over a time interval. -Time series data shows how data evolves over time. -On a time series data graph, one of the axes is always time. -Time series data may be regular or irregular. -Regular time series data changes in constant intervals. -Irregular time series data changes at non-constant intervals. - -### timestamp - -The date and time associated with a point. -Time in InfluxDB is in UTC. - -To specify time when writing data, see -[Elements of line protocol](/influxdb3/cloud-dedicated/reference/syntax/line-protocol/#elements-of-line-protocol). - -Related entries: -[point](#point), -[unix timestamp](#unix-timestamp), -[RFC3339 timestamp](#rfc3339-timestamp) - -### token - -Tokens provide authorization to perform specific actions in InfluxDB. -There are different types of API tokens: - -- **Database token:** Grants read and write access to a database. -- **Management token:** A short-lived token that grants clients administrative - access to your InfluxDB Cloud Dedicated cluster. - -Related entries: -[Manage token](/influxdb3/cloud-dedicated/admin/tokens/) - -### transformation - -Data transformation refers to the process of converting or modifying input data from one format, value, or structure to another. - -InfluxQL [transformation functions](/influxdb3/cloud-dedicated/reference/influxql/functions/transformations/) modify and return values in each row of queried data, but do not return an aggregated value across those rows. - -Related entries: [aggregate](#aggregate), [function](#function), [selector](#selector) - -### TSM (Time Structured Merge tree) - -The InfluxDB v1 and v2 data storage format that allows greater compaction and -higher write and read throughput than B+ or LSM tree implementations. -The TSM storage engine has been replaced by the [InfluxDB 3 storage engine (IOx)](#iox). - -Related entries: -[IOx](#iox) - -## U - -### UDP - -User Datagram Protocol is a packet of information. -When a request is made, a UDP packet is sent to the recipient. -The sender doesn't verify the packet is received. -The sender continues to send the next packets. -This means computers can communicate more quickly. -This protocol is used when speed is desirable and error correction is not necessary. - -### unix epoch - -The date and time from which Unix system times are measured. -The Unix epoch is `1970-01-01T00:00:00Z`. - -### unix timestamp - -Counts time since **Unix Epoch (1970-01-01T00:00:00Z UTC)** in specified units ([precision](#precision)). -Specify timestamp precision when [writing data to InfluxDB](/influxdb3/cloud-dedicated/write-data/). -InfluxDB supports the following unix timestamp precisions: - -| Precision | Description | Example | -|:--------- |:----------- |:------- | -| `ns` | Nanoseconds | `1577836800000000000` | -| `us` | Microseconds | `1577836800000000` | -| `ms` | Milliseconds | `1577836800000` | -| `s` | Seconds | `1577836800` | - -

    The examples above represent 2020-01-01T00:00:00Z UTC.

    - -Related entries: -[timestamp](#timestamp), -[RFC3339 timestamp](#rfc3339-timestamp) - -### unsigned integer - -A whole number that is positive or zero (`0`, `143`). Also known as a "uinteger." -InfluxDB supports 64-bit unsigned integers (minimum: `0`, maximum: `18446744073709551615`). - -Related entries: -[integer](#integer) - -### user - -InfluxDB users are granted permission to access to InfluxDB. - -## V - -### values per second - -The preferred measurement of the rate at which data is persisted to InfluxDB. -Write speeds are generally quoted in values per second. - -To calculate the values per second rate, multiply the number of points written -per second by the number of values stored per point. -For example, if the points have four fields each, and a batch of 5000 points is -written 10 times per second, the values per second rate is: - -**4 field values per point** × **5000 points per batch** × **10 batches per second** = **200,000 values per second** - -Related entries: -[batch](#batch), -[field](#field), -[point](#point) - -### variable - -A storage location (identified by a memory address) paired with an associated -symbolic name (an identifier). -A variable contains some known or unknown quantity of information referred to as a value. - -### variable assignment - -A statement that sets or updates the value stored in a variable. - -## W - -### WAL (Write-Ahead Log) - -The temporary cache for recently written points. -To reduce the frequency that permanent storage files are accessed, InfluxDB -caches new points in the WAL until their total size or age triggers a flush to -more permanent storage. This allows for efficient batching of the writes into -the storage engine. - -Points in the WAL are queryable and persist through a system reboot. -On process start, all points in the WAL must be flushed before the system -accepts new writes. - -### windowing - -Grouping data based on specified time intervals. -This is also referred to as "time binning" or "date binning." + From 89f5f18137cfec82036d3b6f807f17164b36ecc7 Mon Sep 17 00:00:00 2001 From: Jason Stirnaman Date: Tue, 15 Apr 2025 15:16:35 -0500 Subject: [PATCH 37/44] chore(influxdb3): Reconcile shared glossary page with Serverless --- .../shared/influxdb3-reference/glossary.md | 24 ++++++++++++++++--- 1 file changed, 21 insertions(+), 3 deletions(-) diff --git a/content/shared/influxdb3-reference/glossary.md b/content/shared/influxdb3-reference/glossary.md index a3d88ae71..bf07fcb3a 100644 --- a/content/shared/influxdb3-reference/glossary.md +++ b/content/shared/influxdb3-reference/glossary.md @@ -246,7 +246,7 @@ A named location where time series data is stored. In InfluxDB 1.x, a database represented a logical container for users, retention policies, continuous queries, and time series data. -In InfluxDB 2.x, the equivalent of this concept is an InfluxDB [bucket](#bucket). +In InfluxDB 2.x and InfluxDB Cloud Serverless, the equivalent of this concept is an InfluxDB [bucket](#bucket). Related entries: [bucket](#bucket), @@ -658,7 +658,7 @@ Information passed through a pipe is retained until the receiving process reads A Python file with a specific function signature that corresponds to a [trigger](#trigger) type. -Plugins run in the [Processing engine](#processing-engine) to process data, +Plugins run in the InfluxDB 3 [Processing engine](#processing-engine) to process data, respond to database events, and connect to external systems. Related entries: @@ -786,12 +786,16 @@ Field type conflicts are a common cause of rejected points. ### retention period The [duration](#duration) of time that a database retains data. + InfluxDB drops points with timestamps older than their database's retention period relative to [now](#now). The minimum retention period is **one hour**. +In InfluxDB Cloud Serverless, _bucket_ is synonymous with database. + Related entries: [bucket](#bucket) +[database](#database) ### retention policy (RP) @@ -805,6 +809,8 @@ In {{< product-name >}}, the equivalent is [retention period](#retention-period) however retention periods are not part of the data model. The retention period describes the data persistence behavior of a database. +In InfluxDB Cloud Serverless, _bucket_ is synonymous with database. + Related entries: [retention period](#retention-period), @@ -849,11 +855,18 @@ Related entries: ### schema How data is organized in InfluxDB. +{{% hide-in "cloud-serverless" %}} The fundamentals of the InfluxDB schema are databases, measurements, tag keys, tag values, and field keys. +{{% /hide-in %}} +{{% show-in "cloud-serverless" %}} +The fundamentals of the {{% product-name %}} schema are buckets, measurements (or _tables_), +tag keys, tag values, and field keys. +{{% /show-in %}} Related entries: [bucket](#bucket), +[database](#database), [field key](#field-key), [measurement](#measurement), [series](#series), @@ -888,7 +901,8 @@ Related entries: ### series cardinality -The number of unique measurement (table), tag set, and field key combinations in an InfluxDB database. +The number of unique measurement, tag set, and field key combinations in an +{{% product-name %}} database. For example, assume that an InfluxDB database has one measurement. The single measurement has two tag keys: `email` and `status`. @@ -922,6 +936,10 @@ The series cardinality would remain unchanged at 6, as `firstname` is already sc | cliff@influxdata.com | start | clifford | | cliff@influxdata.com | finish | clifford | +{{% show-in "cloud-serverless" %}} +In InfluxDB Cloud Serverless, _bucket_ is synonymous with database. +{{% /show-in %}} + Related entries: [field key](#field-key), [measurement](#measurement), From 004592a7b580dc7c5a27fb70544cb40f50c6cbbd Mon Sep 17 00:00:00 2001 From: Jason Stirnaman Date: Tue, 15 Apr 2025 15:16:55 -0500 Subject: [PATCH 38/44] chore(influxdb3): Cloud Serverless: use shared glossary file --- .../cloud-serverless/reference/glossary.md | 1146 +---------------- 1 file changed, 3 insertions(+), 1143 deletions(-) diff --git a/content/influxdb3/cloud-serverless/reference/glossary.md b/content/influxdb3/cloud-serverless/reference/glossary.md index 5add0745d..dabadad7c 100644 --- a/content/influxdb3/cloud-serverless/reference/glossary.md +++ b/content/influxdb3/cloud-serverless/reference/glossary.md @@ -8,1149 +8,9 @@ menu: name: Glossary parent: Reference influxdb3/cloud-serverless/tags: [glossary] +source: /shared/influxdb3-reference/glossary.md --- - -[A](#a) | [B](#b) | [C](#c) | [D](#d) | [E](#e) | [F](#f) | [G](#g) | [H](#h) | [I](#i) | [J](#j) | [K](#k) | [L](#l) | [M](#m) | [N](#n) | [O](#o) | [P](#p) | [Q](#q) | [R](#r) | [S](#s) | [T](#t) | [U](#u) | [V](#v) | [W](#w) | X | Y | Z - -## A - -### abstract syntax tree (AST) - -Tree representation of source code that shows the structure, content, and rules -of programming statements and discards additional syntax elements. -The tree is hierarchical, with elements of program statements broken down into their parts. - -For more information about AST design, see [Abstract Syntax Tree on Wikipedia](https://en.wikipedia.org/wiki/Abstract_syntax_tree). - -### agent - -A background process started by (or on behalf of) a user that typically requires user input. - -[Telegraf](/telegraf/v1/) is an agent that requires user input -(a configuration file) to gather metrics from declared input plugins and sends -metrics to declared output plugins, based on the plugins enabled for a configuration. - -Related entries: -[input plugin](#input-plugin), -[output plugin](#output-plugin), -[daemon](#daemon) - -### aggregator plugin - -Receives metrics from input plugins, creates aggregate metrics, and then passes aggregate metrics to configured output plugins. - -Related entries: -[input plugin](#input-plugin), -[output plugin](#output-plugin), -[processor plugin](#processor-plugin) - -### aggregate - -A function that returns an aggregated value across a set of points. -For a list of available aggregation functions, see [SQL aggregate functions](/influxdb3/cloud-serverless/reference/sql/functions/aggregate/). - - - -Related entries: -[function](#function), -[selector](#selector) - -### API - -Application programming interface that facilitates and standardizes communication -between two or more computer programs. - -### argument - -A value passed to a function or command that determines how the process operates. - -Related entries: -[parameter](#parameter) - -## B - -### batch - -A collection of points in line protocol format, separated by newlines (`0x0A`). -Submitting a batch of points using a single HTTP request to the write endpoints -drastically increases performance by reducing the HTTP overhead. -InfluxData typically recommends batch sizes of 5,000-10,000 points. -In some use cases, performance may improve with significantly smaller or larger batches. - -Related entries: -[line protocol](#line-protocol-lp), -[point](#point) - -### batch size - -The number of lines or individual data points in a line protocol batch. -The Telegraf agent sends metrics to output plugins in batches rather than individually. -Batch size controls the size of each write batch that Telegraf sends to the output plugins. - -Related entries: -[output plugin](#output-plugin) - -### bin - -In a cumulative histogram, a bin includes all data points less than or equal to a specified upper bound. -In a normal histogram, a bin includes all data points between the upper and lower bounds. -Histogram bins are also sometimes referred to as "buckets." - -### boolean - -A data type with two possible values: true or false. -By convention, you can express `true` as the integer `1` and false as the integer `0` (zero). - -### bucket - -"Bucket" is the term used in InfluxDB 2.x and _InfluxDB Cloud Serverless_ to refer -to a named location where time series data is stored. -Bucket is synonymous with "database" when using InfluxDB Cloud Dedicated. - -Related entries: -[database](#database) - -## C - -### CSV - -Comma-separated values (CSV) delimits text between commas to separate values. -A CSV file stores tabular data (numbers and text) in plain text. -Each line of the file is a data row. -Each row consists of one or more columns, separated by commas. -CSV file format is not fully standardized. - -### cardinality - -Cardinality is the number of unique values in a set. -Series cardinality is the number of unique [series](#series) in a bucket as a whole. -With the InfluxDB 3 storage engine, high series cardinality _does not_ affect performance. - -### cluster - -A collection of servers or processes that work together as a single unit. - - -### collect - -Collect and write time series data to InfluxDB using line protocol, Telegraf, -the InfluxDB v1 and v2 HTTP APIs, v1 and v2 `influx` command line interface (CLI), -and InfluxDB client libraries. - -### collection interval - -The default global interval for collecting data from each Telegraf input plugin. -The collection interval can be overridden by each individual input plugin's configuration. - -Related entries: -[input plugin](#input-plugin) - -### collection jitter - -Collection jitter prevents every input plugin from collecting metrics simultaneously, -which can have a measurable effect on the system. -For each collection interval, every Telegraf input plugin will sleep for a random -time between zero and the collection jitter before collecting the metrics. - -Related entries: -[collection interval](#collection-interval), -[input plugin](#input-plugin) - -### column - -InfluxDB data is stored in tables within rows and columns. -Columns store tag sets and fields sets, and time values. -The only required column is _time_, which stores timestamps and is included -in all InfluxDB tables. - -### common log format (CLF) - -A standardized text file format used by the InfluxDB server to create log -entries when generating server log files. - -### compaction - -Compressing time series data to optimize disk usage. - -### continuous query (CQ) - -Continuous queries are a feature of InfluxDB 1.x used to regularly downsample -or process time series data. - -## D - -### daemon - -A background process that runs without user input. - -### dashboard - -A collection of data visualizations used to query and display time series data. -There a many tools designed specifically to create dashboards including -[Grafana](https://grafana.com), [Apache Superset](https://superset.apache.org/), -[Tableau](https://www.tableau.com/), and others. - - - -### data model - -A data model organizes elements of data and standardizes how they relate to one -another and to properties of the real world entities. - -For information about the InfluxDB data model, see -[InfluxDB data organization](/influxdb3/cloud-serverless/get-started/#data-organization) - -### data service - -Stores time series data and handles writes and queries. - -### data source - -A source of data that InfluxDB collects or queries data from. - -Related entries: -[bucket](#bucket) - -### data type - -A data type is defined by the values it can take, the programming language used, -or the operations that can be performed on it. - -InfluxDB supports the following data types: - -- string -- boolean -- float (64-bit) -- integer (64-bit) -- unsigned integer (64-bit) -- time - -For more information about different data types, see: - -- [line protocol](/influxdb/v2/reference/syntax/line-protocol/#data-types-and-format) -- [InfluxQL](/influxdb/v1/query_language/spec/#literals) -- [InfluxDB](/influxdb/v2/reference/syntax/line-protocol/#data-types-and-format) - -### database - -In _InfluxDB Cloud Dedicated_, a named location where time series data is stored. -This is equivalent to a _bucket_ in _InfluxDB Cloud Serverless_. - -In InfluxDB 1.x, a database represented a logical container for users, retention -policies, continuous queries, and time series data. -In InfluxDB 2.x, the equivalent of this concept is an InfluxDB [bucket](#bucket). - -Related entries: -[bucket](#bucket), -[retention period](#retention-period), -[retention policy](#retention-policy-rp) - -### date-time - -InfluxDB stores the date-time format for each data point in a timestamp with -nanosecond-precision Unix time. -Specifying a timestamp is optional. -If a timestamp isn't specified for a data point, InfluxDB uses the server’s -local nanosecond timestamp in UTC. - -### DBRP mapping - -For {{% product-name %}} compatibility with InfluxDB v1 `/write` and `query` endpoints, maps an InfluxDB v1 database and retention policy combination to a bucket. - -### downsample - -Aggregating high resolution data into lower resolution data to preserve disk space. - -### duration - -A data type that represents a duration of time--for example, `1s`, `1m`, `1h`, `1d`. -Retention periods are set using durations. - -Related entries: -[retention period](#retention-period) - -## E - -### event - -Metrics gathered at irregular time intervals. - -### expression - -A combination of one or more constants, variables, operators, and functions. - -In the following SQL example, `now() - INTERVAL '7 days'` is an expression that calculates the difference between the `now()` function expression and the duration represented by `INTERVAL '7 days`: - -```sql -SELECT * -FROM home -WHERE - time >= now() - INTERVAL '7 days' -``` - -## F - -### field - -A key-value pair in InfluxDB's data structure that records a data value. -Generally, field values change over time. -Fields are required in InfluxDB's data structure. - -Related entries: -[field key](#field-key), -[field set](#field-set), -[field value](#field-value), -[tag](#tag) - -### field key - -The key of the key-value pair. -Field keys are strings. - -Related entries: -[field](#field), -[field set](#field-set), -[field value](#field-value), -[tag key](#tag-key) - -### field set - -The collection of field key-value pairs. - -Related entries: -[field](#field), -[field key](#field-key), -[field value](#field-value), -[point](#point) - -### field value - -The value of a key-value pair. -Field values are the actual data; they can be strings, floats, integers, unsigned integers or booleans. -A field value is always associated with a timestamp. - -Related entries: -[field](#field), -[field key](#field-key), -[field set](#field-set), -[tag set](#tag-set), -[tag value](#tag-value), -[timestamp](#timestamp) - -### file block - -A file block is a fixed-length chunk of data read into memory when requested by an application. - -### float - -A real number written with a decimal point dividing the integer and fractional parts (`1.0`, `3.14`, `-20.1`). -InfluxDB supports 64-bit float values. - -### flush interval - -The global interval for flushing data from each Telegraf output plugin to its destination. -This value should not be set lower than the collection interval. - -Related entries: -[collection interval](#collection-interval), -[flush jitter](#flush-jitter), -[output plugin](#output-plugin) - -### flush jitter - -Flush jitter prevents every Telegraf output plugin from sending writes -simultaneously, which can overwhelm some data sinks. -Each flush interval, every Telegraf output plugin sleeps for a random time -between zero and the flush jitter before emitting metrics. -Flush jitter smooths out write spikes when running a large number of Telegraf instances. - -Related entries: -[flush interval](#flush-interval), -[output plugin](#output-plugin) - -### function - -A function is an operation that performs a specific task. -Functions take input, operate on that input, and then return output. -For a complete list of available SQL functions, see -[SQL functions](/influxdb3/cloud-serverless/reference/sql/functions/). - - - -Related entries: -[aggregate](#aggregate), -[selector](#selector) - -## G - -### gzip - -gzip is a type of data compression that compress chunks of data, which is -restored by unzipping compressed gzip files. -The gzip file extension is `.gz`. - -## H - -### histogram - -A visual representation of statistical information that uses rectangles to show -the frequency of data items in successive, equal intervals or bins. - -## I - -### identifier - -Identifiers are tokens that refer to specific database objects such as database -names, field keys, measurement names, tag keys, etc. - -Related entries: -[database](#database), -[field key](#field-key), -[measurement](#measurement), -[tag key](#tag-key) - -### influx - -`influx` is a command line interface (CLI) that interacts with {{% product-name %}} and the InfluxDB v1.x and v2.x server. - - - -### influxd - -`influxd` is the InfluxDB OSS v1.x and v2.x daemon that runs the InfluxDB server -and other required processes. - -### InfluxDB - -An open source time series database (TSDB) developed by InfluxData, optimized for fast, high-availability storage and retrieval of -time series data in fields such as operations monitoring, application metrics, -Internet of Things sensor data, and real-time analytics. - -### InfluxQL - -The SQL-like query language used to query data in InfluxDB. - -### input plugin - -Telegraf input plugins actively gather metrics and deliver them to the core agent, -where aggregator, processor, and output plugins can operate on the metrics. -To activate an input plugin, enable and configure it in the -Telegraf configuration file. - -Related entries: -[aggregator plugin](#aggregator-plugin), -[collection interval](#collection-interval), -[output plugin](#output-plugin), -[processor plugin](#processor-plugin) - -### instance - -An entity comprising data on a server (or virtual server in cloud computing). - - -### integer - -A whole number that is positive, negative, or zero (`0`, `-5`, `143`). -InfluxDB supports 64-bit integers (minimum: `-9223372036854775808`, maximum: `9223372036854775807`). - -Related entries: -[unsigned integer](#unsigned-integer) - -### IOx - -The IOx storage engine (InfluxDB 3 storage engine) is a real-time, columnar -database optimized for time series data built in Rust on top of -[Apache Arrow](https://arrow.apache.org/) and -[DataFusion](https://arrow.apache.org/datafusion/user-guide/introduction.html). -IOx replaces the [TSM (Time Structured Merge tree)](#tsm-time-structured-merge-tree) storage engine. - -## J - -### JWT - -Typically, JSON web tokens (JWT) are used to authenticate users between an -identity provider and a service provider. -A server can generate a JWT to assert any business processes. -For example, an "admin" token sent to a client can prove the client is logged in as admin. -Tokens are signed by one party's private key (typically, the server). -Private keys are used by both parties to verify that a token is legitimate. - -JWT uses an open standard specified in [RFC 7519](https://tools.ietf.org/html/rfc7519). - -### Jaeger - -Open source tracing used in distributed systems to monitor and troubleshoot transactions. - -### JSON - -JavaScript Object Notation (JSON) is an open-standard file format that uses -human-readable text to transmit data objects consisting of attribute–value pairs -and array data types. - -## K - -### keyword - -A keyword is reserved by a program because it has special meaning. -Every programming language has a set of keywords (reserved names) that cannot be used as identifiers--for example, -you can't use `SELECT` (an SQL keyword) as a variable name in an SQL query. - -See keyword lists: - -- [SQL keywords](/influxdb3/cloud-serverless/reference/sql/#keywords) -- [InfluxQL keywords](/influxdb3/cloud-serverless/reference/influxql/#keywords) - -## L - -### literal - -A literal is value in an expression, a number, character, string, function, record, or array. -Literal values are interpreted as defined. - -### load balancing - -Improves workload distribution across multiple computing resources in a network. -Load balancing optimizes resource use, maximizes throughput, minimizes response -time, and avoids overloading a single resource. -Using multiple components with load balancing instead of a single component may -increase reliability and availability. -If requests to any server in a network increase, requests are forwarded to -another server with more capacity. -Load balancing can also refer to the communications channels themselves. - -### logs - -Logs record information. -Event logs describe system events and activity that help to describe and diagnose problems. -Transaction logs describe changes to stored data that help recover data if a -database crashes or other errors occur. - -### line protocol (LP) - -The text based format for writing points to InfluxDB. -See [line protocol](/influxdb3/cloud-serverless/reference/syntax/line-protocol/). - -## M - -### measurement - -The part of InfluxDB's data structure that describes the data stored in associated fields. -Measurements are strings. - -Related entries: -[field](#field), [series](#series) - -### metric - -Data tracked over time. - -### metric buffer - -The metric buffer caches individual metrics when writes are failing for an Telegraf output plugin. -Telegraf will attempt to flush the buffer upon a successful write to the output. -The oldest metrics are dropped first when this buffer fills. - -Related entries: -[output plugin](#output-plugin) - -### missing values - -Denoted by a null value. -Identifies missing information, which may be useful to include in an error message. - -## N - -### node - -An independent process or server in a cluster. - -Related entries: -[cluster](#cluster), -[server](#server) - -### now - -The local server's nanosecond timestamp. - -### null - -A data type that represents a missing or unknown value. -Denoted by the `null` value. -Values of [tags](#tag) and [fields](#field) may be `null`, but timestamp values are never `null`. - -## O - -### operator - -A symbol that usually represents an action or process. -For example: `+`, `-`, `>`. - -Related entries: -[operand](#operand) - -### operand - -The object or value on either side of an [operator](#operator). - -Related entries: -[operator](#operator) - -### organization - -In InfluxDB Cloud Serverless, a workspace for a group of users. -All InfluxDB _resources_ (buckets, members, and so on) belong to an organization. -Organizations are not part of InfluxDB Cloud Dedicated. - -### owner - -A type of role for a user. -Owners have read/write permissions. -Users can have owner roles for databases and other resources. - -Role permissions are separate from API token permissions. -For additional information on API tokens, see [token](#token). - -### output plugin - -Telegraf output plugins deliver metrics to their configured destination. -To activate an output plugin, enable and configure the plugin in Telegraf's configuration file. - -Related entries: -[aggregator plugin](#aggregator-plugin), -[flush interval](#flush-interval), -[input plugin](#input-plugin), -[processor plugin](#processor-plugin) - -## P - -### parameter - -A key-value pair used to pass information to a function that determines how the -function operates. - -Related entries: -[argument](#argument) - -### pipe - -Method for passing information from one process to another. -For example, an output parameter from one process is input to another process. -Information passed through a pipe is retained until the receiving process reads the information. - -### point - -Single data record identified by its _measurement_, _tag keys_, _tag values_, -_field key_, and _timestamp_. - -In a [series](#series), each point has a unique timestamp. -If you write a point to a series with a timestamp that matches an existing point, -the field set becomes a union of the old and new field set, where any ties go to -the new field set. - -Related entries: -[measurement](#measurement), -[tag set](#tag-set), -[field set](#field-set), -[timestamp](#timestamp) - -### primary key - -With the InfluxDB 3 storage engine, the primary key is the list of columns -used to uniquely identify each row in a table. -Rows are uniquely identified by their timestamp and tag set. -A row's primary key tag set does not include tags with null values. - -### precision - -The precision configuration setting determines the timestamp precision retained -for input data points. -All incoming timestamps are truncated to the specified precision. -Valid precisions are `ns`, `us` or `µs`, `ms`, and `s`. - -In Telegraf, truncated timestamps are padded with zeros to create a nanosecond timestamp. -Telegraf output plugins emit timestamps in nanoseconds. -For example, if the precision is set to `ms`, the nanosecond epoch timestamp `1480000000123456789` is truncated to `1480000000123` in millisecond precision and padded with zeroes to make a new, less precise nanosecond timestamp of `1480000000123000000`. -Telegraf output plugins do not alter the timestamp further. -The precision setting is ignored for service input plugins. - -Related entries: -[aggregator plugin](#aggregator-plugin), -[input plugin](#input-plugin), -[output plugin](#output-plugin), -[processor plugin](#processor-plugin), -[service input plugin](#service-input-plugin) - -### predicate expression - -A predicate expression compares two values and returns `true` or `false` based on -the relationship between the two values. -A predicate expression is comprised of a left operand, a comparison operator, and a right operand. - -### process - -A set of predetermined rules. -A process can refer to instructions being executed by the computer processor or -refer to the act of manipulating data. - -### processor plugin - -Telegraf processor plugins transform, decorate, and filter metrics collected by -input plugins, passing the transformed metrics to the output plugins. - -Related entries: -[aggregator plugin](#aggregator-plugin), -[input plugin](#input-plugin), -[output plugin](#output-plugin) - -### Prometheus format - -A simple text-based format for exposing metrics and ingesting them into Prometheus. - -## Q - -### query - -A request for information. -An InfluxDB query returns time series data. - -See [Query data in InfluxDB](/influxdb3/cloud-serverless/query-data/). - -### query plan - -A sequence of steps (_nodes_) that the InfluxDB Querier devises and executes to calculate the result of the query in the least amount of time. -A _logical plan_ is a high level representation of a query and doesn't consider cluster configuration or data organization. -A _physical plan_ represents the query execution plan and data flow through plan nodes that read (_scan_), deduplicate, merge, filter, and sort data. -A physical plan is optimized for the cluster configuration and data organization. - -See [Query plans](/influxdb3/cloud-serverless/reference/internals/query-plans/). - -## R - -### REPL - -A Read-Eval-Print Loop (REPL) is an interactive programming environment where -you type a command and immediately see the result. - -### regular expressions - -Regular expressions (regex or regexp) are patterns used to match character -combinations in strings. - -### rejected points - -In a batch of data, points that InfluxDB couldn't write to a bucket. -Field type conflicts are a common cause of rejected points. - -### retention period - -The [duration](#duration) of time that an {{% product-name %}} bucket retains data. -InfluxDB drops points with timestamps older than their bucket's retention period -relative to [now](#now). -The minimum retention period is **one hour**. - -Related entries: -[bucket](#bucket) - -### retention policy (RP) - -A retention policy is part of the InfluxDB 1.x data model that describes how long -InfluxDB keeps data (duration), how many copies of the data to store when in a -in the cluster (replication factor), and the time range covered by shard groups -(shard group duration). RPs are unique per database and along with the measurement -and tag set define a series. - -In {{< product-name >}} the equivalent is [retention period](#retention-period), -however retention periods are not part of the data model. -The retention period describes the data persistence behavior of a database. - -Related entries: -[retention period](#retention-period), - -### RFC3339 timestamp - -A timestamp that uses the human-readable DateTime format proposed in -[RFC 3339](https://tools.ietf.org/html/rfc3339) (for example: `2020-01-01T00:00:00.00Z`). - -Related entries: -[RFC3339Nano timestamp](#rfc3339nano-timestamp), -[timestamp](#timestamp), -[unix timestamp](#unix-timestamp) - -### RFC3339Nano timestamp - -A [Golang representation of the RFC 3339 DateTime format](https://go.dev/src/time/format.go) -that uses nanosecond resolution--for example: -`2006-01-02T15:04:05.999999999Z07:00`. - -InfluxDB clients can return RFC3339Nano timestamps in log events and CSV-formatted -query results. - -Related entries: -[RFC3339 timestamp](#rfc3339-timestamp), -[timestamp](#timestamp), -[unix timestamp](#unix-timestamp) - -### row - -A row in a [table](#table) represents a specific record or instance of data. -[Column](#column) values in a row represent specific attributes or properties of the instance. -Each row has a [primary key](/#primary-key) that makes the row unique from other rows in the table. - -Related entries: -[column](#column), -[primary key](#primary-key), -[series](#series), -[table](#table) - -## S - -### schema - -How data is organized in InfluxDB. -The fundamentals of the {{% product-name %}} schema are buckets, measurements (or _tables_), -tag keys, tag values, and field keys. - -Related entries: -[bucket](#bucket), -[field key](#field-key), -[measurement](#measurement), -[series](#series), -[tag key](#tag-key), -[tag value](#tag-value) - -### secret - -Secrets are key-value pairs that contain information you want to control access -to, such as API keys, passwords, or certificates. - -### selector - -A function that returns a single point from the range of specified points. -See [SQL selector functions](/influxdb3/cloud-serverless/reference/sql/functions/selector/) -for a complete list of available SQL selector functions. - -Related entries: -[aggregate](#aggregate), -[function](#function), -[transformation](#transformation) - -### series - -In the InfluxDB 3 data structure, a collection of data that share a common -_measurement_ and _tag set_. - -Related entries: -[field set](#field-set), -[measurement](#measurement), -[tag set](#tag-set) - -### series cardinality - -The number of unique measurement, tag set, and field key combinations in an {{% product-name %}} bucket. - -For example, assume that an InfluxDB database has one measurement. -The single measurement has two tag keys: `email` and `status`. -If there are three different `email` tag values, -and each email address is associated with two -different `status` tag values, then the series cardinality for the measurement is 6 -(3 × 2 = 6): - -| email | status | -| :-------------------- | :----- | -| lorr@influxdata.com | start | -| lorr@influxdata.com | finish | -| marv@influxdata.com | start | -| marv@influxdata.com | finish | -| cliff@influxdata.com | start | -| cliff@influxdata.com | finish | - -In some cases, performing this multiplication may overestimate series cardinality -because of the presence of dependent tags. -Dependent tags are scoped by another tag and do not increase series cardinality. -If we add the tag `firstname` to the preceding example, the series cardinality -would not be 18 (3 × 2 × 3 = 18). -The series cardinality would remain unchanged at 6, as `firstname` is already scoped by the `email` tag: - -| email | status | firstname | -| :------------------- | :----- | :-------- | -| lorr@influxdata.com | start | lorraine | -| lorr@influxdata.com | finish | lorraine | -| marv@influxdata.com | start | marvin | -| marv@influxdata.com | finish | marvin | -| cliff@influxdata.com | start | clifford | -| cliff@influxdata.com | finish | clifford | - -Related entries: -[field key](#field-key), -[measurement](#measurement), -[tag key](#tag-key), -[tag set](#tag-set) - -### series key - -A series key identifies a particular series by measurement, tag set, and field key. - -For example: - -```text -# measurement, tag set, field key -h2o_level, location=santa_monica, h2o_feet -``` - -Related entries: -[series](#series) - -### server - -A computer, virtual or physical, running InfluxDB. - - -### service input plugin - -Telegraf input plugins that run in a passive collection mode while the Telegraf agent is running. -Service input plugins listen on a socket for known protocol inputs, or apply -their own logic to ingested metrics before delivering metrics to the Telegraf agent. - -Related entries: -[aggregator plugin](#aggregator-plugin), -[input plugin](#input-plugin), -[output plugin](#output-plugin), -[processor plugin](#processor-plugin) - -### string - -A data type used to represent text. - -## T - -### TCP - -Transmission Control Protocol. - -### table - -A collection of related data organized in a structured way with a predefined set -of columns and data types. -Each row in the table represents a specific record or instance of the data, and -each column represents a specific attribute or property of the data. - -In InfluxDB 3, a table represents a measurement. - -Related entries: -[column](#column), -[measurement](#measurement), -[primary key](#primary-key), -[row](#row) - -### tag - -The key-value pair in InfluxDB's data structure that records metadata. -Tags are an optional part of InfluxDB's data structure but they are useful for -storing commonly queried metadata. - -Related entries: -[field](#field), -[tag key](#tag-key), -[tag set](#tag-set), -[tag value](#tag-value) - -### tag key - -The key of a tag key-value pair. -Tag keys are strings and store metadata. - -Related entries: -[field key](#field-key), -[tag](#tag), -[tag set](#tag-set), -[tag value](#tag-value) - -### tag set - -The collection of tag keys and tag values on a point. - -Related entries: -[point](#point), -[primary key](#primary-key), -[series](#series), -[tag](#tag), -[tag key](#tag-key), -[tag value](#tag-value) - -### tag value - -The value of a tag key-value pair. -Tag values are strings and they store metadata. - -Related entries: -[tag](#tag), -[tag key](#tag-key), -[tag set](#tag-set) - -### Telegraf - -A plugin-driven agent that collects, processes, aggregates, and writes metrics. - -Related entries: -[Telegraf plugins](/telegraf/v1/plugins/), -[Use Telegraf to collect data](/influxdb3/cloud-serverless/write-data/use-telegraf/), - -### time (data type) - -A data type that represents a single point in time with nanosecond precision. - -### time series data - -Sequence of data points typically consisting of successive measurements made -from the same source over a time interval. -Time series data shows how data evolves over time. -On a time series data graph, one of the axes is always time. -Time series data may be regular or irregular. -Regular time series data changes in constant intervals. -Irregular time series data changes at non-constant intervals. - -### timestamp - -The date and time associated with a point. -Time in InfluxDB is in UTC. - -To specify time when writing data, see -[Elements of line protocol](/influxdb3/cloud-serverless/reference/syntax/line-protocol/#elements-of-line-protocol). - -Related entries: -[point](#point), -[unix timestamp](#unix-timestamp), -[RFC3339 timestamp](#rfc3339-timestamp) - -### token - -Tokens provide authorization to perform specific actions in InfluxDB. -{{% product-name %}} uses **API tokens** to authorize read and write access to resources and data. - -Related entries: -[Manage tokens](/influxdb3/cloud-serverless/admin/tokens/) - -### transformation - -Data transformation refers to the process of converting or modifying input data from one format, value, or structure to another. - -InfluxQL [transformation functions](/influxdb3/cloud-serverless/reference/influxql/functions/transformations/) modify and return values in each row of queried data, but do not return an aggregated value across those rows. - -Related entries: [aggregate](#aggregate), [function](#function), [selector](#selector) - -### TSM (Time Structured Merge tree) - -The InfluxDB v1 and v2 data storage format that allows greater compaction and -higher write and read throughput than B+ or LSM tree implementations. -The TSM storage engine has been replaced by [the InfluxDB 3 storage engine (IOx)](#iox). - -Related entries: -[IOx](#iox) - -## U - -### UDP - -User Datagram Protocol is a packet of information. -When a request is made, a UDP packet is sent to the recipient. -The sender doesn't verify the packet is received. -The sender continues to send the next packets. -This means computers can communicate more quickly. -This protocol is used when speed is desirable and error correction is not necessary. - -### unix epoch - -The date and time from which Unix system times are measured. -The Unix epoch is `1970-01-01T00:00:00Z`. - -### unix timestamp - -Counts time since **Unix Epoch (1970-01-01T00:00:00Z UTC)** in specified units ([precision](#precision)). -Specify timestamp precision when [writing data to InfluxDB](/influxdb3/cloud-serverless/write-data/). -InfluxDB supports the following unix timestamp precisions: - -| Precision | Description | Example | -|:--------- |:----------- |:------- | -| `ns` | Nanoseconds | `1577836800000000000` | -| `us` | Microseconds | `1577836800000000` | -| `ms` | Milliseconds | `1577836800000` | -| `s` | Seconds | `1577836800` | - -

    The examples above represent 2020-01-01T00:00:00Z UTC.

    - -Related entries: -[timestamp](#timestamp), -[RFC3339 timestamp](#rfc3339-timestamp) - -### unsigned integer - -A whole number that is positive or zero (`0`, `143`). Also known as a "uinteger." -InfluxDB supports 64-bit unsigned integers (minimum: `0`, maximum: `18446744073709551615`). - -Related entries: -[integer](#integer) - -### user - -InfluxDB users are granted permission to access to InfluxDB. - -## V - -### values per second - -The preferred measurement of the rate at which data is persisted to InfluxDB. -Write speeds are generally quoted in values per second. - -To calculate the values per second rate, multiply the number of points written -per second by the number of values stored per point. -For example, if the points have four fields each, and a batch of 5000 points is -written 10 times per second, the values per second rate is: - -**4 field values per point** × **5000 points per batch** × **10 batches per second** = **200,000 values per second** - -Related entries: -[batch](#batch), -[field](#field), -[point](#point) - -### variable - -A storage location (identified by a memory address) paired with an associated -symbolic name (an identifier). -A variable contains some known or unknown quantity of information referred to as a value. - -### variable assignment - -A statement that sets or updates the value stored in a variable. - -## W - -### WAL (Write-Ahead Log) - -The temporary cache for recently written points. -To reduce the frequency that permanent storage files are accessed, InfluxDB -caches new points in the WAL until their total size or age triggers a flush to -more permanent storage. This allows for efficient batching of the writes into -the storage engine. - -Points in the WAL are queryable and persist through a system reboot. -On process start, all points in the WAL must be flushed before the system -accepts new writes. - -### windowing - -Grouping data based on specified time intervals. -This is also referred to as "time binning" or "date binning." From 1acd67e8fead80e49fbe473c274ec51e67b5246f Mon Sep 17 00:00:00 2001 From: Jason Stirnaman Date: Wed, 16 Apr 2025 11:59:47 -0500 Subject: [PATCH 39/44] fix(mono): Get started: write example has hanging continuation, add stdin example, add placeholder notes, promote Telegraf, client libs (part of #5989) --- content/shared/v3-core-get-started/_index.md | 74 ++++++++++++++----- .../v3-enterprise-get-started/_index.md | 74 ++++++++++++++----- 2 files changed, 114 insertions(+), 34 deletions(-) diff --git a/content/shared/v3-core-get-started/_index.md b/content/shared/v3-core-get-started/_index.md index 37b0798be..5f02564b8 100644 --- a/content/shared/v3-core-get-started/_index.md +++ b/content/shared/v3-core-get-started/_index.md @@ -335,19 +335,67 @@ cpu,host=Alpha,region=us-west,application=webserver val=6i,usage_percent=25.3,st ### Write data using the CLI To quickly get started writing data, you can use the `influxdb3` CLI. -For batching and higher-volume write workloads, we recommend using the [HTTP API](#write-data-using-the-http-api). + +> [!Note] +> For batching and higher-volume write workloads, we recommend using the [HTTP API](#write-data-using-the-http-api). +> +> #### Write data using InfluxDB API client libraries +> +> InfluxDB provides supported client libraries that integrate with your code +> to construct data as time series points and write the data as line protocol to your {{% product-name %}} database. +> For more information, see how to [use InfluxDB client libraries to write data](/influxdb3/version/write-data/api-client-libraries/). ##### Example: write data using the influxdb3 CLI -If you save the preceding line protocol to a file (for example, `server_data`), then you can use the `influxdb3` CLI to write the data--for example: +Use the `influxdb3 write` command to write data to a database. +In the code samples, replace the following placeholders with your values: + +- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: The name of the [database](/influxdb3/version/admin/databases/) to write to. +{{% show-in "core" %}} +- {{% code-placeholder-key %}}`TOKEN`{{% /code-placeholder-key %}}: A [token](/influxdb3/version/admin/tokens/) for your {{% product-name %}} server. +{{% /show-in %}} +{{% show-in "enterprise" %}} +- {{% code-placeholder-key %}}`TOKEN`{{% /code-placeholder-key %}}: A [token](/influxdb3/version/admin/tokens/) + with permission to write to the specified database. +{{% /show-in %}} + +##### Write data via stdin + +Pass data as quoted line protocol via standard input (stdin)--for example: + +{{% code-placeholders "DATABASE_NAME|TOKEN" %}} ```bash influxdb3 write \ - --database mydb \ - --file server_data \ - --precision ns + --database DATABASE_NAME \ + --token TOKEN \ + --precision ns \ --accept-partial \ +'cpu,host=Alpha,region=us-west,application=webserver val=1i,usage_percent=20.5,status="OK" +cpu,host=Bravo,region=us-east,application=database val=2i,usage_percent=55.2,status="OK" +cpu,host=Charlie,region=us-west,application=cache val=3i,usage_percent=65.4,status="OK" +cpu,host=Bravo,region=us-east,application=database val=4i,usage_percent=70.1,status="Warn" +cpu,host=Bravo,region=us-central,application=database val=5i,usage_percent=80.5,status="OK" +cpu,host=Alpha,region=us-west,application=webserver val=6i,usage_percent=25.3,status="Warn"' ``` +{{% /code-placeholders %}} + +##### Write data from a file + +Pass the `--file` option to write line protocol you have saved to a file--for example, save the +[sample line protocol](#write-data-in-line-protocol-syntax) to a file named `server_data` +and then enter the following command: + +{{% code-placeholders "DATABASE_NAME|TOKEN" %}} +```bash +influxdb3 write \ + --database DATABASE_NAME \ + --token TOKEN \ + --precision ns \ + --accept-partial \ + --file server_data +``` +{{% /code-placeholders %}} ### Write data using the HTTP API @@ -356,6 +404,7 @@ The `/api/v3/write_lp` endpoint is the recommended endpoint for writing data and provides additional options for controlling write behavior. If you need to write data using InfluxDB v1.x or v2.x tools, use the compatibility API endpoints. +Compatibility APIs work with [Telegraf](/telegraf/v1/), InfluxDB v2.x and v1.x [API client libraries](/influxdb3/version/reference/client-libraries), and other tools that support the v1.x or v2.x APIs. {{% tabs-wrapper %}} {{% tabs %}} @@ -374,13 +423,13 @@ and supports the following parameters: - `?accept_partial=`: Accept or reject partial writes (default is `true`). - `?no_sync=`: Control when writes are acknowledged: - - `no_sync=true`: Acknowledge writes before WAL persistence completes. + - `no_sync=true`: Acknowledges writes before WAL persistence completes. - `no_sync=false`: Acknowledges writes after WAL persistence completes (default). - `?precision=`: Specify the precision of the timestamp. The default is nanosecond precision. +- request body: The line protocol data to write. For more information about the parameters, see [Write data](/influxdb3/core/write-data/). - ##### Example: write data using the /api/v3 HTTP API The following examples show how to write data using `curl` and the `/api/3/write_lp` HTTP endpoint. @@ -449,7 +498,7 @@ For more information about the ingest path and data flow, see [Data durability]( {{% /tab-content %}} {{% tab-content %}} -The `/api/v2/write` InfluxDB v2 compatibility endpoint provides backwards compatibility with clients that can write data to InfluxDB OSS v2.x and Cloud 2 (TSM). +The `/api/v2/write` InfluxDB v2 compatibility endpoint provides backwards compatibility with clients (such as[Telegraf's InfluxDB v2 output plugin](/telegraf/v1/plugins/#output-influxdb_v2) and [InfluxDB v2 API client libraries](/influxdb3/version/reference/client-libraries/v2/)) that can write data to InfluxDB OSS v2.x and Cloud 2 (TSM). {{}} @@ -465,15 +514,6 @@ The `/write` InfluxDB v1 compatibility endpoint provides backwards compatibility {{% /tab-content %}} {{% /tabs-wrapper %}} -#### Write data using InfluxDB client libraries - -InfluxData provides supported InfluxDB 3 client libraries that you can integrate with your code -to construct data as time series points, and then write them as line protocol to an {{% product-name %}} database. -For more information, see how to [use InfluxDB client libraries to write data](/influxdb3/version/write-data/api-client-libraries/). - -{{% product-name %}} supports the InfluxDB v2.x and v1.x compatibility APIs for -writing data with tools such as InfluxDB v2 and v1 client libraries and Telegraf. - > [!Note] > #### Compatibility APIs differ from native APIs > diff --git a/content/shared/v3-enterprise-get-started/_index.md b/content/shared/v3-enterprise-get-started/_index.md index 2bad37c51..cef941eb9 100644 --- a/content/shared/v3-enterprise-get-started/_index.md +++ b/content/shared/v3-enterprise-get-started/_index.md @@ -439,19 +439,67 @@ cpu,host=Alpha,region=us-west,application=webserver val=6i,usage_percent=25.3,st ### Write data using the CLI To quickly get started writing data, you can use the `influxdb3` CLI. -For batching and higher-volume write workloads, we recommend using the [HTTP API](#write-data-using-the-http-api). + +> [!Note] +> For batching and higher-volume write workloads, we recommend using the [HTTP API](#write-data-using-the-http-api). +> +> #### Write data using InfluxDB API client libraries +> +> InfluxDB provides supported client libraries that integrate with your code +> to construct data as time series points and write the data as line protocol to your {{% product-name %}} database. +> For more information, see how to [use InfluxDB client libraries to write data](/influxdb3/version/write-data/api-client-libraries/). ##### Example: write data using the influxdb3 CLI -If you save the preceding line protocol to a file (for example, `server_data`), then you can use the `influxdb3` CLI to write the data--for example: +Use the `influxdb3 write` command to write data to a database. +In the code samples, replace the following placeholders with your values: + +- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: The name of the [database](/influxdb3/version/admin/databases/) to write to. +{{% show-in "core" %}} +- {{% code-placeholder-key %}}`TOKEN`{{% /code-placeholder-key %}}: A [token](/influxdb3/version/admin/tokens/) for your {{% product-name %}} server. +{{% /show-in %}} +{{% show-in "enterprise" %}} +- {{% code-placeholder-key %}}`TOKEN`{{% /code-placeholder-key %}}: A [token](/influxdb3/version/admin/tokens/) + with permission to write to the specified database. +{{% /show-in %}} + +##### Write data via stdin + +Pass data as quoted line protocol via standard input (stdin)--for example: + +{{% code-placeholders "DATABASE_NAME|TOKEN" %}} ```bash influxdb3 write \ - --database mydb \ - --file server_data \ - --precision ns + --database DATABASE_NAME \ + --token TOKEN \ + --precision ns \ --accept-partial \ +'cpu,host=Alpha,region=us-west,application=webserver val=1i,usage_percent=20.5,status="OK" +cpu,host=Bravo,region=us-east,application=database val=2i,usage_percent=55.2,status="OK" +cpu,host=Charlie,region=us-west,application=cache val=3i,usage_percent=65.4,status="OK" +cpu,host=Bravo,region=us-east,application=database val=4i,usage_percent=70.1,status="Warn" +cpu,host=Bravo,region=us-central,application=database val=5i,usage_percent=80.5,status="OK" +cpu,host=Alpha,region=us-west,application=webserver val=6i,usage_percent=25.3,status="Warn"' ``` +{{% /code-placeholders %}} + +##### Write data from a file + +Pass the `--file` option to write line protocol you have saved to a file--for example, save the +[sample line protocol](#write-data-in-line-protocol-syntax) to a file named `server_data` +and then enter the following command: + +{{% code-placeholders "DATABASE_NAME|TOKEN" %}} +```bash +influxdb3 write \ + --database DATABASE_NAME \ + --token TOKEN \ + --precision ns \ + --accept-partial \ + --file server_data +``` +{{% /code-placeholders %}} ### Write data using the HTTP API @@ -460,6 +508,7 @@ The `/api/v3/write_lp` endpoint is the recommended endpoint for writing data and provides additional options for controlling write behavior. If you need to write data using InfluxDB v1.x or v2.x tools, use the compatibility API endpoints. +Compatibility APIs work with [Telegraf](/telegraf/v1/), InfluxDB v2.x and v1.x [API client libraries](/influxdb3/version/reference/client-libraries), and other tools that support the v1.x or v2.x APIs. {{% tabs-wrapper %}} {{% tabs %}} @@ -478,13 +527,13 @@ and supports the following parameters: - `?accept_partial=`: Accept or reject partial writes (default is `true`). - `?no_sync=`: Control when writes are acknowledged: - - `no_sync=true`: Acknowledge writes before WAL persistence completes. + - `no_sync=true`: Acknowledges writes before WAL persistence completes. - `no_sync=false`: Acknowledges writes after WAL persistence completes (default). - `?precision=`: Specify the precision of the timestamp. The default is nanosecond precision. +- request body: The line protocol data to write. For more information about the parameters, see [Write data](/influxdb3/core/write-data/). - ##### Example: write data using the /api/v3 HTTP API The following examples show how to write data using `curl` and the `/api/3/write_lp` HTTP endpoint. @@ -553,7 +602,7 @@ For more information about the ingest path and data flow, see [Data durability]( {{% /tab-content %}} {{% tab-content %}} -The `/api/v2/write` InfluxDB v2 compatibility endpoint provides backwards compatibility with clients that can write data to InfluxDB OSS v2.x and Cloud 2 (TSM). +The `/api/v2/write` InfluxDB v2 compatibility endpoint provides backwards compatibility with clients (such as[Telegraf's InfluxDB v2 output plugin](/telegraf/v1/plugins/#output-influxdb_v2) and [InfluxDB v2 API client libraries](/influxdb3/version/reference/client-libraries/v2/)) that can write data to InfluxDB OSS v2.x and Cloud 2 (TSM). {{}} @@ -569,15 +618,6 @@ The `/write` InfluxDB v1 compatibility endpoint provides backwards compatibility {{% /tab-content %}} {{% /tabs-wrapper %}} -#### Write data using InfluxDB client libraries - -InfluxData provides supported InfluxDB 3 client libraries that you can integrate with your code -to construct data as time series points, and then write them as line protocol to an {{% product-name %}} database. -For more information, see how to [use InfluxDB client libraries to write data](/influxdb3/version/write-data/api-client-libraries/). - -{{% product-name %}} supports the InfluxDB v2.x and v1.x compatibility APIs for -writing data with tools such as InfluxDB v2 and v1 client libraries and Telegraf. - > [!Note] > #### Compatibility APIs differ from native APIs > From cca23a6b2ddaa1de79f91b39c5e4b11aecaa85de Mon Sep 17 00:00:00 2001 From: Jason Stirnaman Date: Wed, 16 Apr 2025 14:36:14 -0500 Subject: [PATCH 40/44] Update content/shared/v3-enterprise-get-started/_index.md Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- content/shared/v3-enterprise-get-started/_index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/shared/v3-enterprise-get-started/_index.md b/content/shared/v3-enterprise-get-started/_index.md index cef941eb9..950272fc1 100644 --- a/content/shared/v3-enterprise-get-started/_index.md +++ b/content/shared/v3-enterprise-get-started/_index.md @@ -602,7 +602,7 @@ For more information about the ingest path and data flow, see [Data durability]( {{% /tab-content %}} {{% tab-content %}} -The `/api/v2/write` InfluxDB v2 compatibility endpoint provides backwards compatibility with clients (such as[Telegraf's InfluxDB v2 output plugin](/telegraf/v1/plugins/#output-influxdb_v2) and [InfluxDB v2 API client libraries](/influxdb3/version/reference/client-libraries/v2/)) that can write data to InfluxDB OSS v2.x and Cloud 2 (TSM). +The `/api/v2/write` InfluxDB v2 compatibility endpoint provides backwards compatibility with clients (such as [Telegraf's InfluxDB v2 output plugin](/telegraf/v1/plugins/#output-influxdb_v2) and [InfluxDB v2 API client libraries](/influxdb3/version/reference/client-libraries/v2/)) that can write data to InfluxDB OSS v2.x and Cloud 2 (TSM). {{}} From d9dc238f8b14dc6acd19e007bc1d2c24a81c1087 Mon Sep 17 00:00:00 2001 From: Jason Stirnaman Date: Wed, 16 Apr 2025 14:36:31 -0500 Subject: [PATCH 41/44] Update content/shared/v3-core-get-started/_index.md Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- content/shared/v3-core-get-started/_index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/shared/v3-core-get-started/_index.md b/content/shared/v3-core-get-started/_index.md index 5f02564b8..4fa6f80b5 100644 --- a/content/shared/v3-core-get-started/_index.md +++ b/content/shared/v3-core-get-started/_index.md @@ -498,7 +498,7 @@ For more information about the ingest path and data flow, see [Data durability]( {{% /tab-content %}} {{% tab-content %}} -The `/api/v2/write` InfluxDB v2 compatibility endpoint provides backwards compatibility with clients (such as[Telegraf's InfluxDB v2 output plugin](/telegraf/v1/plugins/#output-influxdb_v2) and [InfluxDB v2 API client libraries](/influxdb3/version/reference/client-libraries/v2/)) that can write data to InfluxDB OSS v2.x and Cloud 2 (TSM). +The `/api/v2/write` InfluxDB v2 compatibility endpoint provides backwards compatibility with clients (such as [Telegraf's InfluxDB v2 output plugin](/telegraf/v1/plugins/#output-influxdb_v2) and [InfluxDB v2 API client libraries](/influxdb3/version/reference/client-libraries/v2/)) that can write data to InfluxDB OSS v2.x and Cloud 2 (TSM). {{}} From 735c843ff0fd41f13031849f9ebec88a86449a3a Mon Sep 17 00:00:00 2001 From: Scott Anderson Date: Thu, 17 Apr 2025 08:49:02 -0600 Subject: [PATCH 42/44] InfluxDB OSS and InfluxDB Enterprise 1.12.0 (#5992) * rework v1 configuration docs and links * fixing md lint errors * fix more md lint errors * updates release notes and new functionality * fixed md lint errors * added enterprise 1.12.0 release notes and config updates * fixed release notes for md lint * add influxql updates for oss and enterprise 1.12.0 * Apply suggestions from code review Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * ported new oss v1 config to enterprise v1 --------- Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- .../v1/about-the-project/release-notes.md | 83 +- .../configure/config-data-nodes.md | 37 + .../v1/query_language/manage-database.md | 76 +- .../v1/query_language/spec.md | 43 +- .../v1/tools/influx_inspect.md | 187 +- .../v1/tools/influxd-ctl/show-shards.md | 6 +- .../v1/about_the_project/release-notes.md | 85 +- .../v1/administration/backup_and_restore.md | 4 +- content/influxdb/v1/administration/config.md | 1572 ++++++++++------- content/influxdb/v1/administration/ports.md | 12 +- .../administration/subscription-management.md | 2 +- .../v1/concepts/file-system-layout.md | 6 +- .../influxdb/v1/concepts/storage_engine.md | 6 +- .../v1/guides/downsample_and_retain.md | 2 +- .../v1/query_language/manage-database.md | 76 +- content/influxdb/v1/query_language/spec.md | 48 +- .../v1/supported_protocols/prometheus.md | 2 +- content/influxdb/v1/tools/api.md | 4 +- content/influxdb/v1/tools/influx_inspect.md | 71 +- content/influxdb/v1/troubleshooting/errors.md | 18 +- .../frequently-asked-questions.md | 96 +- .../tools/measurements-internal.md | 3 + data/products.yml | 6 +- 23 files changed, 1532 insertions(+), 913 deletions(-) diff --git a/content/enterprise_influxdb/v1/about-the-project/release-notes.md b/content/enterprise_influxdb/v1/about-the-project/release-notes.md index 6edaa9e4d..fe2f32ba1 100644 --- a/content/enterprise_influxdb/v1/about-the-project/release-notes.md +++ b/content/enterprise_influxdb/v1/about-the-project/release-notes.md @@ -9,6 +9,60 @@ menu: parent: About the project --- +## v1.12.0 {date="2025-04-15"} + +## Features + +- Add additional log output when using + [`influx_inspect buildtsi`](/enterprise_influxdb/v1/tools/influx_inspect/#buildtsi) to + rebuild the TSI index. +- Use [`influx_inspect export`](/enterprise_influxdb/v1/tools/influx_inspect/#export) with + [`-tsmfile` option](/enterprise_influxdb/v1/tools/influx_inspect/#--tsmfile-tsm_file-) to + export a single TSM file. +- Add `-m` flag to the [`influxd-ctl show-shards` command](/enterprise_influxdb/v1/tools/influxd-ctl/show-shards/) + to output inconsistent shards. +- Allow the specification of a write window for retention policies. +- Add `fluxQueryRespBytes` metric to the `/debug/vars` metrics endpoint. +- Log whenever meta gossip times exceed expiration. +- Add [`query-log-path` configuration option](/enterprise_influxdb/v1/administration/configure/config-data-nodes/#query-log-path) + to data nodes. +- Add [`aggressive-points-per-block` configuration option](/influxdb/v1/administration/config/#aggressive-points-per-block) + to prevent TSM files from not getting fully compacted. +- Log TLS configuration settings on startup. +- Check for TLS certificate and private key permissions. +- Add a warning if the TLS certificate is expired. +- Add authentication to the Raft portal and add the following related _data_ + node configuration options: + - [`[meta].raft-portal-auth-required`](/enterprise_influxdb/v1/administration/configure/config-data-nodes/#raft-portal-auth-required) + - [`[meta].raft-dialer-auth-required`](/enterprise_influxdb/v1/administration/configure/config-data-nodes/#raft-dialer-auth-required) +- Improve error handling. +- InfluxQL updates: + - Delete series by retention policy. + - Allow retention policies to discard writes that fall within their range, but + outside of [`FUTURE LIMIT`](/enterprise_influxdb/v1/query_language/manage-database/#future-limit) + and [`PAST LIMIT`](/enterprise_influxdb/v1/query_language/manage-database/#past-limit). + +## Bug fixes + +- Log rejected writes to subscriptions. +- Update `xxhash` and avoid `stringtoslicebyte` in the cache. +- Prevent a panic when a shard group has no shards. +- Fix file handle leaks in `Compactor.write`. +- Ensure fields in memory match the fields on disk. +- Ensure temporary files are removed after failed compactions. +- Do not panic on invalid multiple subqueries. +- Update the `/shard-status` API to return the correct result and use a + consistent "idleness" definition for shards. + +## Other + +- Update Go to 1.23.5. +- Upgrade Flux to v0.196.1. +- Upgrade InfluxQL to v1.4.1. +- Various other dependency updates. + +--- + {{% note %}} #### InfluxDB Enterprise and FIPS-compliance @@ -21,6 +75,10 @@ InfluxDB Enterprise builds are available. For more information, see ## v1.11.8 {date="2024-11-15"} +### Features + +- Add a startup logger to InfluxDB Enterprise data nodes. + ### Bug Fixes - Strip double quotes from measurement names in the [`/api/v2/delete` compatibility @@ -28,6 +86,8 @@ InfluxDB Enterprise builds are available. For more information, see string comparisons (e.g. to allow special characters in measurement names). - Enable SHA256 for FIPS RPMs. +--- + ## v1.11.7 {date="2024-09-19"} ### Bug Fixes @@ -581,7 +641,7 @@ in that there is no corresponding InfluxDB OSS release. ### Features - Upgrade to Go 1.15.10. -- Support user-defined *node labels*. +- Support user-defined _node labels_. Node labels let you assign arbitrary key-value pairs to meta and data nodes in a cluster. For instance, an operator might want to label nodes with the availability zone in which they're located. - Improve performance of `SHOW SERIES CARDINALITY` and `SHOW SERIES CARDINALITY from ` InfluxQL queries. @@ -756,11 +816,15 @@ For details on changes incorporated from the InfluxDB OSS release, see ### Features -#### **Back up meta data only** +#### Back up meta data only -- Add option to back up **meta data only** (users, roles, databases, continuous queries, and retention policies) using the new `-strategy` flag and `only meta` option: `influx ctl backup -strategy only meta `. +- Add option to back up **meta data only** (users, roles, databases, continuous + queries, and retention policies) using the new `-strategy` flag and `only meta` + option: `influx ctl backup -strategy only meta `. - > **Note:** To restore a meta data backup, use the `restore -full` command and specify your backup manifest: `influxd-ctl restore -full `. + > [!Note] + > To restore a meta data backup, use the `restore -full` command and specify + > your backup manifest: `influxd-ctl restore -full `. For more information, see [Perform a metastore only backup](/enterprise_influxdb/v1/administration/backup-and-restore/#perform-a-metastore-only-backup). @@ -1007,7 +1071,10 @@ The following summarizes the expected settings for proper configuration of JWT a `""`. - A long pass phrase is recommended for better security. ->**Note:** To provide encrypted internode communication, you must enable HTTPS. Although the JWT signature is encrypted, the the payload of a JWT token is encoded, but is not encrypted. +> [!Note] +> To provide encrypted internode communication, you must enable HTTPS. Although +> the JWT signature is encrypted, the the payload of a JWT token is encoded, but +> is not encrypted. ### Bug fixes @@ -1082,8 +1149,10 @@ Please see the [InfluxDB OSS release notes](/influxdb/v1/about_the_project/relea ## v1.5.0 {date="2018-03-06"} -> ***Note:*** This release builds off of the 1.5 release of InfluxDB OSS. Please see the [InfluxDB OSS release -> notes](/influxdb/v1/about_the_project/release-notes/) for more information about the InfluxDB OSS release. +> [!Note] +> This release builds off of the 1.5 release of InfluxDB OSS. +> Please see the [InfluxDB OSS release notes](/influxdb/v1/about_the_project/release-notes/) +> for more information about the InfluxDB OSS release. For highlights of the InfluxDB 1.5 release, see [What's new in InfluxDB 1.5](/influxdb/v1/about_the_project/whats_new/). diff --git a/content/enterprise_influxdb/v1/administration/configure/config-data-nodes.md b/content/enterprise_influxdb/v1/administration/configure/config-data-nodes.md index c45d343f7..ecddbd49c 100644 --- a/content/enterprise_influxdb/v1/administration/configure/config-data-nodes.md +++ b/content/enterprise_influxdb/v1/administration/configure/config-data-nodes.md @@ -259,6 +259,29 @@ For detailed configuration information, see [`meta.ensure-fips`](/enterprise_inf Environment variable: `INFLUXDB_META_ENSURE_FIPS` +#### raft-portal-auth-required {metadata="v1.12.0+"} + +Default is `false`. + +Require Raft clients to authenticate with server using the +[`meta-internal-shared-secret`](#meta-internal-shared-secret). +This requires that all meta nodes are running InfluxDB Enterprise v1.12.0+ and +are configured with the correct `meta-internal-shared-secret`. + +Environment variable: `INFLUXDB_META_RAFT_PORTAL_AUTH_REQUIRED` + +#### raft-dialer-auth-required {metadata="v1.12.0+"} + +Default is `false`. + +Require Raft servers to authenticate Raft clients using the +[`meta-internal-shared-secret`](#meta-internal-shared-secret). +This requires that all meta nodes are running InfluxDB Enterprise v1.12.0+, have +`raft-portal-auth-required=true`, and are configured with the correct +`meta-internal-shared-secret`. + +Environment variable: `INFLUXDB_META_RAFT_DIALER_AUTH_REQUIRED` + ----- ## Data settings @@ -305,6 +328,8 @@ Environment variable: `INFLUXDB_DATA_QUERY_LOG_ENABLED` #### query-log-path +Default is `""`. + An absolute path to the query log file. The default is `""` (queries aren't logged to a file). @@ -326,6 +351,8 @@ The following is an example of a `logrotate` configuration: } ``` +Environment variable: `INFLUXDB_DATA_QUERY_LOG_PATH` + #### wal-fsync-delay Default is `"0s"`. @@ -422,6 +449,16 @@ The duration at which to compact all TSM and TSI files in a shard if it has not Environment variable: `INFLUXDB_DATA_COMPACT_FULL_WRITE_COLD_DURATION` +#### aggressive-points-per-block {metadata="v1.12.0+"} + +Default is `10000`. + +The number of points per block to use during aggressive compaction. There are +certain cases where TSM files do not get fully compacted. This adjusts an +internal parameter to help ensure these files do get fully compacted. + +Environment variable: `INFLUXDB_DATA_AGGRESSIVE_POINTS_PER_BLOCK` + #### index-version Default is `"inmem"`. diff --git a/content/enterprise_influxdb/v1/query_language/manage-database.md b/content/enterprise_influxdb/v1/query_language/manage-database.md index 73d5ce7fc..f6161716b 100644 --- a/content/enterprise_influxdb/v1/query_language/manage-database.md +++ b/content/enterprise_influxdb/v1/query_language/manage-database.md @@ -62,17 +62,22 @@ Creates a new database. #### Syntax ```sql -CREATE DATABASE [WITH [DURATION ] [REPLICATION ] [SHARD DURATION ] [NAME ]] +CREATE DATABASE [WITH [DURATION ] [REPLICATION ] [SHARD DURATION ] [PAST LIMIT ] [FUTURE LIMIT ] [NAME ]] ``` #### Description of syntax `CREATE DATABASE` requires a database [name](/enterprise_influxdb/v1/troubleshooting/frequently-asked-questions/#what-words-and-characters-should-i-avoid-when-writing-data-to-influxdb). -The `WITH`, `DURATION`, `REPLICATION`, `SHARD DURATION`, and `NAME` clauses are optional and create a single [retention policy](/enterprise_influxdb/v1/concepts/glossary/#retention-policy-rp) associated with the created database. -If you do not specify one of the clauses after `WITH`, the relevant behavior defaults to the `autogen` retention policy settings. +The `WITH`, `DURATION`, `REPLICATION`, `SHARD DURATION`, `PAST LIMIT`, +`FUTURE LIMIT, and `NAME` clauses are optional and create a single +[retention policy](/enterprise_influxdb/v1/concepts/glossary/#retention-policy-rp) +associated with the created database. +If you do not specify one of the clauses after `WITH`, the relevant behavior +defaults to the `autogen` retention policy settings. The created retention policy automatically serves as the database's default retention policy. -For more information about those clauses, see [Retention Policy Management](/enterprise_influxdb/v1/query_language/manage-database/#retention-policy-management). +For more information about those clauses, see +[Retention Policy Management](/enterprise_influxdb/v1/query_language/manage-database/#retention-policy-management). A successful `CREATE DATABASE` query returns an empty result. If you attempt to create a database that already exists, InfluxDB does nothing and does not return an error. @@ -122,21 +127,25 @@ The `DROP SERIES` query deletes all points from a [series](/enterprise_influxdb/ and it drops the series from the index. The query takes the following form, where you must specify either the `FROM` clause or the `WHERE` clause: + ```sql DROP SERIES FROM WHERE ='' ``` Drop all series from a single measurement: + ```sql > DROP SERIES FROM "h2o_feet" ``` Drop series with a specific tag pair from a single measurement: + ```sql > DROP SERIES FROM "h2o_feet" WHERE "location" = 'santa_monica' ``` Drop all points in the series that have a specific tag pair from all measurements in the database: + ```sql > DROP SERIES WHERE "location" = 'santa_monica' ``` @@ -152,35 +161,49 @@ Unlike You must include either the `FROM` clause, the `WHERE` clause, or both: -``` +```sql DELETE FROM WHERE [=''] | [