thanos-io / promql-engine

Multi-threaded PromQL engine implementation based on the Volcano paper.
Apache License 2.0
142 stars 54 forks source link

Define new storage interface for physical plan? #157

Open yeya24 opened 1 year ago

yeya24 commented 1 year ago

Right now the query engine implements the Prometheus query engine interface, which simply uses storage.Queryable as the storage interface.

The interface is quite limited now and the main API is Select to fetch data. It is hard to extend it for now and it is really related to the original promql engine, may not be that easy to extend in the future.

I am wondering if we should define new storage APIs for easier to pushdown or support any kind of physical plan in the future. We can have some example implementation of the storage layer like using Frostdb.

fpetkovski commented 1 year ago

Querying other sources is an awesome idea 👍