16 个仓库
Methods for distributing data across nodes to balance load.
Distinct from Load Balancing: Distinct from Load Balancing: focuses on data partitioning logic rather than network traffic distribution.
Explore 16 awesome GitHub repositories matching devops & infrastructure · Partitioning Algorithms. Refine with filters or upvote what's useful.
This project serves as a comprehensive technical reference for the architecture and design of data-intensive applications. It provides a structured analysis of the fundamental principles required to build reliable, scalable, and maintainable software systems, covering the core trade-offs inherent in modern data infrastructure. The repository explores the mechanics of distributed data management, including strategies for replication, partitioning, and achieving consensus across multiple nodes. It details the design of storage engines, indexing techniques, and transaction management models, whi
Uses key-range or hash-based partitioning to distribute data load evenly across nodes.
Dask 是一个并行计算框架和分布式任务调度器,旨在将 Python 数据科学工作流从单机扩展到大型集群。它作为一个集群资源管理器,通过将任务及其依赖项表示为有向无环图来编排计算逻辑。这种架构允许系统在管理复杂执行要求的同时,自动将工作负载分配到可用硬件上。 该项目通过一个延迟评估引擎脱颖而出,该引擎将数据操作推迟到明确请求时才执行,从而实现全局图优化和高效的资源分配。它结合了内存感知数据溢出功能,以防止在处理超过可用内存的数据集时系统崩溃,并利用任务图融合将操作序列组合成单个执行步骤,从而最大限度地减少调度开销和节点间通信。 该平台为大规模数据分析提供了全面的功能面,包括对分布式机器学习、高性能计算集成和并行数据处理的支持。它提供了用于集群生命周期管理、性能分析和任务执行实时监控的广泛工具。用户可以在各种基础设施上部署这些环境,包括本地硬件、云提供商、容器化系统和高性能计算集群。
Organizes large datasets into partitioned arrays and dataframes to enable parallel processing across distributed clusters.
Rayon is a data parallelism library for Rust that provides a framework for converting sequential computations into parallel operations. It enables the transformation of standard data structures and loops into parallel iterators, allowing workloads to be distributed across multiple processor cores. By utilizing a work-stealing scheduler, the library dynamically balances tasks to maximize throughput and minimize execution time. The library distinguishes itself through its focus on safe, scoped task synchronization, which ensures that all spawned operations complete before a scope exits to preve
Provides a framework for transforming sequential data structures into parallel iterators for concurrent processing.
Taskflow is a C++ task-parallel framework designed to build high-performance parallel workflows and complex dependency graphs. It provides a programming model that organizes computational work into directed acyclic graphs, enabling developers to manage concurrency, resource scheduling, and task dependencies across multi-core CPUs and GPU accelerators. The framework distinguishes itself through its ability to orchestrate heterogeneous systems, allowing for the integration of hardware-accelerated kernels and memory operations into unified execution pipelines. It supports dynamic runtime subflow
Configures how computational workloads are divided among threads to optimize parallel execution.
Kafka Manager is a web-based management interface and monitoring tool for Apache Kafka clusters. It serves as a central control plane for topic administration, consumer monitoring, and cluster health inspection. The project provides specialized utilities for data rebalancing and partition reassignment to distribute workloads across brokers. It also includes tools to optimize partition leadership by electing preferred replicas. The platform covers a broad range of administrative capabilities, including the creation and configuration of message topics, tracking of consumer offsets, and the col
Generates and executes new partition assignments across brokers to balance workload and optimize performance.
KEDA is a Kubernetes event-driven autoscaler and cloud event scaling engine. It functions as a custom metrics provider that monitors external event sources—including message brokers, databases, and cloud metrics—to dynamically adjust the replica counts of containerized workloads. The project is distinguished by its scale-to-zero workflow, which reduces workloads to zero replicas during inactivity and automatically restarts them when new events are detected. It operates as a multi-cloud event trigger system, using a pluggable scaler interface to integrate with a wide array of third-party servi
Ensures the number of scaled replicas is a divisor of the total partition count to maintain even work distribution.
AutoMQ is a cloud-native streaming platform and Kafka-compatible message broker. It implements the Kafka protocol to provide integration with existing clients and ecosystems while functioning as a message queue that persists data directly to cloud object storage. The system decouples compute from storage, allowing processing power and storage capacity to scale independently. It utilizes a shared-log architecture and object-storage-based persistence to remove dependencies on local disks, which reduces operational costs and eliminates manual disk management. The platform includes mechanisms fo
Provides automated reassignment of partitions to balance network traffic and data distribution across brokers.
AutoMQ is a cloud-native streaming platform and Apache Kafka distribution that implements a decoupled compute and storage architecture. It functions as an S3-backed message queue, using object storage as the primary log repository to eliminate dependencies on local disks. The platform utilizes a stateless broker architecture to enable dynamic compute scaling and automated partition balancing. This design allows the system to adjust the number of brokers in seconds and distribute network traffic without requiring manual data migration or partition reassignment. The system provides multi-avail
Provides automated redistribution of network partitions across brokers to optimize resource utilization without manual intervention.
oneAPI Threading Building Blocks (oneTBB)
Splits large data sets into smaller blocks and processes each block on a separate thread for parallel execution.
Hazelcast is a distributed data platform that combines an in-memory data grid with a stream processing engine to support real-time analytics and event-driven applications. It functions as a partitioned, distributed key-value store that replicates data across cluster nodes to provide low-latency access and high availability. The platform also serves as a distributed SQL query engine, allowing users to execute standard SQL statements against both in-memory datasets and external data sources. What distinguishes Hazelcast is its use of a distributed consensus subsystem to maintain strongly consis
Provides automated data rebalancing across cluster nodes to maintain consistent performance and prevent hotspots.
Wraps fitness evaluation in a parallel map for transparent multiprocessing without changing algorithm logic.
Urho3D is a cross-platform 3D game engine written in C++. It uses a component-based scene graph to compose game objects from nodes and attached components, separating transforms from behaviors for modular design. The engine integrates AngelScript and Lua scripting for game logic, uses the Bullet library for physics simulation, and renders scenes with OpenGL or Direct3D through forward, deferred, or light pre-pass pipelines with customizable render passes and shadow mapping. The engine distinguishes itself with a built-in visual scene and UI editor for composing 3D worlds and interface layouts
Dispatches work items to background threads for parallel processing across CPU cores.
KafkaJS 是一个纯 JavaScript 编写的 Apache Kafka 客户端,提供了从 Kafka 集群生产和消费消息所需的必要工具,无需原生依赖或外部插件。它作为 Node.js 应用程序参与分布式消息处理和实时事件流的综合集成库。 该项目以其对 Kafka 有线协议的原生实现而著称,避免了 C++ 依赖。它具有支持 SSL、TLS 和 SASL 身份验证的安全客户端,以及允许原子消息发送和链接偏移量提交的事务功能,以确保精确一次 (exactly-once) 处理。 该库涵盖了广泛的运营领域,包括用于管理主题和消费者组的完整集群管理、高级分区路由和分配策略,以及通过事件驱动监控实现的全面遥测。它还实现了网络可靠性模式,例如指数退避重试和机架感知数据获取,以优化延迟。
Moves partition replicas between different brokers and monitors the migration progress.
Garage is a distributed object storage system that provides an S3-compatible API gateway. It is designed to synchronize metadata across distributed nodes using conflict-free replicated data types and Merkle-tree state alignment to maintain cluster-wide consistency. The system ensures data resilience through zone-aware replication, distributing data copies across multiple physical locations. It employs quorum-based request routing and versioned layout management to validate and commit cluster configuration changes. The project covers a broad range of operational capabilities, including automa
Automatically redistributes data partitions across storage nodes to balance load and maintain replica counts.
Connector-X is a high-performance SQL data extraction library and bridge for transferring relational database records into memory-efficient data structures. It functions as a parallel database connector and federated query engine capable of executing and joining queries across multiple remote database connections to aggregate data locally. The project distinguishes itself through a zero-copy approach to data loading, which transfers SQL query results into memory structures without duplicating data. It maximizes throughput by partitioning SQL queries into threads, employing parallel columnar a
Increases data throughput by splitting SQL queries into partitions and downloading them via multiple simultaneous threads.
This project is an autonomous workflow engine and orchestration platform designed to coordinate specialized AI agents. It functions as a development framework that manages the end-to-end lifecycle of complex, multi-step tasks, including persona definition, persistent memory management, and the execution of automated coding workflows. By acting as a Model Context Protocol server, it enables standardized communication between development tools and external AI models. The platform distinguishes itself through an event-driven architecture that routes typed messages between agent personas, allowin
Triggers concurrent execution of agent contexts by emitting events that spawn bounded parallel backend instances.