24 مستودعات
Coordination strategies between local server caches and distributed stores to optimize data updates.
Distinct from Distributed Data Caching Layers: Focuses on the hierarchy and synchronization between different caching tiers, not just distributed layers.
Explore 24 awesome GitHub repositories matching data & databases · Multi-level Caching. Refine with filters or upvote what's useful.
This project is a comprehensive Java backend engineering guide and technical reference focused on high-concurrency design, distributed systems, and microservices architecture. It provides detailed strategies for decomposing monolithic applications, managing service discovery, and implementing the architectural patterns required for scalable backend environments. The repository distinguishes itself through an extensive collection of big data algorithmic references and database scaling strategies. It covers memory-efficient techniques for analyzing massive datasets, such as Top-K element extrac
Coordinates local server caches and distributed stores via message queues to minimize backend load during updates.
RocksDB is a high-performance, embeddable persistent key-value library and storage engine based on Log-Structured Merge-trees. It is designed to provide durable storage for large-scale datasets, integrating directly into applications to manage data on flash and RAM-based hardware. The engine is distinguished by its focus on minimizing read and write amplification through multi-threaded compaction and custom memory allocators. It features specialized optimizations for flash storage, including support for zoned block devices, and provides the ability to extend store behavior via external plugin
Merges smaller sorted files into larger ones across multiple levels to reclaim space and minimize write amplification.
AISystem is a comprehensive AI full-stack infrastructure project covering the entire pipeline from AI chip architecture to high-level training frameworks. It encompasses the development of AI compiler frameworks, inference engines, and distributed training orchestrators designed to coordinate workloads across a heterogeneous compute stack of CPUs, GPUs, and NPUs. The project focuses on the deep integration of software and hardware, employing software-hardware co-design to align tensor layouts with physical memory structures. It provides specialized capabilities for accelerating Transformer mo
Manages a hierarchy of registers and caches to minimize data movement latency and maximize memory bandwidth.
Open-IM-Server is an instant messaging server and cross-platform messaging backend designed for real-time text and media communication. It provides a distributed chat architecture that coordinates user sessions and group communications across multiple server nodes to support millions of concurrent users. The system features a scalable message distribution model that utilizes asynchronous message pipelines and distributed queueing to maintain reliability during traffic spikes. It employs multi-level data caching across local memory and distributed stores to reduce latency and uses a document-b
Reduces latency via multi-level data caching across local memory and distributed stores.
Doctrine ORM is a PHP object-relational mapper that connects application objects to relational database tables. It uses the data mapper and identity map patterns to decouple the in-memory object model from the database schema, allowing developers to manage data persistence without writing manual SQL. The project features a dedicated object-oriented query language and programmatic builder for retrieving data based on entities rather than tables. It implements a unit-of-work system to track object changes during a request and synchronize them via atomic transactions. The capability surface inc
Implements a second-level cache to store frequently accessed entities and collections across sessions.
XiangShan is a high-performance RISC-V processor core and a hardware description language framework. It provides a construction-based system for designing, simulating, and verifying complex processor micro-architectures and peripheral devices. The project includes a high-performance CPU simulator used for architectural exploration and functional verification of processor execution. The project implements a superscalar out-of-order CPU architecture that uses renaming and reorder buffers to execute instructions in parallel. It generates synthesizable Verilog files from hardware descriptions to
Implements a non-blocking cache hierarchy that tracks pending requests to prevent pipeline stalls during memory misses.
Hibernate ORM هو أداة ربط كائني علائقي (ORM) للغة Java، وتطبيق كامل لواجهة Jakarta Persistence API. يعمل كطبقة تجريد لقواعد بيانات SQL تقوم بتحويل نماذج كائنات Java إلى مخططات قواعد بيانات علائقية لإدارة استمرارية البيانات ودورة حياتها. يتميز إطار العمل بنظام لعزل البيانات متعدد المستأجرين (multi-tenant) لفصل بيانات العملاء داخل مثيل قاعدة بيانات واحد. كما يحتوي على مُنشئ لمخطط قاعدة البيانات يقوم تلقائياً بإنتاج وتحديث الهياكل العلائقية بناءً على تعيينات الكيانات. يغطي النظام مجالات واسعة تشمل إدارة المعاملات، والتحكم في قفل التزامن، وتتبع البيانات الزمنية لسجلات التدقيق. ويوفر أدوات لتحسين جلب البيانات من خلال استراتيجيات الرسوم البيانية للكيانات (entity-graph)، ويدعم أنواع بيانات متقدمة مثل البيانات المتجهة (vector data) والحروف الوطنية.
Maintains a session-scoped map of entity identifiers to object instances to ensure referential integrity.
Upspin is a decentralized naming and storage system that provides an end-to-end encrypted file system. It assigns every user a unique identity and organizes files within a global, permissioned namespace where data is encrypted on the client before transmission. The system separates identity resolution from data storage using a public-key identity provider and a key-server architecture. This allows for decentralized identity management and the resolution of usernames to specific directory and storage server addresses. The project includes a hierarchical access control system that manages read
Implements block-level caching of storage data to accelerate repeated retrieval of encrypted blocks.
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
Automatically merges and rewrites sorted runs across multiple levels in the background to reclaim space.
HotChocolate is a GraphQL server implementation for .NET that handles queries, mutations, and subscriptions over HTTP. It provides code-first schema generation directly from C# classes and attributes, keeping the schema and business logic in sync without manual type definitions. The project also includes a GraphQL gateway that composes multiple GraphQL and REST endpoints into a single unified schema, along with a GraphQL IDE for exploring, testing, and debugging GraphQL APIs interactively. The project distinguishes itself through its comprehensive tooling ecosystem, which includes a GraphQL c
Caches fetched entities in memory so subsequent requests for the same key return instantly.
SpringSide 4 is an enterprise Java reference architecture and utility library built on the Spring Framework. It provides a pragmatic, best-practice application stack for building RESTful web services, web applications, and data access layers, along with a curated collection of high-performance utility classes for common operations like text, date, collection, reflection, concurrency, and I/O handling. The project distinguishes itself by combining a complete reference application scaffold with production-oriented infrastructure. It includes a JPA-based data access layer that automatically tran
Implements second-level caching of entities by primary key for faster retrieval.
JetCache هو إطار عمل للتخزين المؤقت في Java يوفر واجهة موحدة لإدارة بيانات التطبيق. يعمل كمدير تخزين مؤقت من مستويين، ينسق التخزين المحلي في الذاكرة وذاكرة التخزين المؤقت الموزعة عن بُعد لتقليل تأخير الشبكة وتحسين سرعات الاسترجاع. يتميز المشروع بمكتبة التخزين المؤقت التعريفية، التي تستخدم التعليقات التوضيحية (Annotations) لأتمتة تخزين وانتهاء صلاحية وإبطال نتائج الطرق. يتضمن مزامن ذاكرة تخزين مؤقت موزع للحفاظ على الاتساق عن طريق إبطال الإدخالات المحلية عبر مثيلات العنقود، وأداة قفل موزعة لتنسيق الوصول إلى الموارد المشتركة. يغطي إطار العمل مجموعة واسعة من قدرات الأداء والاستقرار، بما في ذلك الاسترجاع غير المتزامن غير المحظور، والتحديث التلقائي لذاكرة التخزين المؤقت في الخلفية، وطي الطلبات لمنع اختراق ذاكرة التخزين المؤقت. كما يوفر إدارة برمجية لذاكرة التخزين المؤقت، واستراتيجيات تسلسل قابلة للتوصيل، وميزات أمان مثل تصفية إلغاء التسلسل عبر قائمة السماح.
Coordinates a fast local in-memory layer with a persistent remote distributed store to optimize latency and scalability.
OpenTSDB هي قاعدة بيانات موزعة للسلاسل الزمنية ومحرك مقاييس مصمم لتخزين وإدارة أحجام هائلة من مقاييس النظام عالية التباين. تعمل كمخزن بيانات ومنصة تحليلات تتيح استيعاب المقاييس على نطاق واسع ومراقبة أداء البنية التحتية عبر مجموعة موزعة. يتميز النظام بتجريد تخزين موزع يدعم خلفيات متعددة مثل HBase و Cassandra و Google Bigtable. يستخدم شجرة مقاييس هرمية لتنظيم السلاسل الزمنية ويستخدم فهرسة المعرفات الرقمية لتقليل بصمات التخزين وتسريع عمليات البحث للمقاييس الموسومة. يغطي المشروع مجالات قدرات واسعة بما في ذلك تحليل بيانات السلاسل الزمنية مع حسابات النسبة المئوية الموزعة وأخذ العينات الفرعية، بالإضافة إلى إدارة شاملة للبيانات الوصفية. يوفر دمج واجهة برمجة التطبيقات لاستيعاب البيانات والاستعلام، وتخزين مؤقت خارج الكومة (Off-heap) لتحسين الأداء، وأدوات لتدقيق سلامة البيانات وتحليل الشذوذ. يتم إدارة النظام عبر واجهة سطر أوامر لإدارة قاعدة البيانات ومزامنة شجرة المقاييس.
Utilizes block-level caching and off-heap memory to minimize disk I/O during data write and retrieval processes.
يوفر هذا المشروع مواصفات رسمية ومجموعة من واجهات Java القياسية لمعالجة التدفقات غير المتزامنة. يحدد بروتوكولاً موحداً لتمرير تسلسلات العناصر بين الناشرين والمشتركين عبر خيوط معالجة (threads) مختلفة، مع التركيز على مواصفات التدفقات التفاعلية (reactive streams) لـ JVM. يركز المشروع على قابلية التشغيل البيني من خلال توفير واجهة برمجة تطبيقات (API) مشتركة تسمح لمكتبات التدفق غير المتزامن المختلفة بالعمل معاً. يتم تحقيق ذلك من خلال مجموعة قياسية من الواجهات وآليات الربط التي تترجم بين مواصفات التدفق غير المتوافقة. تغطي المواصفات بروتوكول الضغط العكسي (backpressure) غير المحظور لتنظيم تدفق البيانات ومنع تحميل النظام الزائد من خلال مطالبة المشتركين بالإشارة إلى الطلب. كما تحدد دورة حياة التدفقات، بما في ذلك إدارة الاشتراك، ومعالجة العناصر، والإنهاء القائم على الإشارة لتنظيف الموارد. يتضمن المشروع إطار عمل للتحقق من سلوك التدفق للتحقق من منطق المعالجة مقابل قواعد الضغط العكسي والأحداث غير المتزامنة.
Implements architectural patterns for building data processing stages that avoid thread locking and resource waste.
Unbound هو محلل DNS يعمل كخادم تخزين مؤقت، وعودي، ومتحقق. يقوم بترجمة أسماء النطاقات إلى عناوين IP عن طريق إجراء عمليات بحث مستقلة عبر الإنترنت أو عن طريق إعادة توجيه الاستعلامات إلى محللات خارجية. يتميز المشروع كخادم DNS قابل للبرمجة، ويوفر واجهة برمجة نصية بلغة Python وتحميل مكتبة مشتركة ديناميكية لتخصيص مسار التحليل. كما يعمل كبوابة DNS64 NAT64، حيث يقوم بتوليف عناوين IPv6 من سجلات IPv4 لتمكين الاتصال لعملاء IPv6 فقط. يتضمن النظام أطر عمل أمنية للتحقق من تشفير DNSSEC وتشفير حركة مرور DNS لمنع تسمم التخزين المؤقت والتنصت. تمتد قدراته إلى تصفية الاستجابة القائمة على السياسة، والتخزين المؤقت متعدد المستويات مع خلفيات قاعدة بيانات خارجية، وتسليم بيانات منطقة السلطة المحلية. تتم إدارة التحكم الإداري من خلال واجهة بعيدة آمنة لإرسال أوامر مشفرة إلى الخادم قيد التشغيل.
Provides multi-level response caching using local memory and external database backends to reduce latency.
InternetArchitect is an educational collection of documents and source code designed as a high concurrency architecture course. It serves as a distributed systems implementation guide, providing technical patterns and practical examples for designing scalable internet architectures that maintain stability under heavy traffic loads. The project focuses on high-performance database optimization and microservices design patterns. It covers strategies for reducing latency and increasing throughput via database sharding and proxy layers, as well as coordinating global state across distributed clus
Coordinates local in-process memory and remote distributed caches to optimize data retrieval speed in high-traffic environments.
MiniOB is an open-source educational relational database kernel designed for learning the internals of database systems. It implements a dual-engine storage architecture combining B+ Tree and LSM-Tree, supports SQL parsing and query execution, and provides transactional processing with multi-version concurrency control. The system communicates with clients using the MySQL wire protocol and includes a vector database extension for storing and querying high-dimensional vectors. The project distinguishes itself through its comprehensive coverage of core database concepts in a single, learnable c
Implements level-based compaction to merge overlapping sorted runs and bound read amplification.
Rainloop Webmail هو تطبيق بريد إلكتروني مستضاف ذاتياً يعتمد على المتصفح ويتصل بخوادم البريد الخارجية باستخدام بروتوكولات IMAP وSMTP. يعمل كعميل بدون حالة، حيث يجلب البيانات مباشرة من الخوادم دون الحاجة إلى قاعدة بيانات محلية لتخزين الرسائل. يدعم النظام إدارة البريد الإلكتروني متعدد الحسابات، مما يسمح للمستخدمين بربط هويات بريد إلكتروني متعددة بجلسة واحدة للوصول المتزامن عبر علامات تبويب المتصفح المختلفة. يتضمن نظام امتداد قائماً على المكونات الإضافية وأدوات لتخصيص واجهة المستخدم والعلامة التجارية. يوفر التطبيق قدرات لأتمتة سير عمل البريد الإلكتروني، بما في ذلك تصفية البريد الوارد وردود الإجازة التلقائية. كما يتكامل مع موفري التخزين السحابي الخارجيين لتسهيل مرفقات الملفات داخل الرسائل ويستخدم تخزيناً مؤقتاً للاستجابة متعدد المستويات لتحسين استرجاع البيانات.
Utilizes a multi-level caching strategy to store frequently accessed server data and reduce network latency.
This project is an educational framework and toolkit designed for developing and testing operating system kernels. It provides a structured environment for implementing fundamental system primitives, including virtual memory management, preemptive process scheduling, and filesystem organization, using Rust and C. The framework is specifically oriented toward RISC-V and x86 architectures, serving as a laboratory for learning how to build core system software from the ground up. The project distinguishes itself by supporting both bare-metal deployment and hardware emulation, allowing developers
Optimizes persistent storage access by maintaining an in-memory buffer of frequently used data blocks to reduce latency.
Mini-LSM هو محرك تخزين تعليمي ومكتبة قاعدة بيانات مفتاح-قيمة مصممة لتوضيح تنفيذ معمارية شجرة دمج السجلات (log-structured merge-tree). يعمل كمورد تربوي لفهم كيفية بناء أنظمة تخزين عالية الأداء من الصفر، مع التركيز على آليات هياكل البيانات المستمرة والتخزين القائم على القرص. يوفر المشروع إطار عمل وظيفياً لإدارة البيانات من خلال المسح من الذاكرة إلى القرص والتحكم في التزامن متعدد الإصدارات. يتميز بتنفيذ العزل القائم على اللقطات (snapshot-based)، والذي يسمح بعروض متسقة لحالة قاعدة البيانات أثناء العمليات المتزامنة، ويستخدم استراتيجيات ضغط مستوية لتنظيم ملفات البيانات وتحسين أداء القراءة. يغطي المحرك مجموعة واسعة من قدرات إدارة التخزين، بما في ذلك تسجيل الكتابة المسبقة (write-ahead logging) لاستعادة الأعطال والفهرسة الاحتمالية لتقليل إدخال وإخراج القرص. كما يتضمن مجموعة من أدوات التحقق والاختبار المخصصة للتحقق من سلامة عمليات التخزين والمساعدة في تشخيص المشكلات المتعلقة بالتزامن.
Organizes data files into distinct levels and merges them to reclaim space and maintain read performance bounds.