awesome-repositories.com
Blog
awesome-repositories.com

Entdecke die besten Open-Source-Repositories mit KI-gestützter Suche.

EntdeckenKuratierte SuchenOpen-Source-AlternativenSelf-hosted SoftwareBlogSitemap
ProjektÜber unsRanking-MethodikPresseMCP-Server
RechtlichesDatenschutzAGB
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
m3db avatar

m3db/m3

0
View on GitHub↗
4,895 Stars·463 Forks·Go·Apache-2.0·7 Aufrufem3db.io↗

M3

m3 ist eine verteilte Zeitreihendatenbank, die für hochauflösende Metriken und die Verwaltung von Daten mit hoher Kardinalität entwickelt wurde. Sie fungiert als skalierbares Speichersystem und Multi-Cluster-Query-Engine und bietet einen verteilten Metrik-Aggregator, der Daten vor dem Speichern downsamplen und zusammenfassen kann.

Das Projekt zeichnet sich durch ein koordiniertes Clustermodell aus, das etcd für die Knotenmitgliedschaft und Shard-Platzierung nutzt. Es unterstützt mehrere Ingestion-Protokolle, einschließlich des Prometheus-Remote-Write-Protokolls, des InfluxDB-Line-Protokolls und des Graphite-Carbon-Plaintext-Protokolls, und bietet kompatible Query-Schnittstellen für PromQL und Graphite.

Das System deckt breite Funktionsbereiche ab, einschließlich spaltenorientierter Zeitreihenspeicherung, synchroner Datenreplikation und verteiltem Query-Fan-out. Es integriert Daten-Lifecycle-Automatisierung, Quorum-basiertes Konsistenz-Tuning und Tag-basierte Serienindizierung, um Datenintegrität und Abfragegeschwindigkeit über isolierte Namespaces hinweg aufrechtzuerhalten.

Cluster-Orchestrierung und Komponentenplatzierung werden durch automatisierte Tools und Operatoren verwaltet, um hohe Verfügbarkeit und eine ausgewogene Datenverteilung sicherzustellen.

