Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Tag support #10

Open
Preetam opened this issue Mar 4, 2015 · 0 comments
Open

Tag support #10

Preetam opened this issue Mar 4, 2015 · 0 comments

Comments

@Preetam
Copy link
Member

Preetam commented Mar 4, 2015

Prometheus's data model is kind of interesting. I'm not sure if tags are completely necessary.

Their definition of a "time series" is (emphasis mine):

streams of timestamped values belonging to the same metric and the same set of labeled dimensions

I wasn't sure if the "same set of labeled dimensions" meant that streams with the same set of label dimensions but different label values would map to the same time series.

More from that page...

Changing any label value, including adding or removing a label, will create a new time series.

...and...

Given a metric name and a set of labels, time series are frequently identified using this notation:

<metric name>{<label name>=<label value>, ...}

In that case, something like api_http_requests_total{method="POST", handler="/messages"} is a separate series from api_http_requests_total{method="GET", handler="/messages"}. This won't require any significant storage system format changes, because we can integrate tags right into the metric name.

The only change that's required is to make the metadata region at the end more compact, because lots of tags means lots of individual metrics, which take up RAM. We could just keep the main metric name in memory and look up tags later.

@Preetam Preetam self-assigned this Mar 5, 2015
@Preetam Preetam removed their assignment Feb 1, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant