Детальная информация
Название | Разработка локального легковесного хранилища на базе LSM-деревьев для автономных Java-проектов: выпускная квалификационная работа бакалавра: направление 09.03.03 «Прикладная информатика» ; образовательная программа 09.03.03_03 «Интеллектуальные инфокоммуникационные технологии» |
---|---|
Авторы | Виниченко Даниил Николаевич |
Научный руководитель | Андрианова Екатерина Евгеньевна |
Организация | Санкт-Петербургский политехнический университет Петра Великого. Институт компьютерных наук и кибербезопасности |
Выходные сведения | Санкт-Петербург, 2025 |
Коллекция | Выпускные квалификационные работы ; Общая коллекция |
Тематика | nosql ; базы данных ; lsm-деревья ; автономные встроенные хранилища ; apache casandra ; rocksdb ; badgerdb ; java ; автономные устройства ; sstable ; data bases ; lsm-trees ; local integrated storages ; autonomous devices |
Тип документа | Выпускная квалификационная работа бакалавра |
Тип файла | |
Язык | Русский |
Уровень высшего образования | Бакалавриат |
Код специальности ФГОС | 09.03.03 |
Группа специальностей ФГОС | 090000 - Информатика и вычислительная техника |
DOI | 10.18720/SPBPU/3/2025/vr/vr25-1505 |
Права доступа | Доступ по паролю из сети Интернет (чтение, печать, копирование) |
Дополнительно | Новинка |
Ключ записи | ru\spstu\vkr\35713 |
Дата создания записи | 30.07.2025 |
Разрешенные действия
–
Действие 'Прочитать' будет доступно, если вы выполните вход в систему или будете работать с сайтом на компьютере в другой сети
Действие 'Загрузить' будет доступно, если вы выполните вход в систему или будете работать с сайтом на компьютере в другой сети
Группа | Анонимные пользователи |
---|---|
Сеть | Интернет |
В этой работе исследуются современные подходы к организации эффективных локальных NoSQL-хранилищ на основе LSM-деревьев, с фокусом на Apache Cassandra и RocksDB. Объектом исследования выступают алгоритмы MemTable→SSTable и методы компактации. Цель работы – провести обзор существующих архитектур, выявить их преимущества и ограничения, а затем создать Java-библиотеку без внешних зависимостей, оптимизированную для встраиваемых систем и IoT-устройств. Методология включает теоретический анализ LSM-деревьев, сравнительный обзор стратегий записи и компактации, проектирование и реализацию прототипа на Java 8 с CRC-контрольной суммой и Bloom-фильтрами, а также комплексное тестирование: юнит-тесты и нагрузочные стенды на Java, Go+BadgerDB и C++17+RocksDB, в том числе в Docker-контейнере с лимитами 0,5 CPU и 512 MB RAM. По результатам нагрузочных тестов разработка продемонстрировала среднюю задержку записи до 12 µs и чтения до 4 µs при footprint менее 20 MB, а все проверки CRC и консистентности прошли на 100%. Полученный прототип готов к практическому применению в автономных системах с ограниченными ресурсами, таких как IoT-датчики и встроенные контроллеры.
This work investigates modern approaches to building efficient local NoSQL storages based on LSM-trees, focusing on Apache Cassandra and RocksDB. The subject of research is the MemTable→SSTable algorithm and compaction methods. The objective is to review existing architectures, identify their strengths and limitations, and then implement a minimal Java 8 library without external dependencies optimized for embedded systems and IoT devices. The methodology includes theoretical analysis of LSM-trees, comparative study of write and compaction strategies, design and implementation of a Java prototype with CRC validation and Bloom filters, and comprehensive testing: unit tests and load benchmarks on Java, Go+BadgerDB, and C++17+RocksDB, including in a Docker container constrained to 0.5 CPU and 512 MB RAM. Load testing results show write latencies up to 12 µs and read latencies up to 4 µs with a memory footprint under 20 MB, and 100% success in CRC and consistency checks. The prototype is ready for practical use in resource-constrained autonomous systems such as IoT sensors and embedded controllers, with potential for further optimization via sparse indexing and GC tuning.
Место доступа | Группа пользователей | Действие |
---|---|---|
Локальная сеть ИБК СПбПУ | Все |
|
Интернет | Авторизованные пользователи СПбПУ |
|
Интернет | Анонимные пользователи |
|
- Разработка локального легковесного хранилища на базе LSM-деревьев для автономных Java-проектов
- ВВЕДЕНИЕ
- 1. Анализ предметной области
- 2. Проектирование прототипа хранилища
- 3. Практическая реализация решения
- 4. Тестирование и апробация реализованного решения
- ЗАКЛЮЧЕНИЕ
- СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ
- Приложение 1 Код приложения
Количество обращений: 0
За последние 30 дней: 0