Features

  • Time Series Data Storage - Provides a scalable storage solution optimized for maintaining historical records of numerical performance data over time.
  • Time Series Metric Aggregators - Functions as a distributed streaming engine that downsamples and summarizes high-cardinality time series data.
  • Time Series Databases - Provides a scalable distributed database specialized for storing and querying high-resolution time-stamped metric data.
  • High-Cardinality Data Handlers - Manages large-scale datasets with high cardinality using distributed sharding and efficient indexing.
  • Distributed Data Replication - Synchronizes and replicates data across cluster nodes using configurable consistency levels for fault tolerance.
  • Time-Series Block Storage - Organizes time series data into immutable, time-bounded columnar blocks to improve compression and memory locality.
  • Automatic Time Partitioning - Distributes metrics across multiple nodes by automatically partitioning data into time-based chunks and namespaces.
  • Data Retention & Cleanup - Automatically deletes old storage files once they fall outside a configurable namespace retention period.
  • Persistence & Durability - Implements commit logs and periodic block flushing to ensure data remains intact and accessible after system failures.
  • Data Sharding - Distributes time-series data into virtual shards mapped to cluster nodes for horizontal scaling.
  • Query Fan-out - Splits global requests into parallel queries across distributed data sources and clusters.
  • Time Series - Fans out requests across multiple clusters and namespaces to provide a complete view of time-series data.
  • Distributed Sharding Architectures - Maps time series keys to virtual shards that are distributed across physical nodes for horizontal scaling.
  • High-Precision Time Series Storage - Supports high-resolution time series storage with timestamp precision down to the nanosecond.
  • Streaming Aggregators - VictoriaMetrics reduces the volume of stored metrics by lowering cardinality or resolution through streaming aggregation.
  • Environment Isolation - Creates isolated data environments with specific retention periods, replication factors, and shard placements.
  • Multi-Tiered Data Retrieval - Fetches requested data ranges by consolidating results from memory buffers, caches, and disk files.
  • Single-Leader Replication - Uses a leader-follower replication model where a leader handles data flushing for each shardset.
  • Metric Query Languages - Supports multiple specialized query languages to retrieve both real-time and historical metrics.
  • PromQL-Compatible Engines - Provides a query execution engine that fully supports PromQL for retrieving stored time series data.
  • Metric Aggregation & Downsampling - Performs stateful downsampling and aggregation of incoming metrics to reduce cardinality and disk usage.
  • Time Series Querying - Retrieves metrics over specified time ranges using standardized, high-performance query engines.
  • Tuned Storage Namespaces - Organizes data into independently tuned namespaces with custom schemas to support diverse workloads.
  • Virtual Shard Mapping - Maps time series keys to virtual shards to enable horizontal scaling across physical nodes.
  • Etcd Coordination - Uses a consistent etcd key-value store to manage node membership, configuration, and shard placement.
  • Persistence Leader Election - Elects a leader node for each shardset to handle data flushing with standby followers for continuity.
  • Database High Availability - Coordinates database nodes using shard replication and rack awareness to ensure continuous service availability.
  • Storage Partition Operations - Manages logical groupings of time series data to control storage and access.
  • Metric Ingestion Protocols - Ingests metrics via JSON and binary protocols, associating values with timestamps and tags.
  • Cluster State Coordinators - Coordinates distributed node membership and cluster configuration using a consistent key-value store.
  • Node Bootstrapping - Fetches and synchronizes data blocks from peer nodes for a specific time range to initialize a node.
  • Namespace-Based Isolation - Isolates time series into independent namespaces with unique tuning and schema configurations.
  • Database Traffic Routing - Routes read and write requests across a distributed set of storage nodes while managing cluster topology.
  • Distributed Coordination Systems - Manages node membership, shard placement, and data replication using a coordinated distributed system.
  • Hash-Based Data Distribution - Distributes time series data across multiple cluster nodes using hash-based sharding of the series IDs.
  • Cross-Cluster Querying - Unifies data from multiple independent clusters and namespaces into a single logical view for analytics.
  • Metric Data Ingestion - Implements high-throughput ingestion of time series data using JSON and remote write formats.
  • Prometheus-Compatible Backends - Acts as a long-term storage backend that accepts and persists metrics via the Prometheus remote write protocol.
  • Metric Namespace Organization - Provides capabilities to create and modify namespaces for organized consolidation of metrics.
  • Prometheus Remote Write Endpoints - Acts as a remote read and write endpoint to bridge Prometheus data streams with a distributed backend.
  • Prometheus Remote Write Ingestion - Acts as a remote storage backend that receives and persists Prometheus remote-write samples.
  • Remote Write Ingestion - Accepts time series data pushed from remote write clients to store metrics without intermediary systems.
  • Metadata-Based Data Recovery - VictoriaMetrics fetches time series blocks from peers by comparing metadata and streaming data from suitable replicas.
  • Consistency Tuning - Allows tuning of read and write success based on the number of node acknowledgments.
  • Read Quorum Configuration - Specifies the number of nodes that must respond to a query to ensure data accuracy.
  • Persistence Flushing - Provides a mechanism to output aggregated metrics to long-term storage for persistence.
  • Time-Series Compression - Implements specialized compression algorithms and hybrid encoding to reduce the memory and disk footprint of time series.
  • Automated Rollups - Implements automated rollups using mapping rules to reduce the resolution of incoming metrics.
  • Resolution Alignment - Aligns and converts time series data from multiple storage resolutions into a common time bound.
  • Automated Lifecycle Policies - Automates background tasks including memory buffer flushing and cleanup of expired data via lifecycle policies.
  • Remote Write Protocols - Supports exporting time series data to external backends using standardized remote write protocols.
  • Write Quorum Configuration - Determines the minimum number of node acknowledgments required to consider a data write successful.
  • Query Result Transformations - Processes query results using mathematical and logical functions to transform, filter, and summarize data.
  • Data Integrity Verifications - Uses checksum digests and checkpoint files to verify that persisted data volumes are uncorrupted.
  • Graphite Compatible Stores - Supports the Carbon plaintext protocol and Graphite query API for compatibility with legacy visualization tools.
  • Dynamic Cluster Membership Management - Manages the addition and removal of nodes and redistributes shards to rebalance data and maintain availability.
  • In-Memory Block Caches - Accelerates read performance by retaining frequently accessed data blocks in memory with configurable eviction policies.
  • Stateful Stream Processing - Performs stateful, stream-based aggregation of metrics before storage to reduce data resolution.
  • Snapshot-Based Compactions - Reclaims disk space and improves startup times by transforming raw commit logs into compressed snapshot files.
  • Metric Data Summarizations - Summarizes high-resolution time series data before committing to storage nodes to reduce overall data volume.
  • Out-of-Order Ingestion Handling - Accepts data points that arrive out of chronological sequence within a configured time window.
  • Quorum-Based Consistency - Uses quorum-based consistency levels to maintain data integrity across distributed replicas.
  • Aggregator Workload Distribution - Controls the distribution of aggregation tasks across the cluster to optimize resource utilization.
  • Time-Series Aggregations - Configures time-series aggregations with specific resolution durations across namespaces.
  • Time Series Indexing - Optimizes series retrieval using bloom filters and summary indexes to quickly locate time-series data.
  • Time Series Transformations - Provides mathematical and statistical functions to calculate rates, percentiles, and derivatives for time-series data analysis.
  • Metric Identifier Management - Implements management of unique numeric identifiers for high-cardinality metrics and tags.
  • Write-Ahead Logging - Records data mutations to an uncompressed write-ahead log to ensure durability before permanent commitment.
  • Cluster Configuration Management - Provides administrative interfaces to set up and configure distributed platform components.
  • Distributed Cluster Management - Configures the distribution of data across the cluster to ensure balanced storage and high availability.
  • Flush Availability Replication - Uses leader and follower replication to ensure data flushing continues if a primary node fails.
  • Operator-Managed Deployments - Uses Kubernetes operators and custom resource definitions to automate node placement and operational tasks.
  • Cluster Component Placement - Handles the distribution and administrative placement of database nodes and aggregation components.
  • Write Durability Trade-offs - Balances data loss risk against write latency by choosing between physical disk writes or queue enqueues.
  • Data Workflow Coordination - Coordinates the movement of metrics between ingestion sources and storage engines to decouple producers from the database.
  • Ingestion Decoupling Architectures - Decouples ingestion by routing read and write requests between upstream sources and downstream storage.
  • Concurrent Request Limits - Limits the number of simultaneous query requests to protect system resources and maintain cluster stability.
  • Sharded Cluster Deployment - Orchestrates the deployment of nodes across isolated groups to manage replicas and shards.
  • External Dashboard Integrations - Provides a compatible API that allows third-party graphing and alerting tools to visualize stored metrics.
  • Visualization Data Integration - Acts as a data source for external visualization tools by supporting industry-standard query protocols.
  • Graphite Metric Ingestors - Provides endpoints for accepting metrics formatted via the Graphite Carbon plaintext protocol.
  • Graphite Metric Querying - Retrieves time series data using Graphite query functions via HTTP endpoints and compatible tools.
  • Graphite Query Execution - Executes Graphite query functions against stored time series data to retrieve specific metrics.
  • Graphite Query Interfaces - Provides an HTTP interface for retrieving time-series data compatible with Graphite-source visualization tools.
  • InfluxDB Metric Ingestors - Provides dedicated API endpoints for accepting and processing metrics formatted with the InfluxDB line protocol.
  • Ingestion-Side Aggregation - Processes and downsamples metrics from remote write sources before storing them in the backend.
  • Database Systems - Distributed time-series database and metrics platform.
  • Notable Public Monorepos - Example of a large-scale monorepo.

