-
Notifications
You must be signed in to change notification settings - Fork 512
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
Revise "Reference: Glossary" #1181
Conversation
Signed-off-by: Jack Baldry <jack.baldry@grafana.com>
Signed-off-by: Jack Baldry <jack.baldry@grafana.com>
Signed-off-by: Jack Baldry <jack.baldry@grafana.com>
Signed-off-by: Jack Baldry <jack.baldry@grafana.com>
Signed-off-by: Jack Baldry <jack.baldry@grafana.com>
Signed-off-by: Jack Baldry <jack.baldry@grafana.com>
Signed-off-by: Jack Baldry <jack.baldry@grafana.com>
Signed-off-by: Jack Baldry <jack.baldry@grafana.com>
Signed-off-by: Jack Baldry <jack.baldry@grafana.com>
Signed-off-by: Jack Baldry <jack.baldry@grafana.com>
Signed-off-by: Jack Baldry <jack.baldry@grafana.com>
Signed-off-by: Jack Baldry <jack.baldry@grafana.com>
Relates to #1102 |
|
||
## Flushing | ||
|
||
Flushing is the operation run by ingesters to offload time series from memory and store them in the long-term storage. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think one could argue that "flushing" and "shipping" are two separate operations in the ingester, considering that they get triggered by separate tickers and a failure of shipping does not result in a failure of flushing.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Tried a clarification in 56efa6f, what do you think?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I can see you reverted your clarification in 1a11857. Was that intentional?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I reverted that because of #1181 (comment) but perhaps I misunderstood?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Right. I think we never came up with a good definition of "flushing". I've always understood it as "from ingesters to long-term storage" because "flush" makes me think we "remove" it from ingesters. I have no strong opinion on this.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
One nit, otherwise this LGTM
…ect store Signed-off-by: Jack Baldry <jack.baldry@grafana.com>
Love that you have user<>tenant<>org in here. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for working on this. I left a couple of comments I would be glad you to take look. Thanks!
docs/sources/reference-glossary.md
Outdated
## Blocks storage | ||
|
||
Blocks storage is the Mimir storage engine based on the Prometheus TSDB. | ||
Grafana Mimir stores blocks in object stores such as AWS S3, Google Cloud Storage (GCS), or Azure blob storage. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I would list the main supported ones.
Grafana Mimir stores blocks in object stores such as AWS S3, Google Cloud Storage (GCS), or Azure blob storage. | |
Grafana Mimir stores blocks in object stores such as AWS S3, Google Cloud Storage (GCS), Azure blob storage or Swift. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Revised in 0828eab
docs/sources/reference-glossary.md
Outdated
|
||
## Flushing | ||
|
||
Flushing is the operation run by ingesters to offload time series from memory and store them as blocks on disk. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is not correct. We're used to refer as "flushing" the operation to offload time series from ingester memory and/or disk to the long-term storage (eg. S3).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Reverted in 1a11857
docs/sources/reference-glossary.md
Outdated
|
||
## Gossip | ||
|
||
Gossip is a protocol by which components share data to all members without the need for a central store. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
without the need for a central store
I think this is misleading. It still requires a centralized storage (eg. S3). Gossip is a protocol that Mimir use to coordinate between components (yes, we share some data, but it's just about coordination between components).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Revised in ba79490
… the object store" This reverts commit 56efa6f. Signed-off-by: Jack Baldry <jack.baldry@grafana.com>
Signed-off-by: Jack Baldry <jack.baldry@grafana.com> Co-authored-by: Marco Pracucci <marco@pracucci.com>
Signed-off-by: Jack Baldry <jack.baldry@grafana.com> Co-authored-by: Marco Pracucci <marco@pracucci.com>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, thanks! I just left a non blocking comment on gossip.
docs/sources/reference-glossary.md
Outdated
|
||
## Gossip | ||
|
||
Gossip is a protocol by which components coordinate with the need for a centralized [key-value store]({{<relref "#key-value-store" >}}). |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What do you mean with "with the need for a centralized key-value store"? Maybe it's just my poor english, but I've the feeling it doesn't clarify that when using gossip you don't have to run any centralized key-value store, because Mimir components just use this p2p protocol to talk each other and coordinate.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I agree that this wording is a bit confusing.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Sorry yeah that was a typo. It was meant to be "without" 🤦
Perhaps that still isn't the best wording. Happy to replace with something else.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think fixing the typo could be a good start. At least it makes it correct ;)
docs/sources/reference-glossary.md
Outdated
|
||
Churn is the frequency at which series become idle. | ||
|
||
A series become idle once it's no longer exported by the monitored targets. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
A series become idle once it's no longer exported by the monitored targets. | |
A series becomes idle once it's no longer exported by the monitored targets. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
or
A series become idle once it's no longer exported by the monitored targets. | |
Series become idle once they're no longer exported by the monitored targets. |
|
||
## Hash ring | ||
|
||
The hash ring is a distributed data structure used by Grafana Mimir for sharding, replication, and service discovery. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
How is it distributed? I thought (except in the case of memberlist) it's pretty centralized in the k/v store.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We're used to call it distributed data structure, with regards to the fact that we use a centralized KV store just to "share" it but then it's kept in each process memory and each process can take local decisions (based on the ring copy they have in memory) without having to lookup the KV store each time.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, I just added nits
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM (modulo fixing the typo in "gossip" definition)
|
||
## Flushing | ||
|
||
Flushing is the operation run by ingesters to offload time series from memory and store them in the long-term storage. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I can see you reverted your clarification in 1a11857. Was that intentional?
docs/sources/reference-glossary.md
Outdated
|
||
## Gossip | ||
|
||
Gossip is a protocol by which components coordinate with the need for a centralized [key-value store]({{<relref "#key-value-store" >}}). |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think fixing the typo could be a good start. At least it makes it correct ;)
|
||
## Hash ring | ||
|
||
The hash ring is a distributed data structure used by Grafana Mimir for sharding, replication, and service discovery. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We're used to call it distributed data structure, with regards to the fact that we use a centralized KV store just to "share" it but then it's kept in each process memory and each process can take local decisions (based on the ring copy they have in memory) without having to lookup the KV store each time.
|
||
Flushing is the operation run by ingesters to offload time series from memory and store them in the long-term storage. | ||
|
||
## Gossip |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I would also add a ## Memberlist
, mentioning to refer to ## Gossip
.
Signed-off-by: Jack Baldry <jack.baldry@grafana.com> Co-authored-by: Marco Pracucci <marco@pracucci.com>
Thanks for the thorough review! |
What this PR does
Revises all the definitions in the glossary and fits the page with the documentation information architecture.
Checklist