Utilizza questo identificativo per citare o creare un link a questo documento:
http://elartu.tntu.edu.ua/handle/lib/50527| Titolo: | Вебсистема централізованого зберігання файлів із підтримкою семантичного пошуку |
| Titoli alternativi: | Development of a System for Centralized File Storage and Access with Semantic Search Support |
| Autori: | Солтис, Максим Васильович Soltys, Maksym |
| Affiliation: | ТНТУ ім. І. Пулюя, Факультет комп’ютерно-інформаційних систем і програмної інженерії, Кафедра програмної інженерії, м. Тернопіль, Україна |
| Bibliographic description (Ukraine): | Солтис М. В. Вебсистема централізованого зберігання файлів із підтримкою семантичного пошуку: кваліфікаційна робота на здобуття освітнього ступеня магістр за спеціальністю „121 — інженерія програмного забезпечення“ / М. В. Солтис. — Тернопіль: ТНТУ, 2025. — 97с. |
| Data: | dic-2025 |
| Date of entry: | 22-dic-2025 |
| Editore: | Тернопільський національний технічний університет імені Івана Пулюя |
| Country (code): | UA |
| Place of the edition/event: | ТНТУ ім. І.Пулюя, ФІС, м. Тернопіль, Україна |
| Supervisor: | Михалик, Дмитро Михайлович |
| Committee members: | Палка, Олег Вікторович |
| UDC: | 004.9 |
| Parole chiave: | 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 |
| È visualizzato nelle collezioni: | 121 — інженерія програмного забезпечення |
File in questo documento:
| File | Descrizione | Dimensioni | Formato | |
|---|---|---|---|---|
| dyplom_Soltys_M_2025.pdf | 2,37 MB | Adobe PDF | Visualizza/apri |
Tutti i documenti archiviati in DSpace sono protetti da copyright. Tutti i diritti riservati.
Strumenti di amministrazione