InfluxDB: Flux - Analyze Query (Profiler): Unterschied zwischen den Versionen

Aus Wiki-WebPerfect
Wechseln zu: Navigation, Suche
K
Zeile 1: Zeile 1:
 
[[Datei:01-influxdb2 profiler.png|right|600px]]
 
[[Datei:01-influxdb2 profiler.png|right|600px]]
''The Flux Profiler package provides performance profiling tools for Flux queries and operations. Each enabled profiler appends a table to the output stream of tables containing data returned by the profiler.''
+
''The Flux Profiler package provides performance profiling tools for Flux queries and operations. Each enabled profiler appends a table to the output stream of tables containing data returned by the profiler.'' <br>
  
 
<pre>
 
<pre>
Zeile 8: Zeile 8:
 
...<your query>...
 
...<your query>...
 
</pre>
 
</pre>
 +
 +
 +
== query ==
 +
The query profiler provides statistics about the execution of an entire Flux script. When enabled, results returned by yield() include a table with the following columns:
 +
*'''TotalDuration''': total query duration in nanoseconds.
 +
*'''CompileDuration''': number of nanoseconds spent compiling the query.
 +
*'''QueueDuration''': number of nanoseconds spent queueing.
 +
*'''RequeueDuration''': number fo nanoseconds spent requeueing.
 +
*'''PlanDuration''': number of nanoseconds spent planning the query.
 +
*'''ExecuteDuration''': number of nanoseconds spent executing the query.
 +
*'''Concurrency''': number of goroutines allocated to process the query.
 +
*'''MaxAllocated''': maximum number of bytes the query allocated.
 +
*'''TotalAllocated''': total number of bytes the query allocated (includes memory that was freed and then used again).
 +
*'''RuntimeErrors''': error messages returned during query execution.
 +
*'''flux/query-plan''': Flux query plan.
 +
*'''influxdb/scanned-values''': value scanned by InfluxDB.
 +
*'''influxdb/scanned-bytes''': number of bytes scanned by InfluxDB.
 +
 +
 +
== operator ==
 +
The operator profiler output statistics about each operation in a query. Operations executed in the storage tier return as a single operation. When the operator profile is enabled, results returned by yield() include a table with a row for each operation and the following columns:
 +
*'''Type''': operation type
 +
*'''Label''': operation name
 +
*'''Count''': total number of times the operation executed
 +
*'''MinDuration''': minimum duration of the operation in nanoseconds
 +
*'''MaxDuration''': maximum duration of the operation in nanoseconds
 +
*'''DurationSum''': total duration of all operation executions in nanoseconds
 +
*'''MeanDuration''': average duration of all operation executions in nanoseconds
  
  

Version vom 12. Juli 2021, 12:27 Uhr

01-influxdb2 profiler.png

The Flux Profiler package provides performance profiling tools for Flux queries and operations. Each enabled profiler appends a table to the output stream of tables containing data returned by the profiler.

import "profiler"
option profiler.enabledProfilers = ["query", "operator"]

...<your query>...


query

The query profiler provides statistics about the execution of an entire Flux script. When enabled, results returned by yield() include a table with the following columns:

  • TotalDuration: total query duration in nanoseconds.
  • CompileDuration: number of nanoseconds spent compiling the query.
  • QueueDuration: number of nanoseconds spent queueing.
  • RequeueDuration: number fo nanoseconds spent requeueing.
  • PlanDuration: number of nanoseconds spent planning the query.
  • ExecuteDuration: number of nanoseconds spent executing the query.
  • Concurrency: number of goroutines allocated to process the query.
  • MaxAllocated: maximum number of bytes the query allocated.
  • TotalAllocated: total number of bytes the query allocated (includes memory that was freed and then used again).
  • RuntimeErrors: error messages returned during query execution.
  • flux/query-plan: Flux query plan.
  • influxdb/scanned-values: value scanned by InfluxDB.
  • influxdb/scanned-bytes: number of bytes scanned by InfluxDB.


operator

The operator profiler output statistics about each operation in a query. Operations executed in the storage tier return as a single operation. When the operator profile is enabled, results returned by yield() include a table with a row for each operation and the following columns:

  • Type: operation type
  • Label: operation name
  • Count: total number of times the operation executed
  • MinDuration: minimum duration of the operation in nanoseconds
  • MaxDuration: maximum duration of the operation in nanoseconds
  • DurationSum: total duration of all operation executions in nanoseconds
  • MeanDuration: average duration of all operation executions in nanoseconds


More information's: https://docs.influxdata.com/influxdb/cloud/reference/flux/stdlib/profiler/