Нікітін В. А. Методи підвищення ефективності узгодженості даних в інформаційних системах

English version

Дисертація на здобуття ступеня доктора філософії

Державний реєстраційний номер

0824U001862

Здобувач

Спеціальність

  • 126 - Інформаційні системи та технології

21-06-2024

Спеціалізована вчена рада

ДФ 26.002.160; ID 5546

Національний технічний університет України "Київський політехнічний інститут імені Ігоря Сікорського"

Анотація

Дисертаційна робота присвячена розробці методів для розподілених документо-орієнтованих баз даних, які дозволяють пришвидшити узгодження даних та покращити колізійну стійкість в процесі пошуку неузгоджених даних в різноманітних мережевих інформаційних системах, таких як, IoT, гетерогенні мультикомп’ютерні системи, аналітичні системи органів адміністративного управління, фінансові системи, дослідження екологічної безпеки та природокористування та інші. Також, було реалізовано спеціальне програмне забезпечення для проведення дослідів. В результаті виконання дисертаційної роботи було отримано такі результати. Розроблено метод забезпечення узгодженості даних у розподілених нереляційних документо-орієнтованих базах даних з використанням транзакційного годинника. Він отримує транзакції від клієнтських додатків та зберігає їх у відповідних чергах. Черги опрацьовуюються в залежності від пріоритету транзакції. При найвищому пріоритеті черга опрацьовується раніше, в порівнянні з тими, які мають нижчий пріоритет. Це дозволяє виділяти критично важливі дані (такі, як фінансові транзакції), які мають бути опрацьовані першочергово. При опрацюванні черги, транзакційний годинник об’єднує транзакції в результуючу транзакцію. Для цього він використовує час створення транзакції, що дозволяє глобально впорядковувати та об’єднувати їх в тому порядку, в якому вони були створені, а не отримані годинником. Після отримання результуючої транзакції, вона передається іншим реплікам, на яких відбувається запис. Слід зазначити, що при використанні транзакційного годинника, операції читання відбуваються напряму з реплік, що дозволяє зменшити навантаження на хостову машину. Удосконалено метод активної антиентропії з використанням спектрального фільтру Блума та алгоритму хешування замість дерева Меркла. Його створення обумовлено тим, що класичний механізм активної антиентропії використовує багато затратних операцій хешування. Також, при хешуванні великої кількості даних збільшується вірогідність колізій, яка може вплинути на вчасну ідентифікацію неузгодженості. Якщо таке буде відбуватися, то система може знаходитись у неузгодженому стані через те, що запуск процедури узгодження розпочнеться пізніше. Тому, для розподілених нереляційних документо-орієнтованих баз даних було вирішено використати протокол пліток, який полягає у децентралізованому способі взаємодії вузлів. Це забезпечує надійність, в порівнянні з централізованим підходом, оскільки виведення з ладу одного вузла не вплине на доступність системи. Проблема використання централізованого підходу полягає в тому, що виведення головного вузла з ладу вимагає певної затримки через використання консенсусного протоколу, який використовується для обрання нового головного вузла з існуючих реплік. Децентралізований підхід дозволяє інформаційній системі бути доступною для операцій запису, хоча це ускладнює підтримку узгодженості. Для пошуку неузгодженостей використовується певний знімок, який складається зі спектрального фільтру Блума та хеш-значення. Спеціально для розробленого методу активної антиентропії було модифіковано алгоритм формування спектрального фільтру Блума, який дозволяє пришвидшити ідентифікування неузгодженісті даних в методі активної антиентропії. Швидкість формування спектрального фільтру Блума було збільшено через використання алгоритму на основі простих чисел замість використання хеш-функцій. Результати дослідів показують, що розроблений алгоритм має вищу колізійну стійкість, ніж при використанні однієї хеш-функції та вищу швидкодію у порівнянні з використанням декількох функцій хешування. Також, спеціально для розробленого методу активної антиентропії було розроблено спосіб хешування, який стійкий до колізій. Його мета полягає у зменшенні кількості колізій при хешуванні даних, які відрізняються за розміром. Це є дуже важлим для активної антиентропії, оскільки дозволяє вчасно знайти неузгодженість. Реалізовано спеціальний сервіс транзакційного годинника із власним програмним інтерфейсом для можливості застосування в інформаційних системах розробленого методу забезпечення узгодженості з використанням транзакційного годинника з розподіленою базою даних MongoDB. Реалізовано спеціальний сервіс активної антиентропії із власним програмним інтерфейсом для використання в інформаційних системах розробленого методу активної антиентропії з розподіленою базою даних MongoDB. Реалізовано прототип фінансової інформаційної системи, в якій розподілена база даних складається з восьми вузлів. З її використанням були отримані результати дослідження розроблених методів забезпечення узгодженості даних. Програмний інтерфейс було реалізовано з використанням мови програмування Python3. Для створення тестового середовища використовувався Docker та docker-compose для оркестрації необхідними компонентами.

