fix(monolith): add configurable db, table, and column limits to enterprise
parent
2247ab5b61
commit
4d5d509234
|
@ -13,4 +13,4 @@ source: /shared/influxdb3-cli/config-options.md
|
|||
|
||||
<!-- The content of this file is at
|
||||
//SOURCE - content/shared/influxdb3-cli/config-options.md
|
||||
-->
|
||||
-->
|
||||
|
|
|
@ -13,7 +13,7 @@ stored. Each database can contain multiple tables.
|
|||
> **If coming from InfluxDB v2, InfluxDB Cloud (TSM), or InfluxDB Cloud Serverless**,
|
||||
> _database_ and _bucket_ are synonymous.
|
||||
|
||||
<!--
|
||||
{{% show-in "enterprise" %}}
|
||||
## Retention periods
|
||||
|
||||
A database **retention period** is the maximum age of data stored in the database.
|
||||
|
@ -22,10 +22,9 @@ When a point's timestamp is beyond the retention period (relative to now), the
|
|||
point is marked for deletion and is removed from the database the next time the
|
||||
retention enforcement service runs.
|
||||
|
||||
The _minimum_ retention period for an InfluxDB database is 1 hour.
|
||||
The _maximum_ retention period is infinite meaning data does not expire and will
|
||||
never be removed by the retention enforcement service.
|
||||
-->
|
||||
The _maximum_ retention period is infinite (`none`) meaning data does not expire
|
||||
and will never be removed by the retention enforcement service.
|
||||
{{% /show-in %}}
|
||||
|
||||
## Database, table, and column limits
|
||||
|
||||
|
@ -40,9 +39,11 @@ never be removed by the retention enforcement service.
|
|||
**Maximum number of tables across all databases**: {{% influxdb3/limit "table" %}}
|
||||
|
||||
{{< product-name >}} limits the number of tables you can have across _all_
|
||||
databases to {{% influxdb3/limit "table" %}}. There is no specific limit on how
|
||||
many tables you can have in an individual database, as long as the total across
|
||||
all databases is below the limit.
|
||||
databases to {{% influxdb3/limit "table" %}}{{% show-in "enterprise" %}} by default{{% /show-in %}}.
|
||||
{{% show-in "enterprise" %}}You can configure the table limit using the
|
||||
[`--num-table-limit` configuration option](/influxdb3/enterprise/reference/config-options/#num-table-limit).{{% /show-in %}}
|
||||
InfluxDB doesn't limit how many tables you can have in an individual database,
|
||||
as long as the total across all databases is below the limit.
|
||||
|
||||
Having more tables affects your {{% product-name %}} installation in the
|
||||
following ways:
|
||||
|
@ -64,7 +65,8 @@ persists data to Parquet files. Each `PUT` request incurs a monetary cost and
|
|||
increases the operating cost of {{< product-name >}}.
|
||||
|
||||
{{% /expand %}}
|
||||
{{% expand "**More work for the compactor** _(Enterprise only)_ <em style='opacity:.5;font-weight:normal;'>View more info</em>" %}}
|
||||
{{% show-in "enterprise" %}}
|
||||
{{% expand "**More work for the compactor** <em style='opacity:.5;font-weight:normal;'>View more info</em>" %}}
|
||||
|
||||
To optimize storage over time, InfluxDB 3 Enterprise has a compactor that
|
||||
routinely compacts Parquet files.
|
||||
|
@ -72,6 +74,7 @@ With more tables and Parquet files to compact, the compactor may need to be scal
|
|||
to keep up with demand, adding to the operating cost of InfluxDB 3 Enterprise.
|
||||
|
||||
{{% /expand %}}
|
||||
{{% /show-in %}}
|
||||
{{< /expand-wrapper >}}
|
||||
|
||||
### Column limit
|
||||
|
@ -80,11 +83,17 @@ to keep up with demand, adding to the operating cost of InfluxDB 3 Enterprise.
|
|||
|
||||
Each row must include a time column, with the remaining columns representing
|
||||
tags and fields.
|
||||
As a result, a table can have one time column and up to {{% influxdb3/limit "column" -1 %}}
|
||||
As a result,{{% show-in "enterprise" %}} by default,{{% /show-in %}} a table can
|
||||
have one time column and up to {{% influxdb3/limit "column" -1 %}}
|
||||
_combined_ field and tag columns.
|
||||
If you attempt to write to a table and exceed the column limit, the write
|
||||
request fails and InfluxDB returns an error.
|
||||
|
||||
{{% show-in "enterprise" %}}
|
||||
You can configure the maximum number of columns per
|
||||
table using the [`num-total-columns-per-table-limit` configuration option](/influxdb3/enterprise/reference/config-options/#num-total-columns-per-table-limit).
|
||||
{{% /show-in %}}
|
||||
|
||||
Higher numbers of columns has the following side-effects:
|
||||
|
||||
{{< expand-wrapper >}}
|
||||
|
|
|
@ -130,7 +130,12 @@ database_name/retention_policy_name
|
|||
|
||||
## Database limit
|
||||
|
||||
{{% show-in "enterprise" %}}
|
||||
**Default maximum number of databases**: {{% influxdb3/limit "database" %}}
|
||||
{{% /show-in %}}
|
||||
{{% show-in "core" %}}
|
||||
**Maximum number of databases**: {{% influxdb3/limit "database" %}}
|
||||
{{% /show-in %}}
|
||||
|
||||
_For more information about {{< product-name >}} database, table, and column limits,
|
||||
see [Database, table, and column limits](/influxdb3/version/admin/databases/#database-table-and-column-limits)._
|
||||
|
|
|
@ -53,6 +53,10 @@ influxdb3 serve
|
|||
- [tls-minimum-versions](#tls-minimum-version)
|
||||
- [without-auth](#without-auth)
|
||||
- [disable-authz](#disable-authz)
|
||||
{{% show-in "enterprise" %}}
|
||||
- [num-database-limit](#num-database-limit)
|
||||
- [num-table-limit](#num-table-limit)
|
||||
- [num-total-columns-per-table-limit](#num-total-columns-per-table-limit){{% /show-in %}}
|
||||
- [AWS](#aws)
|
||||
- [aws-access-key-id](#aws-access-key-id)
|
||||
- [aws-secret-access-key](#aws-secret-access-key)
|
||||
|
@ -204,7 +208,7 @@ This value must be different than the [`--node-id`](#node-id) value.
|
|||
|
||||
#### data-dir
|
||||
|
||||
For the `file` object store, defines the location InfluxDB 3 uses to store files locally.
|
||||
For the `file` object store, defines the location {{< product-name >}} uses to store files locally.
|
||||
Required when using the `file` [object store](#object-store).
|
||||
|
||||
| influxdb3 serve option | Environment variable |
|
||||
|
@ -216,7 +220,7 @@ Required when using the `file` [object store](#object-store).
|
|||
{{% show-in "enterprise" %}}
|
||||
#### license-email
|
||||
|
||||
Specifies the email address to associate with your InfluxDB 3 Enterprise license
|
||||
Specifies the email address to associate with your {{< product-name >}} license
|
||||
and automatically responds to the interactive email prompt when the server starts.
|
||||
This option is mutually exclusive with [license-file](#license-file).
|
||||
|
||||
|
@ -228,7 +232,7 @@ This option is mutually exclusive with [license-file](#license-file).
|
|||
|
||||
#### license-file
|
||||
|
||||
Specifies the path to a license file for InfluxDB 3 Enterprise. When provided, the license
|
||||
Specifies the path to a license file for {{< product-name >}}. When provided, the license
|
||||
file's contents are used instead of requesting a new license.
|
||||
This option is mutually exclusive with [license-email](#license-email).
|
||||
|
||||
|
@ -361,10 +365,44 @@ The server processes all requests without requiring tokens or authentication.
|
|||
Optionally disable authz by passing in a comma separated list of resources.
|
||||
Valid values are `health`, `ping`, and `metrics`.
|
||||
|
||||
| influxdb3 serve option | Environment variable |
|
||||
| :--------------------- | :----------------------- |
|
||||
| `--disable-authz` | `INFLUXDB3_DISABLE_AUTHZ`|
|
||||
| influxdb3 serve option | Environment variable |
|
||||
| :--------------------- | :------------------------ |
|
||||
| `--disable-authz` | `INFLUXDB3_DISABLE_AUTHZ` |
|
||||
|
||||
{{% show-in "enterprise" %}}
|
||||
---
|
||||
|
||||
#### num-database-limit
|
||||
|
||||
Limits the total number of active databases.
|
||||
Default is {{% influxdb3/limit "database" %}}.
|
||||
|
||||
| influxdb3 serve option | Environment variable |
|
||||
| :---------------------- | :---------------------------------------- |
|
||||
| `--num-database-limit` | `INFLUXDB3_ENTERPRISE_NUM_DATABASE_LIMIT` |
|
||||
|
||||
---
|
||||
|
||||
#### num-table-limit
|
||||
|
||||
Limits the total number of active tables across all databases.
|
||||
Default is {{% influxdb3/limit "table" %}}.
|
||||
|
||||
| influxdb3 serve option | Environment variable |
|
||||
| :--------------------- | :------------------------------------- |
|
||||
| `--num-table-limit` | `INFLUXDB3_ENTERPRISE_NUM_TABLE_LIMIT` |
|
||||
|
||||
---
|
||||
|
||||
#### num-total-columns-per-table-limit
|
||||
|
||||
Limits the total number of columns per table.
|
||||
Default is {{% influxdb3/limit "column" %}}.
|
||||
|
||||
| influxdb3 serve option | Environment variable |
|
||||
| :------------------------------------ | :------------------------------------------------------- |
|
||||
| `--num-total-columns-per-table-limit` | `INFLUXDB3_ENTERPRISE_NUM_TOTAL_COLUMNS_PER_TABLE_LIMIT` |
|
||||
{{% /show-in %}}
|
||||
---
|
||||
|
||||
### AWS
|
||||
|
|
Loading…
Reference in New Issue