Star-Verlauf

Star-Verlauf für m3db/m3Star-Verlauf für m3db/m3

KI-Suche

Entdecke weitere awesome Repositories

Beschreibe in einfachen Worten, was du brauchst — die KI bewertet tausende kuratierte Open-Source-Projekte nach Relevanz.

Start searching with AI

Open-Source-Alternativen zu M3

Ähnliche Open-Source-Projekte, sortiert nach der Anzahl der gemeinsamen Funktionen mit M3.
  • victoriametrics/victoriametricsAvatar von VictoriaMetrics

    VictoriaMetrics/VictoriaMetrics

    16,343Auf GitHub ansehen↗

    VictoriaMetrics is a high-performance, scalable time series database and observability platform designed for long-term storage and analysis of metric, log, and trace data. It functions as a unified backend for monitoring ecosystems, offering full compatibility with industry-standard protocols and query languages. The system is built to handle massive data volumes through a distributed architecture that supports horizontal scaling and efficient data lifecycle management. The platform distinguishes itself through a storage engine that utilizes consistent hashing for data sharding and log-struct

    Godatabasegrafanagraphite
    Auf GitHub ansehen↗16,343
  • opentsdb/opentsdbAvatar von OpenTSDB

    OpenTSDB/opentsdb

    5,068Auf GitHub ansehen↗

    OpenTSDB is a distributed time series database and metrics engine designed for storing and managing massive volumes of high-cardinality system metrics. It functions as a data store and analytics platform that enables large-scale metric ingestion and infrastructure performance monitoring across a distributed cluster. The system distinguishes itself through a distributed storage abstraction that supports multiple backends such as HBase, Cassandra, and Google Bigtable. It utilizes a hierarchical metric tree to organize time series and employs numeric identifier indexing to reduce storage footpri

    Java
    Auf GitHub ansehen↗5,068
  • greptimeteam/greptimedbAvatar von GreptimeTeam

    GreptimeTeam/greptimedb

    5,968Auf GitHub ansehen↗

    GreptimeDB is a distributed, open-source time-series database built for unified observability. It stores and queries metrics, logs, and traces together in a single columnar engine, supporting both SQL and PromQL for analysis. The database is designed as a Kubernetes-native operator with a decoupled compute and storage architecture, enabling horizontal scaling and multi-region deployment. What distinguishes GreptimeDB is its role as a multi-protocol ingestion gateway, accepting data through OpenTelemetry, Prometheus Remote Write, InfluxDB, Loki, Elasticsearch, Kafka, and MQTT protocols without

    Rustanalyticscloud-nativedatabase
    Auf GitHub ansehen↗5,968
  • doocs/advanced-javaAvatar von doocs

    doocs/advanced-java

    78,987Auf GitHub ansehen↗

    This project is a comprehensive Java backend engineering guide and technical reference focused on high-concurrency design, distributed systems, and microservices architecture. It provides detailed strategies for decomposing monolithic applications, managing service discovery, and implementing the architectural patterns required for scalable backend environments. The repository distinguishes itself through an extensive collection of big data algorithmic references and database scaling strategies. It covers memory-efficient techniques for analyzing massive datasets, such as Top-K element extrac

    Javaadvanced-javadistributed-search-enginedistributed-systems
    Auf GitHub ansehen↗78,987