Публікації

Nikitin V., Krylov E., Kornaga Y., Anikin V. Combined indexing method in NoSQL databases // Adaptive Systems of Automatic Control Interdepartmental scientific and technical collection. №1(38), 2021. P. 3 – 9. DOI: https://doi.org/10.20535/1560-8956.38.2021.232948

Nikitin V., Krylov E., Kornaga Y., Anikin V. Modification of hashing algorithm to increase rate of operations in NoSQL databases // Adaptive Systems of Automatic Control Interdepartmental scientific and technical collection. № 2 (39), 2021. P. 39 – 43. DOI: https://doi.org/10.20535/1560-8956.39.2021.247395

Mukhin V., Kornaga Y., Zavgorodnii V., Fartushnyi I., Pashov R., Nikitin V., Stepanov A. Method of determining the required number of database nodes in a distributed data processing system / 2021 IEEE 3rd International Conference on Advanced Trends in Information Theory (ATIT) // IEEE. DOI: https://doi.org/10.1109/ATIT54053.2021.9678569

Nikitin V., Krylov E. Comparison of hashing methods for supporting consistency in distributed databases // Adaptive Systems of Automatic Control Interdepartmental scientific and technical collection. № 1 (40), 2022. P. 48 – 53. DOI: https://doi.org/10.20535/1560-8956.40.2022.261646

Nikitin V., Krylov E. A collision-resistant hashing algorithm for maintaining consistency in distributed nosql databases // Adaptive Systems of Automatic Control Interdepartmental scientific and technical collection. № 2 (41), 2022. P. 45 – 57. DOI: https://doi.org/10.20535/1560-8956.41.2022.271338

Крилов Є. В., Нікітін В. А. Використання транзакцiйного годинника для пришвидшення процесу узгодження даних в розподілених системах // Фахове видання категорії Б “Науковий вісник Ужгородського університету. Серія «Математика і інформатика»”. № 1 (42), 2023. С. 188 – 192. DOI: https://doi.org/10.24144/2616-7700.2023.42(1).188-192

Nikitin V., Krylov E. Primary-based Spectral Bloom filter for the ensuring consistency in distributed document-based NoSQL databases using active anti-entropy mechanism // Computer Systems and Information Technologies. №3, (2023). P. 75 – 80. DOI: https://doi.org/10.31891/csit-2023-3-9

Nikitin V., Krylov E. Active anti-entropy mechanism based on Spectral Bloom filter and PH-2 hash algorithm for reconcilation of replicas of NoSQL distributed document oriented databases // Information Technology and Society. №3 (9), 2023. P. 63 – 67. DOI: https://doi.org/10.32689/maup.it.2023.3.8

Nikitin V., Krylov E. Consistency optimization methods in distributed NoSQL databases // Інженерія програмного забезпечення і передові інформаційні технології (SoftTech-2022): матеріали тез доповідей IIІ Всеукраїнської наук.-практ. конф. молодих вчених та студентів (м. Київ, 23–25 листопада 2022 р.). Секція кафедри інформатики та програмної інженерії. – К. : КПІ ім. Ігоря Сікорського, 2022. – С. 27 – 30. URL: https://drive.google.com/file/d/1CP9EaBTT_rJAXsINbanSVGnP2jkg9FJ0/view

Белоус Р. В., Нікітін В. А. Варіанти забезпечення суворої узгодженості в NoSQL // Grail of Science, (24), c. 364 – 365. DOI: https://doi.org/10.36074/grail-of-science.17.02.2023.065

Схожі дисертації