Overview
Explore techniques for measuring and optimizing PromQL and MetricsQL expression complexity in this 28-minute conference talk from Conf42 Observability 2024. Delve into the data model used by Prometheus and VictoriaMetrics, understand the concept of time series, and learn when PromQL/MetricsQL queries can become slow. Discover how to assess the number of series and samples a query selects, and understand the distinction between selected and processed samples. Examine the performance impact of various functions and gain insights into performance improvement strategies such as query caching, filter pushdown, and recording rules. Explore how VictoriaMetrics can simplify the optimization process and access additional resources for further learning.
Syllabus
intro
preamble
roman khavronenko
victoriametrics
how to optimize sql query?
can we apply the same tips to promql/metricsql?
data model in prometheus/victoriametrics
what is a time series?
when promoql/metricsql query can be slow?
how many series query selects?
how many samples query selects?
selected samples != processed samples
what about functions? how slow are they?
- query caching
- filters pushdown
- recording rules
summary
can victoriametrics make it easier?
additional materials
questions?
Taught by
Conf42