Ezzel az azonosítóval hivatkozhat erre a dokumentumra forrásmegjelölésben vagy hiperhivatkozás esetén: http://elartu.tntu.edu.ua/handle/lib/50527
Title: Вебсистема централізованого зберігання файлів із підтримкою семантичного пошуку
Other Titles: Development of a System for Centralized File Storage and Access with Semantic Search Support
Authors: Солтис, Максим Васильович
Soltys, Maksym
Affiliation: ТНТУ ім. І. Пулюя, Факультет комп’ютерно-інформаційних систем і програмної інженерії, Кафедра програмної інженерії, м. Тернопіль, Україна
Bibliographic description (Ukraine): Солтис М. В. Вебсистема централізованого зберігання файлів із підтримкою семантичного пошуку: кваліфікаційна робота на здобуття освітнього ступеня магістр за спеціальністю „121 — інженерія програмного забезпечення“ / М. В. Солтис. — Тернопіль: ТНТУ, 2025. — 97с.
Issue Date: dec-2025
Date of entry: 22-dec-2025
Publisher: Тернопільський національний технічний університет імені Івана Пулюя
Country (code): UA
Place of the edition/event: ТНТУ ім. І.Пулюя, ФІС, м. Тернопіль, Україна
Supervisor: Михалик, Дмитро Михайлович
Committee members: Палка, Олег Вікторович
UDC: 004.9
Keywords: 121
інженерія програмного забезпечення
централізоване зберігання файлів
семантичний пошук
ElasticSearch
OpenAI embeddings
Node.js
NestJS
Number of pages: 97
Abstract: Метою роботи є створення ефективної та безпечної вебсистеми, що забезпечує централізоване зберігання файлів, зручний доступ до них і можливість семантичного пошуку за змістом документів. У першому розділі виконано аналіз предметної області та визначено вимоги до системи. Обґрунтовано вибір основних технологій, зокрема Node.js і NestJS для серверної частини, PostgreSQL для зберігання даних, Docker для контейнеризації, а також ElasticSearch і OpenAI embeddings для реалізації семантичного пошуку. Розроблена система підтримує реєстрацію й аутентифікацію користувачів, управління файлами та каталогами, попередній перегляд і завантаження файлів, створення тимчасових посилань для доступу, а також інтелектуальний пошук, що враховує зміст файлів, а не лише їх назви. Значну увагу приділено питанням безпеки, зокрема зберіганню паролів у хешованому вигляді та захисту від несанкціонованого доступу. Об’єктом дослідження є система централізованого зберігання та доступу до файлів. Предметом дослідження є методи й інструменти розробки вебсистем із підтримкою семантичного пошуку з використанням Node.js, NestJS, PostgreSQL, ElasticSearch та OpenAI embeddings.
The aim of the thesis is to develop an efficient and secure web-based system that provides centralized file storage, convenient access to data, and semantic search based on document content. The first chapter presents an analysis of the subject area and defines system requirements. The choice of core technologies is justified, including Node.js and NestJS for the server-side implementation, PostgreSQL for data storage, Docker for containerization, as well as ElasticSearch and OpenAI embeddings for semantic search functionality. The developed system supports user registration and authentication, file and folder management, file preview and download, generation of temporary access links, and intelligent search that considers the content of files rather than only their names. Special attention is paid to security aspects, including password hashing and protection against unauthorized access. The object of the research is a centralized file storage and access system. The subject of the research is the methods and tools for developing web-based systems with semantic search support using Node.js, NestJS, PostgreSQL, ElasticSearch, and OpenAI embeddings.
Content: ВСТУП..........................................................................................................................7 РОЗДІЛ 1: ДОСЛІДЖЕННЯ ПРЕДМЕТНОЇ ОБЛАСТІ ТА МЕТОДОЛОГІЯ РОЗРОБКИ ПРОГРАМНОГО ЗАБЕЗПЕЧЕННЯ.......................................................9 1.1 Дослідження та характеристика предметної області........................................9 1.2 Аналіз та опис сценаріїв взаємодії користувачів із системою....................... 11 1.3 Постановка завдання ........................................................................................ 15 1.4 Технології розробки системи........................................................................... 17 РОЗДІЛ 2: АРХІТЕКТУРНЕ ПРОЄКТУВАННЯ ТА СТРУКТУРНА ОРГАНІЗАЦІЯ СИСТЕМИ ....................................................................................... 29 2.1 Моделювання та характеристика сутностей системи .................................... 29 2.2 Визначення зв’язків між сутностями системи ................................................ 39 РОЗДІЛ 3: РЕАЛІЗАЦІЯ ТА ТЕСТУВАННЯ ВЕБСИСТЕМИ ............................... 49 3.1 Програмна реалізація функціональних компонентів системи ....................... 49 3.2 Візуалізація функціоналу розробленої системи ............................................. 70 3.3 Тестування функціональних компонентів і аналіз якості програмної системи ................................................................................................................................. 77 РОЗДІЛ 4: ОХОРОНА ПРАЦІ ТА БЕЗПЕКА В НАДЗВИЧАЙНИХ СИТУАЦІЯХ ..................................................................................................................................... 81 4.1 Охорона праці. .................................................................................................. 81 4.2 Фактори ризику і можливі порушення здоров’я користувачів комп’ютерної мережі. .................................................................................................................... 83 ВИСНОВКИ ............................................................................................................... 87 СПИСОК ВИКОРИСТАНИХ ДЖЕРЕЛ ................................................................... 90
URI: http://elartu.tntu.edu.ua/handle/lib/50527
Copyright owner: @ Солис Максим Васильович, 2025
References (Ukraine): Centralized Data Storage System: How your Business can benefit [Електронний ресурс]. – 2022. – Режим доступу до ресурсу: https://www.ilinkdigital.com/insights/blog/centralized-data-storage-system-how-your-business-canbenefit/.
JavaScript [Електронний ресурс] – Режим доступу до ресурсу: https://developer.mozilla.org/en-US/docs/Web/JavaScript.
TypeScript is JavaScript with syntax for types [Електронний ресурс] – Режим доступу до ресурсу: https://www.typescriptlang.org.
About Node.js [Електронний ресурс] – Режим доступу до ресурсу: https://nodejs.org/en/about.
REST API як спосіб спілкування компонент веб-додатків [Електронний ресурс]. – 2023. – Режим доступу до ресурсу: https://foxminded.ua/shcho-take-restapi/.
NestJS Документація [Електронний ресурс] – Режим доступу до ресурсу: https://docs.nestjs.com/.
Archiver API [Електронний ресурс] – Режим доступу до ресурсу: https://www.archiverjs.com/docs/archiver.
PostgreSQL 16.3 Documentation [Електронний ресурс] – Режим доступу до ресурсу: https://www.postgresql.org/docs/current/.
Документація TypeORM [Електронний ресурс] – Режим доступу до ресурсу: https://typeorm.io.
What is Docker? [Електронний ресурс] – Режим доступу до ресурсу: https://aws.amazon.com/docker/?nc1=h_ls.
Whatt is Next.js? [Електронний ресурс] – Режим доступу до ресурсу: https://nextjs.org/docs#what-is-nextjs.
19. Mykhalyk D. Automated processing and analysis of medical texts / Mykhalyk D., 2023
20. Методичні вказівки до виконання кваліфікаційної роботи магістра для здобувачів спеціальності 121 – Інженерія програмного забезпечення, всіх форм навчання / укладачі: Михалик Д.М., Цуприк Г.Б., Бревус В.М., Мудрик І.Я. – Тернопіль: Тернопільський національний технічний університет імені Івана Пулюя, 2024. – 44 с. URL: https://elartu.tntu.edu.ua/handle/lib/50316
Content type: Master Thesis
Ebben a gyűjteményben:121 — інженерія програмного забезпечення

Fájlok a dokumentumban:
Fájl Leírás MéretFormátum 
dyplom_Soltys_M_2025.pdf2,37 MBAdobe PDFMegtekintés/Megnyitás


Minden dokumentum, ami a DSpace rendszerben szerepel, szerzői jogokkal védett. Minden jog fenntartva!

Admin Tools