docs-v2/content/influxdb/cloud-dedicated/reference/internals/system-tables.md

3.4 KiB

title description menu weight influxdb/cloud-dedicated/tags related
InfluxDB system tables InfluxDB system measurements contain time series data used by and generated from the InfluxDB internal monitoring system.
influxdb_cloud_dedicated
name parent
System tables InfluxDB internals
103
tables
information schema
/influxdb/cloud-dedicated/reference/sql/information-schema/

InfluxDB system measurements contain time series data used by and generated from the InfluxDB internal monitoring system.

Each {{% product-name %}} namespace includes the following system measurements:

system.queries measurement

The system.queries measurement stores log entries for queries executed for the provided namespace (database) on the node that is currently handling queries.

from influxdb_client_3 import InfluxDBClient3
client = InfluxDBClient3(token = DATABASE_TOKEN,
                          host = HOSTNAME,
                          org = '',
                          database=DATABASE_NAME)
client.query('select * from home')
reader = client.query('''
                      SELECT *
                      FROM system.queries
                      WHERE issue_time >= now() - INTERVAL '1 day'
                      AND query_text LIKE '%select * from home%'
                      ''',
                    language='sql',
                    headers=[(b"iox-debug", b"true")],
                    mode="reader")
print("# system.queries schema\n")
print(reader.schema)

system.queries has the following schema:

# system.queries schema

issue_time: timestamp[ns] not null
query_type: string not null
query_text: string not null
completed_duration: duration[ns]
success: bool not null
trace_id: string

When listing measurements (tables) available within a namespace, some clients and query tools may include the queries table in the list of namespace tables.

system.queries reflects a process-local, in-memory, namespace-scoped query log. The query log isn't shared across instances within the same deployment. While this table may be useful for debugging and monitoring queries, keep the following in mind:

  • Records stored in system.queries are volatile.
    • Records are lost on pod restarts.
    • Queries for one namespace can evict records from another namespace.
  • Data reflects the state of a specific pod answering queries for the namespace----the log view is scoped to the requesting namespace and queries aren't leaked across namespaces.
    • A query for records in system.queries can return different results depending on the pod the request was routed to.

Data retention: System data can be transient and is deleted on pod restarts. The log size per instance is limited and the log view is scoped to the requesting namespace.

system.queries schema

  • system.queries (measurement)
    • fields:
      • issue_time: timestamp when the query was issued
      • query_type: type (syntax: sql, flightsql, or influxql) of the query
      • query_text: query statement text
      • success: execution status (boolean) of the query
      • completed_duration: time (duration) that the query took to complete
      • trace_id: trace ID for debugging and monitoring events