7 Repos
Techniques such as block caching and bloom filters to accelerate data retrieval from object storage.
Distinct from S3 Throughput Optimizers: Distinct from S3 Throughput Optimizers: focuses specifically on accelerating read paths via caching and membership testing rather than parallel I/O movement patterns.
Explore 7 awesome GitHub repositories matching data & databases · Read Performance Optimizations. Refine with filters or upvote what's useful.
CubeFS ist ein verteiltes Cloud-Speichersystem, das für die Verwaltung von Datei- und Objektspeichern über Rechenzentren und hybride Clouds hinweg entwickelt wurde. Es fungiert als mandantenfähiges verteiltes Dateisystem und Objektspeicher, der Daten im Exabyte-Maßstab verarbeiten kann und eine verteilte Architektur zur Speicherung unstrukturierter Inhalte nutzt. Das System zeichnet sich durch eine Multi-Protokoll-Schnittstellenebene aus, die den gleichzeitigen Datenzugriff über S3-, POSIX- und HDFS-Schnittstellen ermöglicht. Es verwendet eine entkoppelte Compute-Storage-Architektur, um Verarbeitung und Persistenz unabhängig voneinander zu skalieren, und implementiert fein abgestimmte Isolationsrichtlinien, um Ressourcen und Daten zwischen verschiedenen Mandanten zu trennen. Die Zuverlässigkeit wird durch konfigurierbare Redundanzstrategien verwaltet, einschließlich Multi-Replica-Mirroring und Erasure Coding. Die Plattform beinhaltet ein Multi-Tier-Caching-System zur Beschleunigung des Datenzugriffs und integriert sich via Container Storage Interface-Treiber in Kubernetes, um die Bereitstellung persistenter Volumes zu automatisieren.
Optimizes I/O performance for various file sizes through sequential and random write optimizations.
Dragonboat ist eine Go-Implementierung des Raft-Konsensprotokolls, die darauf ausgelegt ist, einen konsistenten Status über einen verteilten Cluster von Knoten hinweg aufrechtzuerhalten. Sie bietet eine Bibliothek zum Aufbau verteilter Zustandsautomaten, die Datenintegrität und Fehlertoleranz bei Systemausfällen gewährleisten. Das Projekt zeichnet sich durch eine Multi-Group-Raft-Implementierung aus, die Daten über unabhängige Konsensgruppen partitioniert, um Arbeitslasten zu verteilen und die gesamte Verarbeitungskapazität des Systems zu erhöhen. Es integriert zudem gegenseitiges TLS (mTLS), um die Kommunikation zwischen Knoten zu verschlüsseln und die Identität von Clustermitgliedern zu verifizieren. Das System umfasst Funktionen für hochperformante Zustandsautomaten mit Unterstützung für Speicher- und Festplattenpersistenz. Es bietet Optimierungen für den Read-Path, um Konsistenz ohne Generierung neuer Log-Einträge zu gewährleisten, ein pluggbares Speicher-Interface für benutzerdefinierte Log-Backends sowie administrative Tools für die Quorum-Wiederherstellung, um die Verfügbarkeit nach einem permanenten Verlust der Knotenmehrheit wiederherzustellen. Die operative Stabilität wird durch den Export von Cluster-Gesundheitsmetriken unterstützt.
Implements read-path optimizations that verify the latest committed index to ensure consistency without generating new log entries.
Velox ist eine leistungsstarke C++-Abfrage-Ausführungs-Engine und eine Bibliothek für spaltenbasierte Datenverarbeitung. Sie dient als kompositionsfähiges Framework zur Implementierung analytischer Query-Engines und bietet einen vektorisierten Ausdrucksauswerter sowie ein Toolkit für Datenmanagementsysteme. Das Projekt zeichnet sich durch die Verwendung vektorisierter spaltenbasierter Ausführung und arena-basierter Speicherallokation zur Verarbeitung großer Datensätze aus. Es bietet spezialisierte Optimierungen wie Broadcast-Join-Table-Caching, Dynamic-Filter-Push-Down und Dictionary-Encoding, um den Speicher-Overhead zu reduzieren und analytische Lesezugriffe zu beschleunigen. Die Engine deckt ein breites Spektrum analytischer Funktionen ab, einschließlich der Implementierung von Hash-, Merge- und Semi-Joins sowie mehrstufiger paralleler Aggregation und der Berechnung von Fensterfunktionen. Sie bietet Primitive für spaltenbasierte In-Memory-Speicherung, Parquet-Datendekodierung und die Integration mit Cloud-Speichern. Erweiterbarkeit wird durch ein Funktionsregistrierungssystem für benutzerdefinierte Skalar- und Aggregatfunktionen geboten, wobei High-Level-Bindings verfügbar sind, um die C++-Logik mit Python zu verbinden.
Optimizes filtered reads from Parquet columns using stack buffers to reduce per-row overhead.
Orioledb is a cloud-native storage engine for PostgreSQL designed to replace the default storage layer to improve vertical scalability and performance on modern hardware. It functions as an index-organized table store, organizing table rows directly within the primary index to accelerate data retrieval. The engine utilizes an undo log storage system to manage data versioning, which eliminates the need for manual vacuuming and prevents table bloat. It further reduces the disk footprint through block-level and page-level data compression. The project provides capabilities for advanced index ma
Improves read throughput on high-core servers by removing buffer mapping and atomic operations during in-memory reads.
sofa-jraft is a Java implementation of the Raft consensus algorithm. It serves as a distributed consensus engine and linearizable state machine designed to ensure high availability and data consistency across a cluster of nodes. The project provides a replicated key-value store and a coordination engine for managing distributed state. It distinguishes itself through support for multi-group consensus sharding to distribute traffic and a service provider interface that allows for custom log storage and entry encoding implementations. The system covers a wide range of distributed capabilities,
Provides optimized read indices to guarantee linearizable reads without the overhead of full log writes.
SlateDB is a cloud-native key-value store and distributed database engine that utilizes a log-structured merge-tree architecture. It serves as a transactional storage layer designed to persist data directly to cloud object storage. The engine differentiates itself by optimizing read performance for remote storage through the use of bloom filters and multi-level block caching. It employs a single-writer multi-reader model and provides the ability to create zero-copy clones via copy-on-write checkpointing. The system supports atomic transactions, range queries, and snapshot-based concurrency c
Implements multi-level block caching and bloom filters to reduce latency when retrieving data from cloud object storage.
This project is a reference library of architectural blueprints, study materials, and design patterns for building scalable, high-availability distributed systems. It serves as a technical guide for scalability engineering, providing structural solutions for common engineering challenges. The repository focuses on distributed systems design, covering essential patterns for data replication, consensus algorithms, and transaction management. It distinguishes itself by offering detailed blueprints for specialized domains, including real-time data streaming, large-scale data storage, and high-ava
Uses Bloom filters to optimize read paths by verifying key existence before performing disk lookups.