Оптимізація базових операцій з текстовими даними з використанням кешування

dc.contributor.advisorМихайлова, Ірина Юріївна
dc.contributor.authorКізіріді, Михайло Олександрович
dc.date.accessioned2026-01-30T14:09:54Z
dc.date.available2026-01-30T14:09:54Z
dc.date.issued2025
dc.description.abstractАктуальність теми. Сучасні веб-застосунки працюють з великими обсягами текстових даних і мільйонними потоками запитів, що призводить до значного навантаження на серверну інфраструктуру та бази даних. Часті повторні звернення створюють затримки, погіршують масштабованість і знижують загальну продуктивність систем. Одним з найефективніших способів оптимізації доступу до даних є кешування – збереження часто використовуваної інформації у швидкодоступних пам’ятевих сховищах. Використання Redis як розподіленого кеша дозволяє суттєво зменшити обсяг звернень до бази даних, прискорити роботу веб-застосунків і підвищити їх стійкість до навантажень, що обумовлює актуальність даної роботи. Мета роботи – розробити методи та засоби оптимізації процесів читання й оновлення текстових даних у веб-застосунку шляхом інтеграції механізмів кешування на основі Redis. Завдання дослідження: проаналізувати особливості роботи з текстовими даними у веб-застосунках; дослідити існуючі підходи до кешування та керування кешем; спроєктувати архітектуру веб-системи з використанням розподіленого кешу Redis; реалізувати механізми кешування текстових даних, лічильників переглядів і «лайків»; провести експериментальне порівняння роботи системи з кешуванням та без нього; оцінити отримане прискорення та зменшення навантаження на базу даних. Об’єкт дослідження – методи оптимізації зберігання та доступу до текстових даних. Предмет дослідження – методи та засоби кешування, що використовуються для оптимізації зберігання та доступу до текстової інформації. Методи дослідження. У роботі застосовано методи системного та порівняльного аналізу, профілювання навантаження, інструментальні методи вимірювання продуктивності, а також практичні підходи програмної інженерії при розробці кеш-рішень. Наукова новизна. Запропоновано комплексний підхід до кешування даних у веб-застосунку, який поєднує синхронні та асинхронні моделі оновлення для різних типів даних. Реалізація комбінованого підходу дозволяє одночасно забезпечити високу швидкодію для читання статичних матеріалів і точність відображення динамічних показників, зберігаючи узгодженість між Redis та PostgreSQL. Практичне значення. Розроблений механізм кешування дозволив зменшити середній час відповіді API у 3,5 раза, а кількість звернень до бази даних – більш ніж удвічі. Запропоновану архітектуру може бути використано для оптимізації будь-яких контент-орієнтованих систем, особливо тих, що працюють з великими масивами текстових даних. Апробація результатів. Основні положення, наукові результати та практичні напрацювання магістерської роботи були представлені й обговорені на VIII Всеукраїнській науково-практичній інтернет-конференції молодих вчених та студентів «Сучасні інформаційні системи та технології», що відбулася 24 листопада 2025 р. у Херсонському національному технічному університеті на базі кафедри комп’ютерних систем та мереж за тематикою «Сучасні комп’ютерні системи та мережі в управлінні». За матеріалами роботи було підготовлено та опубліковано тезу доповіді на тему «Методи оптимізації зберігання та доступу до текстових даних із використанням кешування» у збірнику матеріалів зазначеної конференції. Структура та обсяг магістерської роботи. Робота складається зі вступу, п’яти розділів, висновків, списку використаних джерел і додатків. Загальний обсяг становить 105 сторінки, містить 9 таблиць, 25 рисунків та 40 джерел. Розроблена система є багаторівневим веб-застосунком, побудованим за принципами клієнт–серверної архітектури. Основні компоненти системи: клієнтська частина – реалізована з використанням React.js, відповідає за відображення інтерфейсу користувача, відправлення запитів до сервера через HTTP-протокол та обробку отриманих відповідей; серверна частина (Backend API) – створена на основі ASP.NET Core, реалізує бізнес-логіку, забезпечує обробку запитів від клієнта, звернення до бази даних та керування кешем; система кешування Redis – використовується для зберігання часто запитуваних даних (метаданих статей, коментарів, станів «лайків» тощо), що дозволяє зменшити кількість звернень до бази даних і підвищити швидкодію; сховище Amazon S3 – використовується для зберігання текстових матеріалів (HTML-файлів статей) та зображень; база даних PostgreSQL – виступає постійним джерелом даних, у якому зберігається основна інформація про користувачів, статті, категорії, коментарі, теги та інші сутності. Система побудована з урахуванням принципів розділення відповідальності та масштабованості, що дозволяє легко розширювати її функціональність або адаптувати під нові вимоги. Взаємодія між компонентами реалізована за допомогою HTTP-запитів та AWS SDK для роботи з хмарними сервісами.
dc.description.abstractotherRelevance of the topic. Modern web applications operate with large volumes of textual content and significant user traffic, which leads to high load on server infrastructure and databases. Frequent repeated requests cause delays, decrease scalability, and reduce overall system performance. Caching – storing frequently accessed data in fast in-memory storage – is among the most effective optimization techniques. Using Redis as a distributed cache significantly decreases the number of database queries, improves response time, and increases system resilience under load, which defines the relevance of this research. The purpose of the thesis is to develop methods and tools for optimizing the processes of reading and updating textual data in a web application by integrating caching mechanisms based on Redis. Research objectives: analyze the specific characteristics of working with text data in web applications; research existing approaches to caching and cache management; design the architecture of a web system using a distributed Redis-based cache; implement caching mechanisms for text data, view counters and “like” states; conduct an experimental comparison of system behavior with and without caching; evaluate the achieved performance improvement and reduction of database load. Object of research – methods of optimizing the storage and access to textual data. Subject of research – caching methods and tools used to optimize the storage and access to textual information. Research methods. The thesis employs system analysis, comparative performance analysis, load profiling tools, and practical software engineering approaches for integrating caching solutions. Scientific novelty. The work proposes a combined caching approach that integrates synchronous and asynchronous update strategies for different types of data. This enables both high-performance access to static content and accurate tracking of dynamic indicators while maintaining consistency between Redis and PostgreSQL. Practical significance. The implemented caching mechanism reduced API response time by 3.5× and lowered database query count more than twofold. The proposed architecture can be applied to optimize content-oriented systems operating with large text datasets. Approbation. The main provisions, scientific results, and practical developments of this master’s thesis were presented and discussed at the 8th All-Ukrainian Scientific and Practical Online Conference of Young Scientists and Students “Modern Information Systems and Technologies,” held on November 24, 2025, at Kherson National Technical University, hosted by the Department of Computer Systems and Networks under the theme “Modern Computer Systems and Networks in Management.” Based on the materials of this work, a conference abstract titled “Methods for Optimizing Storage and Access to Text Data Using Caching” was prepared and published in the proceedings of the aforementioned conference. Structure and scope. The thesis consists of an introduction, five chapters, conclusions, references, and appendices. The total volume is 105 pages and includes 9 tables, 25 figures, and 40 references.
dc.format.extent105 с.
dc.identifier.citationКізіріді, М. О. Оптимізація базових операцій з текстовими даними з використанням кешування : магістерська дис. : 122 Комп’ютерні науки / Кізіріді Михайло Олександрович. – Київ, 2025. – 105 с.
dc.identifier.urihttps://ela.kpi.ua/handle/123456789/78574
dc.language.isouk
dc.publisherКПІ ім. Ігоря Сікорського
dc.publisher.placeКиїв
dc.subjectкешування
dc.subjectRedis
dc.subjectвеб-застосунок
dc.subjectтекстові дані
dc.subjectоптимізація продуктивності
dc.subjectwrite-through
dc.subjectwrite-behind
dc.subjectPostgreSQL
dc.titleОптимізація базових операцій з текстовими даними з використанням кешування
dc.typeMaster Thesis

Файли

Контейнер файлів
Зараз показуємо 1 - 1 з 1
Вантажиться...
Ескіз
Назва:
Kiziridi_magistr.pdf
Розмір:
3.31 MB
Формат:
Adobe Portable Document Format
Ліцензійна угода
Зараз показуємо 1 - 1 з 1
Ескіз недоступний
Назва:
license.txt
Розмір:
8.98 KB
Формат:
Item-specific license agreed upon to submission
Опис: