18 dépôts
Techniques to maximize the volume of data updates per second using buffering and batching.
Distinct from Data Write Throughput Optimizers: Focuses on total write volume and throughput rather than just concurrency or specific buffering patterns.
Explore 18 awesome GitHub repositories matching data & databases · Write Throughput Optimizations. Refine with filters or upvote what's useful.
LevelDB is an embedded database library and persistent storage engine that provides a sorted key-value store. It uses a log-structured merge-tree architecture to map byte arrays to values, running directly within a process to provide storage without the need for a separate server process. The system is distinguished by its use of custom comparison functions to define key ordering, enabling efficient range scans and sequenced lookups. It ensures data reliability through atomic batch execution, consistent snapshot generation, and log-based recovery after failures. The engine covers broad capab
Uses atomic batches and asynchronous writes to handle large volumes of data updates efficiently.
MMKV is a high-performance, cross-platform key-value storage framework designed for mobile platforms and POSIX environments, including Android, iOS, macOS, and Windows. It provides a persistence layer that utilizes memory-mapped files and binary serialization to achieve low-latency data access. The project distinguishes itself through native support for multi-process synchronization, allowing concurrent read and write operations across different application processes. It also implements security via AES encryption for data at rest, featuring symmetric encryption and key rotation to protect st
Minimizes I/O operations by comparing new values against existing ones before committing writes to disk.
rqlite is a distributed relational database that replicates SQLite data across a cluster using the Raft consensus algorithm. It functions as a fault-tolerant storage system that provides high availability and a web API for executing SQL queries and managing relational data without requiring native database drivers. The system distinguishes itself by using an HTTP SQL interface to expose database operations and cluster management. It features a real-time change data capture stream that pushes database mutations to external HTTP endpoints via webhooks and supports the scaling of read throughput
Improves write performance using queued writes and maintains storage efficiency through automatic vacuuming.
FoundationDB is an ACID-compliant distributed transactional key-value store. It functions as a scalable database engine that ensures strict serializability and data consistency across a cluster of servers using a shared-nothing architecture. The system is distinguished by its multi-region replication capabilities, allowing data to be synchronized across different datacenters for high availability and disaster recovery. It utilizes optimistic concurrency control to manage distributed transactions and employs a majority-based coordination system to maintain cluster state. The platform provides
Allows choosing between a memory-optimized engine for small datasets or an SSD-optimized engine for larger ones.
Bolt is a single-file embedded key-value store for Go applications. It is an ACID transactional database that organizes data in B+trees on disk to provide efficient sorted key retrieval and range scans. The system uses a memory-mapped model to map the database file directly into the process address space for fast random-access reads. The project distinguishes itself through a multi-version concurrency control architecture that allows multiple simultaneous readers to access a consistent snapshot of data without blocking a writer. It employs a single-writer multi-reader locking model and uses a
Combines multiple write operations into single transactions to increase throughput and reduce disk commit overhead.
better-sqlite3 is a high-performance SQLite3 client for Node.js that executes queries synchronously, returning results directly without callbacks or promises. It compiles as a native addon using N-API, binding directly to the SQLite3 C library for immediate query execution and zero-copy result serialization into native JavaScript objects. The library is optimized for Write-Ahead Logging (WAL) mode, enabling faster concurrent reads and writes in web applications. It provides durability level tuning through the synchronous pragma, allowing adjustments between FULL, NORMAL, and OFF modes to bala
Improves read and write performance for concurrent database access by enabling Write-Ahead Logging.
Feast is an open-source feature store for machine learning that provides a central platform for defining, storing, and serving features across both training and inference workflows. It operates as a declarative system where feature definitions are written as code in Python files, synchronized to a central registry, and made available for low-latency online retrieval or point-in-time correct historical joins for training datasets. The project abstracts storage behind a pluggable architecture, allowing offline and online backends to be swapped without changing retrieval logic, and coordinates ma
Groups multiple insert queries into a single transaction to improve write throughput.
NLog is an open-source logging framework for .NET that functions as a structured logging library and log routing engine. It captures log events with named parameters as searchable data rather than plain text and directs these messages to various output destinations based on severity and source. The framework is designed as an extensible platform, supporting custom targets, layout renderers, and filters that can be loaded from external assemblies or defined in code. It features a dynamic configuration system that allows logging targets, rules, and layouts to be updated via XML or programmatic
Implements write throughput optimizations using buffering and batching to increase disk efficiency for log files.
Maddy is a modular mail server that assembles a complete email system by connecting small, single-purpose modules through a declarative configuration file. Rather than a monolithic stack, it lets operators compose message processing, storage, authentication, and security enforcement from interchangeable building blocks, with each module handling a specific function like receiving SMTP connections, verifying credentials, or applying policy checks. The server distinguishes itself through its flexible authentication and security architecture. It delegates user verification to external systems in
Configures SQLite WAL journal mode and autocheckpoint intervals to sustain high write throughput.
This is an open-source, crowd-sourced wiki textbook that teaches Linux system programming in C. It covers the core operating system concepts of process management through the fork-exec-wait model, dynamic memory allocation using implicit free list heap allocators, inode-based file systems, inter-process communication via pipes and shared memory, POSIX threads with synchronization primitives, signal-based asynchronous notification, virtual memory with page table translation, and runtime diagnostics using Valgrind and GDB. The textbook distinguishes itself by providing practical, implementation
Mentions splitting file content across disks for throughput as a conceptual topic.
Pebble is an embedded key-value storage engine written in Go, designed as a library that provides durable, write-optimized data persistence directly within applications. It organizes data using a log-structured merge-tree (LSM-tree) structure, where writes are first buffered in an in-memory skiplist memtable and persisted to a write-ahead log before being flushed to block-based SSTable files on disk. The engine supports atomic batch commits, configurable write synchronization, and automatic background compaction that merges and rewrites sorted runs to reclaim space and maintain read performanc
Designed for high write throughput using batched atomic commits and background compaction to reduce write amplification.
Raspotify est un streamer audio headless pour les appareils Linux qui fonctionne comme un client Spotify Connect. Il opère comme un démon système en arrière-plan, permettant au matériel d'agir comme un récepteur audio sans fil contrôlable via l'application officielle Spotify. Le service est conçu pour les ordinateurs monocarte et intègre une minimisation de l'écriture sur disque pour réduire l'usure des cartes SD. Il y parvient en redirigeant les tampons de pistes audio vers un système de fichiers en mémoire. Le projet inclut des capacités pour la configuration de la qualité audio, incluant des ajustements de débit binaire et de taux d'échantillonnage. Il gère également l'authentification via la mise en cache de jetons locaux pour maintenir des connexions persistantes sans flux de connexion répétés.
Reduces physical disk writes by buffering track downloads in system memory rather than on the SD card.
OpenTSDB est une base de données de séries temporelles distribuée et un moteur de métriques conçu pour stocker et gérer des volumes massifs de métriques système à haute cardinalité. Il fonctionne comme un magasin de données et une plateforme d'analyse qui permet l'ingestion de métriques à grande échelle et la surveillance de la performance de l'infrastructure à travers un cluster distribué. Le système se distingue par une abstraction de stockage distribué qui supporte de multiples backends tels que HBase, Cassandra et Google Bigtable. Il utilise un arbre de métriques hiérarchique pour organiser les séries temporelles et emploie l'indexation par identifiant numérique pour réduire l'empreinte de stockage et accélérer les recherches pour les métriques taguées. Le projet couvre de larges domaines de capacités incluant l'analyse de données de séries temporelles avec des calculs de centiles distribués et le downsampling, ainsi qu'une gestion complète des métadonnées. Il fournit une intégration API pour l'ingestion et l'interrogation de données, le cache off-heap pour l'optimisation des performances, et des outils pour l'audit d'intégrité des données et l'analyse d'anomalies. Le système est géré via une interface en ligne de commande pour l'administration de la base de données et la synchronisation de l'arbre de métriques.
Arranges data based on timestamps to reduce disk reads and minimize background merge overhead.
ipscan est un auditeur réseau multiplateforme et un scanner réseau basé sur Java utilisé pour découvrir les périphériques réseau et exporter les résultats de scan. Il fonctionne comme un scanner de plage d'adresses IP et un scanner de ports TCP/UDP pour identifier les hôtes actifs et les services ouverts sur un réseau. L'application dispose d'une architecture de fetcher basée sur des plugins qui permet l'intégration de fetchers de collecte de données personnalisés pour récupérer des informations matérielles ou logicielles spécifiques à partir des hôtes découverts. Ses capacités plus larges incluent la découverte de réseau local, l'audit de ports réseau et la création d'inventaires d'actifs réseau. Les utilisateurs peuvent interagir avec le logiciel via une interface utilisateur graphique avec mise à l'échelle haute densité ou via une interface en ligne de commande pour le scan automatisé.
Implements disk-buffered writing to export large scan datasets without causing memory overflow.
Ce projet est un tutoriel complet sur les bases de données MySQL et une ressource pédagogique conçue pour les débutants. Il sert de manuel technique et de guide d'apprentissage couvrant l'installation, la configuration et l'exploitation d'un système de gestion de base de données relationnelle. Les supports fournissent une approche structurée des fondamentaux des bases de données relationnelles, incluant la conception de schéma, la création de tables et l'exécution de requêtes SQL. Il inclut des conseils spécifiques sur l'administration de base de données, tels que la gestion des accès utilisateurs, la configuration des moteurs de stockage et la gestion de l'installation du serveur sur différents systèmes d'exploitation. La ressource couvre un large éventail de capacités, incluant la manipulation de données pour les données temporelles et les caractères Unicode, la connectivité client-serveur et la gestion du cycle de vie de la base de données. Elle fournit également des informations de diagnostic pour le dépannage du système afin de résoudre les conflits d'installation et les erreurs de démarrage. Le contenu est délivré sous forme d'une collection de documentation basée sur le markdown, présentant des guides procéduraux étape par étape et des démonstrations de requêtes basées sur des exemples.
Explains how to optimize data storage on disk by selecting and configuring appropriate MySQL storage engines.
This repository is a collection of technical knowledge and solutions focused on mobile application development, particularly for Android and iOS platforms. It covers a wide range of practical engineering challenges, including hotfix and patching techniques, database management and repair, network communication, logging, and video processing. The content is presented as shared knowledge, documenting real-world problems and their implementations. The project provides detailed guidance on applying hotfixes to running Android applications through multiple methods, such as class replacement, full
Details techniques for optimizing SQLite database performance on iOS platforms.
Toshi est un moteur de recherche plein texte et une bibliothèque implémentée en Rust, conçue pour gérer et interroger des jeux de données structurés à grande échelle. Il fonctionne comme une plateforme de recherche distribuée qui permet une récupération d'informations à haute vitesse sur des collections massives de données. Le système se distingue par une architecture conçue pour une ingestion à haut débit et une exécution de requêtes en parallèle. Il utilise un framework de concurrence basé sur le modèle d'acteur pour coordonner les processus de travail et emploie le sharding distribué pour partitionner les segments d'index sur plusieurs nœuds. Pour maintenir les performances et l'intégrité des données, le moteur automatise la gestion du cycle de vie des index, incluant la fusion de segments en arrière-plan et la journalisation persistante (write-ahead logging). La plateforme fournit des capacités complètes pour gérer l'infrastructure de recherche, incluant des outils pour le scaling des clusters et l'optimisation du débit d'ingestion. Elle repose sur le stockage d'index inversés et l'accès aux fichiers mappés en mémoire pour optimiser les opérations disque-mémoire, garantissant des performances de recherche constantes à mesure que les volumes de données augmentent.
Allows tuning of memory allocation, thread counts, and buffers to maximize the efficiency of document ingestion.
XlsxWriter is a library for generating spreadsheets in the XLSX format, functioning as an Excel workbook writer and file generator. It provides the capability to write data, apply cell formatting, and build complex layouts across multiple worksheets. The project distinguishes itself with a memory-optimized writing mode that flushes large datasets to disk row-by-row, enabling the creation of files exceeding 4 GB while minimizing RAM consumption. It also includes a specialized mechanism for embedding binary project files and digital signatures to enable VBA macros and signed scripts within work
Uses a specialized processing mode to lower memory consumption when generating spreadsheets with massive datasets.