Front-end interface for a distributed storage system using laravel

View/ Open
Date
2023-05-31Author
Neofytou, AndreasAdvisor
Georgiou, ChryssisPublisher
Πανεπιστήμιο Κύπρου, Σχολή Θετικών και Εφαρμοσμένων Επιστημών / University of Cyprus, Faculty of Pure and Applied SciencesPlace of publication
CyprusGoogle Scholar check
Keyword(s):
Metadata
Show full item recordAbstract
This Thesis is about a distributed system application which is able to manage large shared data objects in distributed storage systems (DSS) while increasing the number of concurrent accesses, maintaining high levels of consistency assurance, and assuring smooth operation. So, the backend of the program manages the files using the COBFS framework where the files are fragmented to blocks. The fragments belong to the same object, each file is a linked list of objects that can be covered by blocks. The framework supports typical file operations, such as create, read, write/update, delete or change permission access. The users can concurrently access the same files at the same time by modifying or reading different blocks of the object. The front-end part which is a user interface is what this thesis focuses on. This user interface was created with Laravel, a popular PHP web application framework. Laravel is one of the best options for web developers looking to construct high-quality web applications since it offers reliable and effective tools for creating contemporary, dynamic user interfaces. The application starts with a login page where different users have different accesses (for example administrative access where the user has access to all files). When the user logs in, there are actions like rename, read and download a file while he/she can “drag and drop” or create a file in the directory of the application to have access on it. Also, the users can change password and username. Another, part of the interface is the Database. The database consists of three tables, the files table which has information about files, the users table which has information about each user and the permissions that has all the accesses of users on files. The database is running on MySQL. The interface is designed to be efficient and simple so that it helps users to understand how it works and operates. Lastly, the front-end application is connected to the servers that implement the COBFS framework. The files are displayed to the user through a dashboard of the interface. Overall, it is an application that aims to simplicity, efficiency, operability and concurrency.