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

Вантажиться...
Ескіз

Дата

2025

Науковий керівник

Назва журналу

Номер ISSN

Назва тому

Видавець

КПІ ім. Ігоря Сікорського

Анотація

Актуальність теми. Сучасні веб-застосунки працюють з великими обсягами текстових даних і мільйонними потоками запитів, що призводить до значного навантаження на серверну інфраструктуру та бази даних. Часті повторні звернення створюють затримки, погіршують масштабованість і знижують загальну продуктивність систем. Одним з найефективніших способів оптимізації доступу до даних є кешування – збереження часто використовуваної інформації у швидкодоступних пам’ятевих сховищах. Використання 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 для роботи з хмарними сервісами.

Опис

Ключові слова

кешування, Redis, веб-застосунок, текстові дані, оптимізація продуктивності, write-through, write-behind, PostgreSQL

Бібліографічний опис

Кізіріді, М. О. Оптимізація базових операцій з текстовими даними з використанням кешування : магістерська дис. : 122 Комп’ютерні науки / Кізіріді Михайло Олександрович. – Київ, 2025. – 105 с.

ORCID

DOI