# grafana/mimir

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/grafana-mimir).**

5,133 stars · 787 forks · Go · AGPL-3.0

## Links

- GitHub: https://github.com/grafana/mimir
- Homepage: https://grafana.com/oss/mimir/
- awesome-repositories: https://awesome-repositories.com/repository/grafana-mimir.md

## Topics

`metrics` `observability` `opentelemetry` `otlp` `prometheus` `tsdb`

## Description

Mimir is a multi-tenant time series database and distributed metrics store designed for scalable telemetry. It serves as a Prometheus compatible backend, providing long-term storage and a scalable query engine for massive volumes of time-series data.

The system is built for multi-tenant observability, isolating telemetry data and resource limits for independent teams or organizations within a single cluster. It ensures high availability and durability by sharding and replicating data across a distributed cluster, utilizing object storage for persistence to eliminate external database dependencies.

The project covers wide-ranging capabilities including global metrics aggregation for cross-region analysis and distributed query execution using parallelization and caching. It also integrates observability tooling such as federated alerting, synthetic monitoring, and AI-driven incident resolution workflows to accelerate troubleshooting.

Administrative controls include tenant resource quotas, per-user resource overrides, and shuffle-sharding for workload isolation.

## Tags

### Data & Databases

- [Data Tenant Isolators](https://awesome-repositories.com/f/data-databases/database-orchestration/tenant/database-level-tenant-isolations/data-tenant-isolators.md) — Separates metrics and queries from different tenants within a single cluster to ensure strict data isolation. ([source](https://grafana.com/blog/2019/05/21/grafana-labs-at-kubecon-the-latest-on-cortex/))
- [Telemetry Query Engines](https://awesome-repositories.com/f/data-databases/ad-hoc-dataset-querying/telemetry-query-engines.md) — Provides a distributed engine that executes complex telemetry queries using parallelization and caching.
- [Block Storage](https://awesome-repositories.com/f/data-databases/block-storage.md) — Implements a block-based storage architecture that transforms samples into immutable compressed blocks.
- [Time-Range Query Splitting and Caching](https://awesome-repositories.com/f/data-databases/data-engineering-infrastructure/caching-performance/caching-strategies/query-result-caching/time-range-query-splitting-and-caching.md) — Splits large time-range queries into smaller sub-queries for parallel execution and efficient caching.
- [Time Series Data Storage](https://awesome-repositories.com/f/data-databases/data-engineering-infrastructure/data-persistence-storage/data-storage/specialized-database-engines/time-series-data-storage.md) — Provides scalable storage optimized for maintaining historical records of numerical performance telemetry data over time. ([source](https://cdn.jsdelivr.net/gh/grafana/mimir@main/README.md))
- [Distributed Ingestion](https://awesome-repositories.com/f/data-databases/data-engineering-infrastructure/data-persistence-storage/data-storage/specialized-database-engines/time-series-data-storage/distributed-ingestion.md) — Validates, shards, and replicates incoming metrics across a pool of nodes to ensure high availability. ([source](https://grafana.com/blog/2020/07/29/how-blocks-storage-in-cortex-reduces-operational-complexity-for-running-prometheus-at-massive-scale/))
- [Data Replication](https://awesome-repositories.com/f/data-databases/data-replication.md) — Replicates metric data across multiple machines to ensure high availability and prevent data gaps during failures. ([source](https://cdn.jsdelivr.net/gh/grafana/mimir@main/README.md))
- [Distributed Metrics Stores](https://awesome-repositories.com/f/data-databases/distributed-metrics-stores.md) — Implements a sharded and replicated system for time-series data to ensure durability and availability.
- [Distributed Query Processing](https://awesome-repositories.com/f/data-databases/distributed-query-processing.md) — Executes and parallelizes data queries across multiple nodes, fetching from both memory and object storage. ([source](https://grafana.com/blog/2020/07/29/how-blocks-storage-in-cortex-reduces-operational-complexity-for-running-prometheus-at-massive-scale/))
- [Multi-Tenant Resource Isolation](https://awesome-repositories.com/f/data-databases/multi-tenant-resource-isolation.md) — Enforces resource constraints on series and sample counts per tenant to ensure fair resource distribution and cluster stability. ([source](https://grafana.com/blog/2019/12/02/kubecon-recap-configuring-cortex-for-maximum-performance-at-scale/))
- [Shuffle Shard Isolation](https://awesome-repositories.com/f/data-databases/multi-tenant-resource-isolation/shuffle-shard-isolation.md) — Utilizes shuffle sharding to distribute tenant data across subsets of instances, limiting the blast radius and preventing tenant interference. ([source](https://grafana.com/blog/2020/10/06/now-ga-cortex-blocks-storage-for-running-prometheus-at-scale-with-reduced-operational-complexity/))
- [Object-Storage Persistence](https://awesome-repositories.com/f/data-databases/object-storage-persistence.md) — Persists massive volumes of time-series data and indexes directly to cloud object storage for scaling.
- [Metric Query Languages](https://awesome-repositories.com/f/data-databases/query-engines/metric-query-languages.md) — Provides specialized query capabilities to retrieve and analyze multi-dimensional time-series telemetry metrics. ([source](https://grafana.com/docs/mimir/latest/))
- [Long-Term Metric Retentions](https://awesome-repositories.com/f/data-databases/query-engines/metric-query-languages/long-term-metric-retentions.md) — Implements mechanisms for retaining metric data over extended historical periods while optimizing storage efficiency. ([source](https://grafana.com/))
- [Cross-Tier Querying](https://awesome-repositories.com/f/data-databases/storage-tiering/cross-tier-querying.md) — Routes queries to in-memory ingestors for recent data or object storage for historical data based on age.
- [Multi-Tenant Databases](https://awesome-repositories.com/f/data-databases/time-series-databases/multi-tenant-databases.md) — Provides a distributed time-series database that isolates telemetry data and resource limits for multiple organizations.
- [Query Result Caching](https://awesome-repositories.com/f/data-databases/data-engineering-infrastructure/caching-performance/caching-strategies/query-result-caching.md) — Stores index and chunk data in external memory to reduce redundant computation and accelerate repeat requests. ([source](https://grafana.com/blog/2019/09/19/how-to-get-blazin-fast-promql/))
- [Query Time Alignments](https://awesome-repositories.com/f/data-databases/data-engineering-infrastructure/caching-performance/caching-strategies/query-result-caching/time-range-query-splitting-and-caching/query-time-alignments.md) — Aligns query start and end times to a fixed step to improve cache hit rates and ensure consistent results. ([source](https://grafana.com/blog/2019/09/19/how-to-get-blazin-fast-promql/))
- [Ingestion Deduplication](https://awesome-repositories.com/f/data-databases/data-engineering-infrastructure/data-extraction-ingestion/data-ingestion/ingestion-deduplication.md) — Removes duplicate entries from redundant data pairs during ingestion to ensure total data integrity. ([source](https://grafana.com/blog/2019/05/21/grafana-labs-at-kubecon-the-latest-on-cortex/))
- [Distributed Key-Value Stores](https://awesome-repositories.com/f/data-databases/distributed-key-value-stores.md) — Maintains consistent distributed state by sharing and merging timestamped binary blobs between nodes. ([source](https://grafana.com/blog/2020/03/25/how-were-using-gossip-to-improve-cortex-and-loki-availability/))
- [High-Availability Metric Deduplications](https://awesome-repositories.com/f/data-databases/high-availability-metric-deduplications.md) — Deduplicates samples from multiple Prometheus replicas to eliminate data gaps during server failures. ([source](https://grafana.com/blog/2019/11/21/promcon-recap-two-households-both-alike-in-dignity-cortex-and-thanos/))
- [Federated Alerting](https://awesome-repositories.com/f/data-databases/multi-tenant-data-management/tenant-metric-statistics/alerting-rules/federated-alerting.md) — Implements alerting rules to monitor metrics and trigger notifications across multiple tenants via a federated architecture. ([source](https://grafana.com/docs/mimir/latest/))
- [Object Storage Archiving](https://awesome-repositories.com/f/data-databases/query-engines/metric-query-languages/long-term-metric-retentions/object-storage-archiving.md) — Archives Prometheus metrics in object storage to maintain historical data beyond short-term limits.
- [Real-Time Data Caching](https://awesome-repositories.com/f/data-databases/real-time-data-caching.md) — Stores recent time-series data in memory to accelerate frequent queries and reduce load on object storage. ([source](https://grafana.com/blog/2019/12/02/kubecon-recap-configuring-cortex-for-maximum-performance-at-scale/))
- [TSDB Block Index Caches](https://awesome-repositories.com/f/data-databases/search-indexing-technologies/search-indexing/search-and-indexing/static-content-indexing/in-memory-caches/tsdb-block-index-caches.md) — Caches time-series block indexes in memory to accelerate repeat queries by avoiding redundant lookups. ([source](https://grafana.com/blog/2019/12/02/kubecon-recap-configuring-cortex-for-maximum-performance-at-scale/))
- [Derived Data Generation](https://awesome-repositories.com/f/data-databases/secondary-indexes/derived-data-generation.md) — Generates new time-series datasets by applying recording rules to primary metrics. ([source](https://grafana.com/docs/mimir/latest/))
- [Configurable Data Retentions](https://awesome-repositories.com/f/data-databases/tenant-configurations/configurable-data-retentions.md) — Assigns configurable expiration timelines to specific metrics to balance data priority and storage costs. ([source](https://grafana.com/blog/2020/01/21/the-future-of-cortex-into-the-next-decade/))
- [Per-Tenant Limit Override APIs](https://awesome-repositories.com/f/data-databases/tenant-configurations/per-tenant-integration-customizations/per-tenant-limit-override-apis.md) — Allows administrators to adjust resource constraints and limits for specific tenants via API overrides. ([source](https://grafana.com/blog/2019/12/02/kubecon-recap-configuring-cortex-for-maximum-performance-at-scale/))
- [Metric Aggregation & Downsampling](https://awesome-repositories.com/f/data-databases/time-series-databases/metric-aggregation-downsampling.md) — Reduces the resolution of historical metrics via downsampling to save storage space while maintaining visibility. ([source](https://grafana.com/blog/2020/01/21/the-future-of-cortex-into-the-next-decade/))

### Security & Cryptography

- [Multi-Tenant Observability](https://awesome-repositories.com/f/security-cryptography/security/policies/access-control/workspace-isolation/multi-tenant-observability.md) — Provides isolated monitoring and observability environments for different teams within a shared cluster.
- [Denial of Service Prevention](https://awesome-repositories.com/f/security-cryptography/denial-of-service-prevention.md) — Prevents resource exhaustion and maintains availability by queuing requests and scheduling them to stop single users from monopolizing the system. ([source](https://grafana.com/blog/2019/09/19/how-to-get-blazin-fast-promql/))

### DevOps & Infrastructure

- [Query Throughput Scaling](https://awesome-repositories.com/f/devops-infrastructure/read-throughput-scaling/query-throughput-scaling.md) — Distributes metric data across a cluster of multiple nodes to handle massive ingestion and query throughput. ([source](https://cdn.jsdelivr.net/gh/grafana/mimir@main/README.md))
- [Gossip-Based Cluster Membership](https://awesome-repositories.com/f/devops-infrastructure/cluster-coordination/gossip-protocols/gossip-cluster-joiners/gossip-based-cluster-membership.md) — Synchronizes cluster state and ring membership using a decentralized gossip protocol.
- [Cluster State Synchronization](https://awesome-repositories.com/f/devops-infrastructure/node-state-configurations/cluster-state-synchronization.md) — Propagates ring data and membership changes across nodes to maintain synchronized cluster state. ([source](https://grafana.com/blog/2020/03/25/how-were-using-gossip-to-improve-cortex-and-loki-availability/))

### Software Engineering & Architecture

- [Time-Series Ownership Rings](https://awesome-repositories.com/f/software-engineering-architecture/distributed-systems/distributed-data-management/consistent-hashing/load-balancing-ring-hashing/time-series-ownership-rings.md) — Uses a consistent hash ring to distribute ownership of time series and blocks across cluster instances.
- [Age-Based Request Routing](https://awesome-repositories.com/f/software-engineering-architecture/age-based-request-routing.md) — Implements routing that directs requests for recent data to ingestors and historical requests to long-term storage. ([source](https://grafana.com/blog/2019/12/02/kubecon-recap-configuring-cortex-for-maximum-performance-at-scale/))

### System Administration & Monitoring

- [Cross-Region Metric Querying](https://awesome-repositories.com/f/system-administration-monitoring/cross-region-metric-querying.md) — Combines telemetry data from distributed servers into a single global view for cross-region analysis. ([source](https://grafana.com/blog/2019/11/21/promcon-recap-two-households-both-alike-in-dignity-cortex-and-thanos/))
- [External Data Source Integrations](https://awesome-repositories.com/f/system-administration-monitoring/external-data-source-integrations.md) — Retrieves telemetry and metrics from external time-series databases and search engines to centralize observability. ([source](https://grafana.com/cloud))
- [Global Metric Aggregation](https://awesome-repositories.com/f/system-administration-monitoring/global-metric-aggregation.md) — Aggregates metric data from multiple distributed sources through a unified service for system-wide visibility. ([source](https://cdn.jsdelivr.net/gh/grafana/mimir@main/README.md))
- [Prometheus-Compatible Backends](https://awesome-repositories.com/f/system-administration-monitoring/logging-and-telemetry/telemetry-protocols/remote-write-protocols/prometheus-compatible-backends.md) — Serves as a long-term storage backend for Prometheus using compatible remote write and read protocols.
- [Distributed Rule Processing](https://awesome-repositories.com/f/system-administration-monitoring/monitoring-and-observability/rule-based-alerting-engines/alerting-rule-validators/sql-based-alerting-rules/promql-based-alerting-and-recording-rule-evaluation/distributed-rule-processing.md) — Distributes the processing of recording rules across multiple nodes to scale the pre-aggregation of high-volume telemetry. ([source](https://grafana.com/blog/2019/05/21/grafana-labs-at-kubecon-the-latest-on-cortex/))
- [Scalable Metrics Infrastructure](https://awesome-repositories.com/f/system-administration-monitoring/scalable-metrics-infrastructure.md) — Manages massive volumes of time-series data across a distributed cluster to handle high ingestion and query loads.
- [AI-Powered Incident Analysis](https://awesome-repositories.com/f/system-administration-monitoring/incident-management/ai-powered-incident-analysis.md) — Uses AI to automatically summarize and correlate telemetry data during the incident response process. ([source](https://grafana.com/cloud))
- [Incident Response Workflows](https://awesome-repositories.com/f/system-administration-monitoring/incident-response-workflows.md) — Provides automated systems for detecting and resolving infrastructure outages and performance degradations. ([source](https://grafana.com/))
- [Unified Observability Ingestion](https://awesome-repositories.com/f/system-administration-monitoring/logging-and-telemetry/metric-data-ingestion/opentelemetry-ingestion/unified-observability-ingestion.md) — Aggregates diverse telemetry signals including metrics, logs, and traces into a single unified backend. ([source](https://grafana.com/))
- [Recording Rules](https://awesome-repositories.com/f/system-administration-monitoring/metric-dashboards/recording-rules.md) — Precomputes expensive metric expressions using recording rules to optimize dashboard performance.
- [Notification Noise Reduction](https://awesome-repositories.com/f/system-administration-monitoring/notification-noise-reduction.md) — Filters false positives and reduces alert volume through grouping and inhibition to prevent operator distraction. ([source](https://grafana.com/products/cloud/))
- [Synthetic Monitoring](https://awesome-repositories.com/f/system-administration-monitoring/synthetic-monitoring.md) — Executes simulated user interactions and tests to proactively identify availability and performance issues. ([source](https://grafana.com/))

### Artificial Intelligence & ML

- [AI-Powered Observability Analysis](https://awesome-repositories.com/f/artificial-intelligence-ml/ai-powered-observability-analysis.md) — Employs large language models to analyze system telemetry and generate operational insights for troubleshooting. ([source](https://grafana.com/))
- [Observability Automation](https://awesome-repositories.com/f/artificial-intelligence-ml/ai-workflow-automation/observability-automation.md) — Uses AI assistants to automatically generate prebuilt dashboards, intelligent filters, and customized alerts. ([source](https://grafana.com/cloud))
- [Troubleshooting Workflows](https://awesome-repositories.com/f/artificial-intelligence-ml/autonomous-workflow-automation/troubleshooting-workflows.md) — Provides self-directed AI workflows to discover and summarize investigations for system failures. ([source](https://grafana.com/products/cloud/))

### User Interface & Experience

- [Telemetry Visualization](https://awesome-repositories.com/f/user-interface-experience/telemetry-visualization.md) — Creates interactive dashboards and visual representations of metrics, logs, and traces to monitor system health. ([source](https://grafana.com/))
