Life of a PromQL query
27 April - 1:50 PM - 2:40 PM @ Room 203
50 minutes conference
Prometheus is an open-source monitoring and alerting system that has quickly gained popularity over the last two years (which includes sophisticated monitoring of MySQL database servers). One of the components of Prometheus is a time-series database (TSDB) embedded into the monitoring server. The TSDB uses a highly domain-specific query language called PromQL. The decision to not use a SQL-like query language was driven by the specific kind of queries typically needed for modern monitoring and alerting, and by the data model, which deals with multi-dimensionally labeled time series, similar to OpenTSDB. Together with the nature of the ingested metric samples, all of this has impacted the design of the indices and the data storage in the TSDB. This talk will take you all the way from typical PromQL queries to the internals of the Prometheus TSDB, and help you understand why a highly specific database design was necessary to support Prometheus's use case.
Production Engineer, SoundCloud Ltd.
Björn is a Production Engineer at SoundCloud and a Prometheus core developer. Previously, he was a Site Reliability Engineer at Google and a number cruncher for science.