Table of Contents
Fetching ...

Modular Fault-Tolerant DBMS

Nikolay Fot, Alexander Vinarsky

TL;DR

This paper addresses storing data in extreme environments with limited computing resources by proposing a modular, fault-tolerant DBMS optimized for embedded platforms. It introduces a fixed-size-block memory manager and a multi-layer kernel, plus data fragmentation and a RAM cache to reduce disk I/O, while integrating Hamming-code-based error correction to protect data against SEUs. Empirical results on platforms like Raspberry Pi show a small deployment footprint (at least 120 KB) and competitive insert/get performance against desktop DBMS, validating feasibility for resource-constrained devices such as autonomous rovers. The approach combines memory-efficient organization, parallel processing, and error-resilient storage to deliver practical, portable relational data management in extreme conditions.

Abstract

The article addresses the problem of storing data in extreme environmental conditions with limited computing resources and memory. There is a requirement to create portable, fault-tolerant, modular database management systems (DBMS) that are optimized for use in embedded systems. Existing databases, such as LittleDB, LMDB, and Berkeley DB, are reviewed, and their limitations are identified. A variant of a portable DBMS is introduced to efficiently manage data in environments where computational resource usage must be minimized, while meeting specific requirements for fault tolerance and noise immunity. Common solutions for optimizing of insertion, storage and management of data are reviewed. Algorithms for fault-tolerant data encoding in RAM are implemented. An architectural solution to data storage and minimizing the impact of bit errors is proposed. Software that manages relational data in extreme conditions is developed, that allows testing and comparing results with existing solutions.

Modular Fault-Tolerant DBMS

TL;DR

This paper addresses storing data in extreme environments with limited computing resources by proposing a modular, fault-tolerant DBMS optimized for embedded platforms. It introduces a fixed-size-block memory manager and a multi-layer kernel, plus data fragmentation and a RAM cache to reduce disk I/O, while integrating Hamming-code-based error correction to protect data against SEUs. Empirical results on platforms like Raspberry Pi show a small deployment footprint (at least 120 KB) and competitive insert/get performance against desktop DBMS, validating feasibility for resource-constrained devices such as autonomous rovers. The approach combines memory-efficient organization, parallel processing, and error-resilient storage to deliver practical, portable relational data management in extreme conditions.

Abstract

The article addresses the problem of storing data in extreme environmental conditions with limited computing resources and memory. There is a requirement to create portable, fault-tolerant, modular database management systems (DBMS) that are optimized for use in embedded systems. Existing databases, such as LittleDB, LMDB, and Berkeley DB, are reviewed, and their limitations are identified. A variant of a portable DBMS is introduced to efficiently manage data in environments where computational resource usage must be minimized, while meeting specific requirements for fault tolerance and noise immunity. Common solutions for optimizing of insertion, storage and management of data are reviewed. Algorithms for fault-tolerant data encoding in RAM are implemented. An architectural solution to data storage and minimizing the impact of bit errors is proposed. Software that manages relational data in extreme conditions is developed, that allows testing and comparing results with existing solutions.

Paper Structure

This paper contains 4 sections, 4 tables.