Оптимізація базових операцій з текстовими даними з використанням кешування
Вантажиться...
Дата
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 с.