Alle 30 Alternativen zu M3 anzeigen→

Häufig gestellte Fragen

Was macht m3db/m3?

m3 ist eine verteilte Zeitreihendatenbank, die für hochauflösende Metriken und die Verwaltung von Daten mit hoher Kardinalität entwickelt wurde. Sie fungiert als skalierbares Speichersystem und Multi-Cluster-Query-Engine und bietet einen verteilten Metrik-Aggregator, der Daten vor dem Speichern downsamplen und zusammenfassen kann.

Was sind die Hauptfunktionen von m3db/m3?

Die Hauptfunktionen von m3db/m3 sind: Time Series Data Storage, Time Series Metric Aggregators, Time Series Databases, High-Cardinality Data Handlers, Distributed Data Replication, Time-Series Block Storage, Automatic Time Partitioning, Data Retention & Cleanup.

Welche Open-Source-Alternativen gibt es zu m3db/m3?

Open-Source-Alternativen zu m3db/m3 sind unter anderem: victoriametrics/victoriametrics — VictoriaMetrics is a high-performance, scalable time series database and observability platform designed for long-term… opentsdb/opentsdb — OpenTSDB is a distributed time series database and metrics engine designed for storing and managing massive volumes of… greptimeteam/greptimedb — GreptimeDB is a distributed, open-source time-series database built for unified observability. It stores and queries… doocs/advanced-java — This project is a comprehensive Java backend engineering guide and technical reference focused on high-concurrency… ravendb/ravendb — RavenDB is a multi-model NoSQL document database designed for high-performance, ACID-compliant data storage. It… graphite-project/graphite-web — Graphite-web is a time-series monitoring platform that stores numeric metric data in fixed-size Whisper database…