11 个仓库
Techniques for grouping multiple database commands into a single network request to reduce round-trip latency.
Distinct from High-Throughput Ingestion Pipelines: Focuses on command batching in a database client rather than general ingestion pipelines or event streaming.
Explore 11 awesome GitHub repositories matching data & databases · Command Pipelining. Refine with filters or upvote what's useful.
ioredis is a performance-focused Redis client for Node.js designed to execute commands and manage data connections. It provides a specialized interface for interacting with standalone servers, sharded clusters, and high-availability setups. The library distinguishes itself with native support for Redis Cluster, featuring automatic slot discovery and network address mapping, and Redis Sentinel for master node discovery and automatic failover. It also includes a dedicated Lua scripting interface that utilizes server-side caching to ensure atomic operations. The project covers a broad set of ca
Optimizes throughput by grouping multiple commands into single network requests to minimize TCP overhead.
ioredis is a performance-focused Redis client for Node.js applications. It provides a comprehensive interface for interacting with Redis servers, including specialized clients for sharded clusters and Sentinel-based high availability environments. The project distinguishes itself through advanced networking and execution capabilities, such as automatic event-loop pipelining to reduce overhead and a system for routing read-write traffic between primary and replica nodes. It also features a dedicated Lua scripting interface that allows server-side scripts to be registered as custom client comma
Queues multiple commands in memory and sends them in a single network round-trip to increase throughput.
redis-py is a Python client library for executing Redis commands and managing in-memory data structures. It provides the necessary components to integrate Python applications with Redis for data storage and retrieval. The project includes a cluster client for monitoring health and managing automatic failover across multiple active-active database replicas. It also features a connection pool manager to maintain reusable socket connections and a dedicated pub/sub client for subscribing to real-time message channels. The library covers broad capability areas including performance optimization t
Supports grouping multiple Redis commands into a single network request to minimize round-trip latency.
redis-py is a Python client library for interacting with Redis databases to execute commands and manage key-value data. It serves as a driver for programmatic data manipulation, providing interfaces for Redis command execution and key-value storage. The project includes a dedicated cluster client that handles topology discovery, slot mapping, and request routing across distributed nodes. It further supports high availability through active-active deployment coordination, utilizing health checks and failure detection to trigger automatic failover between instances. The library incorporates ne
Groups multiple database commands into a single network request to reduce round-trip latency.
Codis is a distributed proxy system designed for scaling Redis clusters. It provides a sharding proxy that distributes data across multiple instances and a cluster manager to oversee the environment. The system enables horizontal scaling through dynamic resharding, which allows data slots to be migrated between servers without interrupting operations. It supports multi-key atomic operations using hash tags to ensure related keys are routed to the same server. The platform includes a graphical cluster management dashboard for monitoring and administration. It implements high availability prox
Reduces network latency by grouping multiple database commands into a single network request.
Redis is a high-performance in-memory key-value store that functions as a distributed cache, message broker, and NoSQL database. It provides sub-millisecond read and write access to data stored in RAM and can operate as a vector database for indexing high-dimensional embeddings. The system supports a wide range of data storage and synchronization primitives, including the management of strings, hashes, lists, sets, and JSON documents. It enables real-time data operations through atomic transactions, hybrid persistence using snapshots and append-only logs, and high-availability configurations
Groups multiple commands into a single network request to reduce round-trip time and increase throughput.
Redigo is a Redis client library for Go applications, providing the means to execute commands, manage connections, and interact with Redis data stores. The library includes a connection pool manager to maintain a cache of reusable open connections and a pipelining tool that groups multiple commands into a single network round-trip to increase throughput and reduce latency. It also provides an implementation for broadcasting events and receiving real-time messages through Redis communication channels. The project covers broader capability areas including remote scripting for executing logic o
Groups multiple commands into a single network round-trip to increase throughput and reduce latency.
Predis is a PHP library for connecting to and executing commands against Redis and Valkey data stores. It functions as a client for managing data integration, providing dedicated implementations for cluster sharding, pub/sub messaging, and Sentinel-based service discovery. The project distinguishes itself through specialized clients for executing server-side Lua scripts with automated hash caching and a cluster client that supports gossip protocols and key distribution. It also implements a Sentinel client to manage high availability and failover within replicated environments. The library c
Implements command pipelining to group multiple database requests into a single network transmission to reduce latency.
redis-rs 是一个用于通过同步和异步 Rust 接口与 Redis 数据存储进行交互的客户端库。它作为执行数据缓存、会话管理和通用数据存储的驱动程序。 该库具有对 Redis Cluster 环境的专门支持,包括集群感知节点路由和分布式数据管理。它通过零拷贝反序列化来最大限度地减少内存分配,并采用多路复用连接模型,允许多个并发请求共享单个网络连接。 该项目涵盖了广泛的能力,包括 JSON 文档存储、带有部分故障处理的命令流水线以及连接池。通过 TLS 加密和基于 Azure Entra ID 的令牌身份验证提供安全连接。开发过程通过用于单元和集成测试的连接模拟(mocking)得到支持。
Reduces network latency by grouping multiple Redis commands into a single network round trip.
这是一个 Ruby 客户端库和协议驱动程序,用于将 Ruby 应用程序与 Redis 数据库集成。它作为一个通信层,管理协议版本并提供执行数据库操作的统一接口。 该库支持多种部署拓扑,包括独立实例、用于高可用性主节点发现和故障转移的 Redis Sentinel,以及具有槽位感知请求路由和节点发现的 Redis Cluster。它还提供使用一致性哈希的客户端分片,以将数据分布在独立的服务器上。 广泛的功能包括原子事务管理和用于服务器端转换的 Lua 脚本,以及对地理空间坐标和流等专用数据类型的支持。性能通过命令流水线和原生解析扩展进行优化,而安全性则通过 SSL/TLS 加密和双向证书认证进行处理。 该客户端包含使用容器编排独立和集群数据库拓扑的工具,用于自动化集成测试。
Groups multiple database commands into a single network request to significantly reduce round-trip latency.
Rueidis is a high-performance Redis client library for Go that provides a type-safe and asynchronous interface for interacting with Redis servers. It includes a full implementation of the Redis serialization protocol and a dedicated connection manager to handle pooling, multiplexing, and automatic pipelining. The library is distinguished by its support for RDMA connectivity to reduce latency and CPU overhead. It features a distributed lock manager that implements majority-based locking and optimistic concurrency control, as well as client-side caching with invalidation signals to minimize net
Groups concurrent non-blocking commands into a single network request to increase throughput.