18 रिपॉजिटरी
Methods for executing and parallelizing data queries across multiple nodes in a distributed environment.
Distinguishing note: Focuses on the execution plan and streaming of data from distributed sources.
Explore 18 awesome GitHub repositories matching data & databases · Distributed Query Processing. Refine with filters or upvote what's useful.
RethinkDB is a distributed, document-oriented database designed to store and manage JSON-formatted data across scalable clusters. It utilizes a custom log-structured storage engine with B-Tree indexing to ensure high-performance disk I/O and data persistence. The system maintains high availability through automatic sharding and replication, employing a primary-replica voting consensus mechanism to handle node failures and ensure consistent cluster operations. A defining characteristic of the platform is its reactive changefeed engine, which allows applications to subscribe to live data update
RethinkDB executes queries by transforming them into parallelized, lazy-evaluated execution plans that stream data chunks from multiple servers to the client for efficient processing.
Dgraph is a distributed graph database designed to store and query highly connected data. It organizes information as nodes and edges to represent complex relationships between entities, providing a platform for managing and analyzing deeply linked datasets. The system functions as a horizontally scalable cluster that partitions data across multiple nodes to maintain performance and availability as information volume increases. It utilizes a specialized query language built for low-latency navigation of interconnected data points, allowing for the execution of complex queries across large-sca
Decomposes complex queries into parallel sub-tasks executed across multiple nodes for efficient processing.
Vitess is a database clustering system for horizontal scaling of MySQL. It functions as a middleware layer that abstracts complex sharding and physical topology, allowing applications to interact with a distributed database environment through a unified interface. By intercepting and routing SQL queries across multiple shards, it enables large-scale data management while maintaining the appearance of a single database instance. The platform distinguishes itself through its ability to perform online schema migrations and distributed transaction coordination without requiring application downti
Directs incoming SQL requests to the correct database shards and aggregates results to hide complex topology from the application.
Presto is a distributed SQL query engine designed for high-performance analytical processing across heterogeneous data sources. It functions as a data federation platform and massively parallel processing engine, allowing users to execute interactive queries against diverse storage systems without requiring data migration. By mapping remote metadata and structures to a unified relational namespace, it enables seamless cross-platform analysis through a standard SQL interface. The engine distinguishes itself through a pluggable connector architecture and a shared-nothing distributed processing
Executes query plans through a hierarchy of stages, tasks, and operators that transform and exchange data across the cluster.
Doris is a distributed SQL data warehouse designed for high-performance analytical workloads and real-time data processing. It functions as a unified platform that integrates traditional relational warehousing with lakehouse query capabilities, allowing users to execute analytical operations directly against external data lakes without requiring data migration. The system distinguishes itself through a shared-nothing, massively parallel processing architecture that utilizes vectorized query execution and columnar storage to maintain sub-second latency. It supports dynamic schema evolution, en
Executes distributed analytical queries across multiple nodes to optimize performance for massive datasets.
Thanos is a distributed metrics query engine and monitoring scalability suite designed to provide a unified interface for aggregating data from multiple Prometheus servers and clusters. It functions as a high availability monitoring backend that eliminates single points of failure by deduplicating data from replicated instances. The system enables long-term retention by persisting time-series data to cloud-native object storage, allowing for unlimited historical archiving beyond the limits of local disks. It further optimizes this storage through a downsampling and retention manager that comp
Implements parallel execution of data queries across multiple distributed nodes to retrieve a unified result set.
Citus is a PostgreSQL extension that transforms a standard database into a distributed system. It functions as a sharding framework and distributed SQL engine, enabling horizontal scaling by partitioning tables across a cluster of nodes. By utilizing a coordinator-worker topology, the system manages metadata and routes queries to the appropriate nodes, allowing for parallel execution of complex operations across distributed data shards. The platform distinguishes itself through its specialized support for multi-tenant architectures and real-time analytical processing. It enables tenant-based
Routes and executes database operations across multiple nodes simultaneously to accelerate analytical workloads.
Nebula is a distributed graph database designed for storing and querying massive volumes of interconnected vertices and edges across a horizontally scalable cluster. It functions as a Kubernetes-native database and a distributed graph analytics engine, utilizing a Raft-based distributed store to ensure strong consistency and high availability. The system features an OpenCypher query engine for performing complex graph traversals and pattern matching. It distinguishes itself with a decoupled compute-storage architecture and a shared-nothing distributed design, allowing query processing and dat
Decomposes complex graph traversals into parallel sub-tasks executed concurrently across multiple storage nodes.
This project is a comprehensive learning resource and reference guide for software architecture and distributed systems design. It serves as a structured curriculum for engineers to study fundamental architectural patterns, scalability strategies, and distributed computing theory, specifically tailored to prepare for technical interviews and professional engineering roles. The repository distinguishes itself by providing a curated collection of industry-standard infrastructure tools and methodologies. It covers the selection and implementation of technologies for data storage, message brokeri
Provides methods for executing and parallelizing data queries across multiple nodes in a distributed environment.
Apache DataFusion is an extensible, columnar SQL query engine that runs embedded within a host application without requiring a separate server process. It processes data in columnar batches using Apache Arrow for memory-efficient analytics, and can scale analytic workloads across multiple nodes for parallel execution. The engine supports both SQL and DataFrame queries through a modular, streaming architecture that allows custom operators, data sources, functions, and optimizer rules. The engine distinguishes itself through its modular extension framework, which enables building custom query e
Scales analytic workloads across a cluster by splitting and coordinating query fragments.
go-ibax is a blockchain protocol platform and decentralized application infrastructure used to deploy networks with custom governance and token economics. It provides a foundation for building decentralized applications through a framework that integrates identity management and on-chain data storage. The project features a multilingual virtual machine capable of executing smart contracts written in Go, Rust, and Solidity. It implements a sharded blockchain network to increase throughput and a privacy layer utilizing zero-knowledge proofs and homomorphic encryption to anonymize transaction da
Optimizes complex logic execution by storing parsed block data in a distributed database across nodes.
Pinot is a distributed, columnar analytical database designed for high-concurrency, low-latency query processing. It functions as a real-time OLAP datastore, enabling interactive, user-facing analytics by ingesting and querying massive datasets from both streaming and batch sources. The system architecture relies on a centralized controller for cluster coordination and a distributed segment-based storage model to ensure horizontal scalability. The platform distinguishes itself through a hybrid ingestion pipeline that unifies real-time event streams and historical batch data into a single quer
Transfers intermediate query results between parallel processing stages using hash or broadcast strategies to optimize execution speed.
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
Splits a query into sub-queries, dispatches them to relevant data nodes, and merges partial results into a single response.
Mimir एक मल्टी-टेनेंट टाइम सीरीज़ डेटाबेस और वितरित मेट्रिक्स स्टोर है जिसे स्केलेबल टेलीमेट्री के लिए डिज़ाइन किया गया है। यह एक Prometheus संगत बैकएंड के रूप में कार्य करता है, जो टाइम-सीरीज़ डेटा की विशाल मात्रा के लिए दीर्घकालिक स्टोरेज और एक स्केलेबल क्वेरी इंजन प्रदान करता है। यह सिस्टम मल्टी-टेनेंट ऑब्जर्वेबिलिटी के लिए बनाया गया है, जो एक ही क्लस्टर के भीतर स्वतंत्र टीमों या संगठनों के लिए टेलीमेट्री डेटा और संसाधन सीमाओं को अलग करता है। यह बाहरी डेटाबेस निर्भरता को खत्म करने के लिए पर्सिस्टेंस के लिए ऑब्जेक्ट स्टोरेज का उपयोग करके, वितरित क्लस्टर में डेटा को शार्डिंग और रेप्लिकेट करके उच्च उपलब्धता और स्थायित्व सुनिश्चित करता है। यह प्रोजेक्ट क्रॉस-रीजन विश्लेषण के लिए ग्लोबल मेट्रिक्स एग्रीगेशन और पैरेललाइज़ेशन और कैशिंग का उपयोग करके वितरित क्वेरी निष्पादन सहित व्यापक क्षमताओं को कवर करता है। यह फेडरेटेड अलर्टिंग, सिंथेटिक मॉनिटरिंग और समस्या निवारण में तेज़ी लाने के लिए AI-संचालित घटना समाधान वर्कफ़्लो जैसे ऑब्जर्वेबिलिटी टूलिंग को भी एकीकृत करता है। प्रशासनिक नियंत्रणों में टेनेंट संसाधन कोटा, प्रति-उपयोगकर्ता संसाधन ओवरराइड और वर्कलोड अलगाव के लिए शफल-शार्डिंग शामिल हैं।
Executes and parallelizes data queries across multiple nodes, fetching from both memory and object storage.
OpenTSDB एक डिस्ट्रीब्यूटेड टाइम सीरीज़ डेटाबेस और मेट्रिक्स इंजन है जिसे उच्च-कार्डिनैलिटी सिस्टम मेट्रिक्स की विशाल मात्रा को संग्रहीत और प्रबंधित करने के लिए डिज़ाइन किया गया है। यह एक डेटा स्टोर और एनालिटिक्स प्लेटफॉर्म के रूप में कार्य करता है जो डिस्ट्रीब्यूटेड क्लस्टर में बड़े पैमाने पर मेट्रिक अंतर्ग्रहण और इंफ्रास्ट्रक्चर परफॉरमेंस निगरानी को सक्षम बनाता है। यह सिस्टम एक डिस्ट्रीब्यूटेड स्टोरेज एब्स्ट्रैक्शन के माध्यम से खुद को अलग करता है जो HBase, Cassandra और Google Bigtable जैसे कई बैकएंड्स का समर्थन करता है। यह टाइम सीरीज़ को व्यवस्थित करने के लिए एक पदानुक्रमित मेट्रिक ट्री का उपयोग करता है और स्टोरेज फुटप्रिंट्स को कम करने और टैग्ड मेट्रिक्स के लिए लुकअप्स को तेज करने के लिए संख्यात्मक पहचानकर्ता इंडेक्सिंग का उपयोग करता है। यह प्रोजेक्ट डिस्ट्रीब्यूटेड पर्सेंटाइल गणना और डाउनसैंपलिंग के साथ टाइम सीरीज़ डेटा विश्लेषण, साथ ही व्यापक मेटाडेटा प्रबंधन सहित व्यापक क्षमता क्षेत्रों को कवर करता है। यह डेटा अंतर्ग्रहण और क्वेरी के लिए API एकीकरण, परफॉरमेंस ऑप्टिमाइज़ेशन के लिए ऑफ-हीप कैशिंग और डेटा अखंडता ऑडिटिंग और विसंगति विश्लेषण के लिए टूल्स प्रदान करता है। यह सिस्टम डेटाबेस प्रशासन और मेट्रिक ट्री सिंक्रोनाइज़ेशन के लिए कमांड-लाइन इंटरफेस के माध्यम से प्रबंधित किया जाता है।
Parallelizes complex query requests across multiple nodes to reduce response latency.
m3 उच्च-रिज़ॉल्यूशन मेट्रिक्स और उच्च-कार्डिनैलिटी डेटा प्रबंधन के लिए डिज़ाइन किया गया एक वितरित टाइम सीरीज़ डेटाबेस है। यह एक स्केलेबल स्टोरेज सिस्टम और मल्टी-क्लस्टर क्वेरी इंजन के रूप में कार्य करता है, जो स्टोरेज में कमिट होने से पहले डेटा को डाउनसैंपल और सारांशित करने में सक्षम एक वितरित मेट्रिक्स एग्रीगेटर प्रदान करता है। यह प्रोजेक्ट नोड मेंबरशिप और शार्ड प्लेसमेंट के लिए etcd का उपयोग करके एक समन्वित क्लस्टर मॉडल के माध्यम से खुद को अलग करता है। यह Prometheus रिमोट राइट प्रोटोकॉल, InfluxDB लाइन प्रोटोकॉल और Graphite Carbon प्लेनटेक्स्ट प्रोटोकॉल सहित कई इंजेक्शन प्रोटोकॉल का समर्थन करता है, और PromQL व Graphite के लिए संगत क्वेरी इंटरफेस प्रदान करता है। यह सिस्टम कॉलम-आधारित टाइम सीरीज़ स्टोरेज, सिंक्रोनस डेटा रेप्लिकेशन और वितरित क्वेरी फैन-आउट सहित व्यापक क्षमता क्षेत्रों को कवर करता है। इसमें डेटा लाइफसाइकिल ऑटोमेशन, कोरम-आधारित कंसिस्टेंसी ट्यूनिंग और अलग-अलग नेमस्पेस में डेटा अखंडता व पुनर्प्राप्ति गति बनाए रखने के लिए टैग-आधारित सीरीज़ इंडेक्सिंग शामिल है। क्लस्टर ऑर्केस्ट्रेशन और कंपोनेंट प्लेसमेंट को उच्च उपलब्धता और संतुलित डेटा वितरण सुनिश्चित करने के लिए ऑटोमेटेड टूल्स और ऑपरेटर्स के माध्यम से प्रबंधित किया जाता है।
Fans out requests across multiple clusters and namespaces to provide a complete view of time-series data.
YDB एक डिस्ट्रीब्यूटेड SQL डेटाबेस और एनालिटिकल इंजन है जिसे हॉरिजॉन्टल स्केलेबिलिटी और मजबूत स्थिरता के लिए डिज़ाइन किया गया है। यह एक मल्टी-मॉडल सिस्टम के रूप में कार्य करता है जो सीरियलाइज़ेबल ACID ट्रांजेक्शन प्रदान करने वाले डिस्ट्रीब्यूटेड आर्किटेक्चर के माध्यम से ट्रांजेक्शनल और एनालिटिकल वर्कलोड का समर्थन करता है। यह सिस्टम अपनी व्यापक प्रोटोकॉल संगतता द्वारा प्रतिष्ठित है, जो स्टैंडर्ड SQL ड्राइवर्स के लिए PostgreSQL वायर प्रोटोकॉल और मैसेजिंग और स्ट्रीमिंग के लिए Kafka प्रोटोकॉल को लागू करता है। यह आगे एक वेक्टर डेटाबेस के रूप में कार्य करता है, जो सिमेंटिक सर्च और एम्बेडिंग्स के लिए वेक्टर इंडेक्स और अनुमानित निकटतम पड़ोसी खोजों का समर्थन करता है। यह प्लेटफ़ॉर्म रो-ओरिएंटेड और कॉलम-ओरिएंटेड फॉर्मेट्स दोनों के साथ एक हाइब्रिड स्टोरेज मॉडल का उपयोग करके डेटा को मैनेज करता है, जो पेटाबाइट-स्केल एनालिटिक्स के लिए वेक्टरराइज़्ड क्वेरी निष्पादन का उपयोग करता है। इसकी परिचालन सतह में चेंज डेटा कैप्चर स्ट्रीमिंग, एक्जेक्टली-वन्स पर्सिस्टेंट क्यूज़ और मल्टी-ज़ोन उच्च उपलब्धता शामिल है। डिप्लॉयमेंट और लाइफसाइकिल मैनेजमेंट का समर्थन Kubernetes ऑपरेटर और इंफ्रास्ट्रक्चर-एज़-कोड प्रोविज़निंग के माध्यम से किया जाता है।
Runs streaming queries that automatically restart on failure and use checkpoints to persist state.
Olric is a distributed data grid and in-memory key-value store that partitions and replicates data across a cluster of servers. It serves as a shared memory system for managing distributed maps, performing atomic operations, and acting as an in-memory data cache. The system provides a distributed locking mechanism for concurrency control and a pub-sub messaging system that broadcasts and routes messages over named channels across the cluster. The platform covers wide-ranging capabilities including cluster management and orchestration, data replication with configurable quorums, and automated
Executes distributed queries to scan and retrieve keys from maps across multiple cluster nodes.