Resolve conflicts in get-started
parent
c9bc5e1e8e
commit
6abda20ca0
|
|
@ -1,17 +1,17 @@
|
|||
### Query data
|
||||
|
||||
InfluxDB 3 supports native SQL for querying, in addition to InfluxQL, an
|
||||
SQL-like language customized for time series queries.
|
||||
<!-- COMMENT TO ALLOW STARTING WITH SHORTCODE -->
|
||||
{{% product-name %}} supports both native SQL and InfluxQL for querying data. InfluxQL is
|
||||
an SQL-like query language designed for InfluxDB v1 and customized for time
|
||||
series queries.
|
||||
|
||||
{{% show-in "core" %}}
|
||||
{{< product-name >}} limits
|
||||
query time ranges to 72 hours (both recent and historical) to ensure query performance.
|
||||
For more information about the 72-hour limitation, see the
|
||||
[update on InfluxDB 3 Core’s 72-hour limitation](https://www.influxdata.com/blog/influxdb3-open-source-public-alpha-jan-27/).
|
||||
query time ranges to approximately 72 hours (both recent and historical) to
|
||||
ensure query performance. For more information about the 72-hour limitation, see
|
||||
the [update on InfluxDB 3 Core’s 72-hour limitation](https://www.influxdata.com/blog/influxdb3-open-source-public-alpha-jan-27/).
|
||||
{{% /show-in %}}
|
||||
|
||||
> [!Note]
|
||||
> Flux, the language introduced in InfluxDB 2.0, is **not** supported in InfluxDB 3.
|
||||
> Flux, the language introduced in InfluxDB v2, is **not** supported in InfluxDB 3.
|
||||
|
||||
<!-- TOC -->
|
||||
|
||||
|
|
@ -34,7 +34,12 @@ To get started querying data in {{% product-name %}}, use the
|
|||
[`influxdb3 query` command](/influxdb3/version/reference/cli/influxdb3/query/)
|
||||
and provide the following:
|
||||
|
||||
The `query` subcommand includes options to help ensure that the right database is queried with the correct permissions. Only the `--database` option is required, but depending on your specific setup, you may need to pass other options, such as host, port, and token.
|
||||
- `-H`, `--host`: The host URL of the server _(default is `http://127.0.0.1:8181`)_
|
||||
- `-d`, `--database`: _({{% req %}})_ The name of the database to query
|
||||
- `-l`, `--language`: The query language of the provided query string
|
||||
- `sql` _(default)_
|
||||
- `influxql`
|
||||
- SQL or InfluxQL query as a string
|
||||
|
||||
> [!Important]
|
||||
> If the `INFLUXDB3_AUTH_TOKEN` environment variable defined in
|
||||
|
|
@ -42,62 +47,41 @@ The `query` subcommand includes options to help ensure that the right database i
|
|||
> isn't set in your environment, set it or provide your token using
|
||||
> the `-t, --token` option in your command.
|
||||
|
||||
#### Example: query `“SHOW TABLES”` on the `servers` database:
|
||||
|
||||
```console
|
||||
$ influxdb3 query --database servers "SHOW TABLES"
|
||||
+---------------+--------------------+--------------+------------+
|
||||
| table_catalog | table_schema | table_name | table_type |
|
||||
+---------------+--------------------+--------------+------------+
|
||||
| public | iox | cpu | BASE TABLE |
|
||||
| public | information_schema | tables | VIEW |
|
||||
| public | information_schema | views | VIEW |
|
||||
| public | information_schema | columns | VIEW |
|
||||
| public | information_schema | df_settings | VIEW |
|
||||
| public | information_schema | schemata | VIEW |
|
||||
+---------------+--------------------+--------------+------------+
|
||||
```
|
||||
|
||||
#### Example: query the `cpu` table, limiting to 10 rows:
|
||||
|
||||
```console
|
||||
$ influxdb3 query --database servers "SELECT DISTINCT usage_percent, time FROM cpu LIMIT 10"
|
||||
+---------------+---------------------+
|
||||
| usage_percent | time |
|
||||
+---------------+---------------------+
|
||||
| 63.4 | 2024-02-21T19:25:00 |
|
||||
| 25.3 | 2024-02-21T19:06:40 |
|
||||
| 26.5 | 2024-02-21T19:31:40 |
|
||||
| 70.1 | 2024-02-21T19:03:20 |
|
||||
| 83.7 | 2024-02-21T19:30:00 |
|
||||
| 55.2 | 2024-02-21T19:00:00 |
|
||||
| 80.5 | 2024-02-21T19:05:00 |
|
||||
| 60.2 | 2024-02-21T19:33:20 |
|
||||
| 20.5 | 2024-02-21T18:58:20 |
|
||||
| 85.2 | 2024-02-21T19:28:20 |
|
||||
+---------------+---------------------+
|
||||
```
|
||||
|
||||
### Query using the CLI for InfluxQL
|
||||
|
||||
[InfluxQL](/influxdb3/version/reference/influxql/) is an SQL-like language developed by InfluxData with specific features tailored for leveraging and working with InfluxDB. It’s compatible with all versions of InfluxDB, making it a good choice for interoperability across different InfluxDB installations.
|
||||
|
||||
To query using InfluxQL, enter the `influxdb3 query` subcommand and specify `influxql` in the language option--for example:
|
||||
To query the home sensor sample data you wrote in
|
||||
[Write data to {{% product-name %}}](/influxdb3/version/get-started/write/#write-data-using-the-cli),
|
||||
run the following command:
|
||||
|
||||
{{% code-placeholders "DATABASE_NAME|AUTH_TOKEN" %}}
|
||||
|
||||
{{< code-tabs-wrapper >}}
|
||||
{{% code-tabs %}}
|
||||
[SQL](#)
|
||||
[InfluxQL](#)
|
||||
{{% /code-tabs %}}
|
||||
{{% code-tab-content %}}
|
||||
|
||||
<!-- pytest.mark.skip -->
|
||||
```bash
|
||||
influxdb3 query \
|
||||
--database DATABASE_NAME \
|
||||
--token AUTH_TOKEN \
|
||||
--language influxql \
|
||||
"SELECT DISTINCT usage_percent FROM cpu WHERE time >= now() - 1d"
|
||||
"SELECT * FROM home ORDER BY time"
|
||||
```
|
||||
{{% /code-tab-content %}}
|
||||
{{% code-tab-content %}}
|
||||
<!-- pytest.mark.skip -->
|
||||
```bash
|
||||
influxdb3 query \
|
||||
--database DATABASE_NAME \
|
||||
--language influxql \
|
||||
"SELECT * FROM home"
|
||||
```
|
||||
{{% /code-tab-content %}}
|
||||
{{< /code-tabs-wrapper >}}
|
||||
|
||||
{{% /code-placeholders %}}
|
||||
|
||||
Replace the following placeholders with your values:
|
||||
|
||||
- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: the name of the database to query
|
||||
- {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}: your {{% token-link "database" %}}{{% show-in "enterprise" %}} with permission to query the specified database{{% /show-in %}}
|
||||
_Replace {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}
|
||||
with the name of the database to query._
|
||||
|
||||
To query from a specific time range, use the `WHERE` clause to designate the
|
||||
boundaries of your time range.
|
||||
|
|
|
|||
|
|
@ -27,20 +27,6 @@ Use the [`influxdb3 serve` command](/influxdb3/version/reference/cli/influxdb3/s
|
|||
to start {{% product-name %}}.
|
||||
Provide the following:
|
||||
|
||||
- `--object-store`: Specifies the type of object store to use.
|
||||
InfluxDB supports the following:
|
||||
|
||||
- `file` _(default)_: local file system
|
||||
- `memory`: in memory _(no object persistence)_
|
||||
- `memory-throttled`: like `memory` but with latency and throughput that
|
||||
somewhat resembles a cloud-based object store
|
||||
- `s3`: AWS S3 and S3-compatible services like Ceph or Minio
|
||||
- `google`: Google Cloud Storage
|
||||
- `azure`: Azure Blob Storage
|
||||
{{% show-in "core" %}}
|
||||
- `--node-id`: A string identifier that distinguishes individual server instances.
|
||||
This forms the final part of the storage path: `<CONFIGURED_PATH>/<NODE_ID>`.
|
||||
{{% /show-in %}}
|
||||
{{% show-in "enterprise" %}}
|
||||
- `--node-id`: A string identifier that distinguishes individual server
|
||||
instances within the cluster. This forms the final part of the storage path:
|
||||
|
|
@ -51,11 +37,24 @@ Provide the following:
|
|||
The storage path follows the pattern `<CONFIGURED_PATH>/<CLUSTER_ID>/<NODE_ID>`.
|
||||
In a multi-node setup, this ID is used to reference the entire cluster.
|
||||
{{% /show-in %}}
|
||||
{{% show-in "core" %}}
|
||||
- `--node-id`: A string identifier that distinguishes individual server instances.
|
||||
This forms the final part of the storage path: `<CONFIGURED_PATH>/<NODE_ID>`.
|
||||
{{% /show-in %}}
|
||||
- `--object-store`: Specifies the type of object store to use.
|
||||
InfluxDB supports the following:
|
||||
|
||||
- `file` _(default)_: local file system
|
||||
- `memory`: in memory _(no object persistence)_
|
||||
- `memory-throttled`: like `memory` but with latency and throughput that
|
||||
somewhat resembles a cloud-based object store
|
||||
- `s3`: AWS S3 and S3-compatible services like Ceph or Minio
|
||||
- `google`: Google Cloud Storage
|
||||
- `azure`: Azure Blob Storage
|
||||
|
||||
### Configure for your object store
|
||||
|
||||
Depending on the object store type, you may need to provide additional
|
||||
options, such as access credentials, for your object store configuration.
|
||||
> [!Note]
|
||||
> Examples in this getting started guide use the `file` object
|
||||
> store to persist data to your local disk.
|
||||
|
||||
The following examples show how to start {{% product-name %}} with different
|
||||
object store configurations.
|
||||
|
|
@ -73,10 +72,32 @@ object store configurations.
|
|||
> separation between clusters and individual nodes.
|
||||
> {{% /show-in %}}
|
||||
|
||||
_For this getting started guide, use the `file` object store to persist data to
|
||||
your local disk._
|
||||
For this getting started guide, use the `file` object store to persist data to
|
||||
your local disk.
|
||||
|
||||
### Object store examples
|
||||
{{% show-in "enterprise" %}}
|
||||
```bash
|
||||
# File system object store
|
||||
# Provide the filesystem directory
|
||||
influxdb3 serve \
|
||||
--node-id host01 \
|
||||
--cluster-id cluster01 \
|
||||
--object-store file \
|
||||
--data-dir ~/.influxdb3
|
||||
```
|
||||
{{% /show-in %}}
|
||||
{{% show-in "core" %}}
|
||||
```bash
|
||||
# File system object store
|
||||
# Provide the file system directory
|
||||
influxdb3 serve \
|
||||
--node-id host01 \
|
||||
--object-store file \
|
||||
--data-dir ~/.influxdb3
|
||||
```
|
||||
{{% /show-in %}}
|
||||
|
||||
### {{% product-name %}} store examples
|
||||
|
||||
{{< expand-wrapper >}}
|
||||
{{% expand "File system object store" %}}
|
||||
|
|
@ -339,11 +360,16 @@ influxdb3 serve --help
|
|||
## Set up licensing
|
||||
|
||||
When you first start a new instance, {{% product-name %}} prompts you to select a
|
||||
license type. InfluxDB 3 Enterprise licenses authorize the use of the
|
||||
InfluxDB 3 Enterprise 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 InfluxDB 3 Enterprise
|
||||
license types are available:
|
||||
|
||||
license type.
|
||||
|
||||
InfluxDB 3 Enterprise licenses:
|
||||
|
||||
- **Authorize** usage of InfluxDB 3 Enterprise software for a single cluster.
|
||||
- **Apply per cluster**, with limits based primarily on CPU cores.
|
||||
- **Vary by license type**, each offering different capabilities and restrictions.
|
||||
|
||||
### Available license types:
|
||||
|
||||
- **Trial**: 30-day trial license with full access to InfluxDB 3 Enterprise capabilities.
|
||||
- **At-Home**: For at-home hobbyist use with limited access to InfluxDB 3 Enterprise capabilities.
|
||||
|
|
@ -356,32 +382,8 @@ license types are available:
|
|||
> you start a new instance, provide your email address with the
|
||||
> `--license-email` option or the
|
||||
> `INFLUXDB3_LICENSE_EMAIL` environment variable to bypass the licensing
|
||||
> email prompt--for example:
|
||||
> email prompt--for example, in a Docker Compose file:
|
||||
>
|
||||
> {{< code-tabs-wrapper >}}
|
||||
> {{% code-tabs %}}
|
||||
> [Docker CLI](#)
|
||||
> [Docker Compose file](#)
|
||||
> {{% /code-tabs %}}
|
||||
> {{% code-tab-content %}}
|
||||
> {{% code-placeholders "EMAIL_ADDRESS" %}}
|
||||
> ```bash
|
||||
> docker run -d --name influxdb3-enterprise \
|
||||
> -v "$PWD/data:/var/lib/influxdb3" \
|
||||
> -v "$PWD/plugins:/plugins" \
|
||||
> -p 8181:8181 \
|
||||
> quay.io/influxdb/influxdb3-enterprise:latest \
|
||||
> serve \
|
||||
> --cluster-id cluster1 \
|
||||
> --node-id node1 \
|
||||
> --plugin-dir /plugins \
|
||||
> --object-store file \
|
||||
> --data-dir /var/lib/influxdb3
|
||||
> ```
|
||||
> {{% /code-placeholders %}}
|
||||
> - Replace {{% code-placeholder-key %}}`EMAIL_ADDRESS`{{% /code-placeholder-key %}} with the email you want to associate with the license.
|
||||
> {{% /code-tab-content %}}
|
||||
> {{% code-tab-content %}}
|
||||
> {{% code-placeholders "EMAIL_ADDRESS" %}}
|
||||
> ```yaml
|
||||
> # compose.yaml
|
||||
|
|
@ -404,9 +406,7 @@ license types are available:
|
|||
> {{% /code-placeholders %}}
|
||||
> {{% code-placeholder-key %}}`EMAIL_ADDRESS`{{% /code-placeholder-key %}} is
|
||||
> the email you want to associate with the license. This example shows how
|
||||
> to reference an email address set in your `.env` file.
|
||||
> {{% /code-tab-content %}}
|
||||
> {{< /code-tabs-wrapper >}}
|
||||
> to reference a variable in your `.env` file.
|
||||
>
|
||||
> _Currently, if you use the prompt to enter your email address, a bug may
|
||||
> prevent the container from generating the license ._
|
||||
|
|
|
|||
|
|
@ -1,12 +1,16 @@
|
|||
### Write data
|
||||
<!-- ALLOW SHORTCODE -->
|
||||
|
||||
InfluxDB is a schema-on-write database. You can start writing data and InfluxDB creates the logical database, tables, and their schemas on the fly.
|
||||
After a schema is created, InfluxDB validates future write requests against it before accepting the data.
|
||||
Subsequent requests can add new fields on-the-fly, but can't add new tags.
|
||||
{{% product-name %}} is designed for high write-throughput and uses an efficient,
|
||||
human-readable write syntax called _[line protocol](#line-protocol)_. InfluxDB
|
||||
is a schema-on-write database, meaning you can start writing data and InfluxDB
|
||||
creates the logical database, tables, and their schemas automatically, without
|
||||
any required intervention. Once InfluxDB creates the schema, it validates future
|
||||
write requests against the schema before accepting new data.
|
||||
Both new tags and fields can be added later as your schema changes.
|
||||
|
||||
{{% show-in "core" %}}
|
||||
> [!Note]
|
||||
> #### Core is optimized for recent data
|
||||
> #### InfluxDB 3 Core is optimized for recent data
|
||||
>
|
||||
> {{% product-name %}} is optimized for recent data but accepts writes from any time period.
|
||||
> The system persists data to Parquet files for historical analysis with [InfluxDB 3 Enterprise](/influxdb3/enterprise/get-started/) or third-party tools.
|
||||
|
|
@ -139,7 +143,7 @@ home,room=Kitchen temp=22.7,hum=36.5,co=26i 1641067200
|
|||
|
||||
{{% /influxdb/custom-timestamps %}}
|
||||
|
||||
## Write data using the CLI
|
||||
## Write data using the CLI
|
||||
|
||||
To quickly get started writing data, use the
|
||||
[`influxdb3 write` command](/influxdb3/version/reference/cli/influxdb3/write/).
|
||||
|
|
@ -150,8 +154,6 @@ Include the following:
|
|||
environment variable is already set)_
|
||||
- Quoted line protocol data via standard input (stdin) or a file
|
||||
|
||||
### Write data via standard input (stdin)
|
||||
|
||||
{{% code-placeholders "DATABASE_NAME|AUTH_TOKEN" %}}
|
||||
```bash
|
||||
influxdb3 write \
|
||||
|
|
@ -197,7 +199,7 @@ In the code samples, replace the following placeholders with your values:
|
|||
|
||||
### Write data from a file
|
||||
|
||||
Pass the `--file` option to write line protocol you have saved to a file--for example, save the
|
||||
To write line protocol you have saved to a file, pass the `--file` option--for example, save the
|
||||
[sample line protocol](#home-sensor-data-line-protocol) to a file named `sensor_data`
|
||||
and then enter the following command:
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue