Інтерактивний веб-додаток з використанням хмарного сховища даних



Анотація. Розроблено інтерактивну систему «Притулок», яка складається з бази даних, сховища даних, прогресивного мобільного додатку та основного веб інтерфейсу. Система дає можливість створювати, відправляти та опрацьовувати заявки користувачів, а також переглядати, змінювати, видаляти та переносити елементи системи, управляти додатковими функціями додатку, що є недоступними для звичайного користувача.

Ключові слова: нереляційна база даних, сховище даних, прогресивний мобільний додаток, веб інтерфейс, хмарні технології.

Володимир Самотий

Кафедра автоматики та інформаційної техніки

Краківська політехніка, Краків, Польща

Кафедра управління інформаційною безпекою

Львівський державний університет безпеки життєдіяльності, Львів, Україна

vsamotyj@gmail.com

Уляна Дзелендзяк, Віталій Палюшок

Кафедра комп’ютеризованих систем автоматики Національний університет «Львівська політехніка»

Львів, Україна

u.dzelendzyak@gmail.com

The interactive web application with cloud data storage usage

Abstract. The interective system “SHELTER” which consists of database, data warehouse, a progressive mobile application and basic web interface has been developed. The system gives an opportunity to create, to send, to work out user applications and review, change, delete, transfer the system’s elements, manage additional features of the application, which are not inaccessible to the ordinary user.

Keywords: non-relational data base, data warehouse, progressive mobile application, web interface, cloud technology.

Volodymyr Samotyy

Department of Automation and Information Technology

Cracow University of Technology, Cracow, Poland

Department of Information Security Management

Lviv State University of Life Safety, Lviv, Ukraine

vsamotyj@gmail.com

Ulyana Dzelendzyak, Vitaliy Palyushok

Department of Computerized Automatics Systems Lviv Polytechnic National University

Lviv, Ukraine

u.dzelendzyak@gmail.com

ВСТУП

Інтерактивні веб-додатки є програмними системами та продуктами, які виконують операції, процедури та дії, під які вони адаптовані: починаючи з простого відображення даних і закінчуючи складними інтерактивними системами обміну даними та системами штучного інтелекту. При цьому вони можуть активно взаємодіяти з користувачем, широко застосовуються у всіх сферах надання послуг, управління інформацією і ресурсами. Знаходять застосування в інтернет банкінгу та адмініструванні даних. Оскільки, в наш час більшість задач виконуються через інтернет, то такі системи мають великий попит.

СТРУКТУРА ІНТЕРАКТИВНОГО ВЕБ-ДОДАТКУ

Для розроблення інтерактивної системи «Притулок», яка складається з бази даних, сховища даних, прогресивного мобільного додатку та основного веб інтерфейсу було використано Google Firebase [1]. База даних у Firebase - це БД класу NoSQL (нереляційна), яка дає можливість зберігати і синхронізувати дані між користувачами в реальному часі. Типом бази даних є сховище “ключ-значення”. Це сховище, яке використовує ключ для отримання доступу до значення. Такий підхід знімає всі обмеження реляційної моделі (недостатня продуктивність, трудомістке горизонтальне маштабування) і полегшує можливості збереження і доступу до даних. Такі дані можуть представляти собою одиночний об’єкт JSON і разом з тим коректно відповідати на запити по полях.

Рис. 1. Структура бази даних системи Firebase

У базі даних використовується неструктурований підхід, тобто структура створюється «на льоту», тим самим знімаючи обмеження жорстких зв’язків і пропонуючи різні типи доступу до специфічних значень. База даних системи Firebase та її структура наведена на рис. 1. Розроблена база являє собою JSON об’єкт, який складається з ключів-значень. Наприклад, Animals містить об’єкт dogs, що складається з об’єктів, ключами яких є унікальні ідентифікатори, що генеруються базою при додаванні нового об’єкта. Значеннями кожного з ключів є властивості, які містять інформацію відповідного змісту. Однією з властивостей є Url, що містить посилання на місце збереження фото у сховищі даних Firebase.

Рис. 2. Сховище даних

У розробленій системі використовується сховище даних Firebase Cloud Storage. Хмарні технології надають доступ до особистих файлів з будь-якого комп’ютера, що має доступ в Інтернет. Ця технологія дозволяє значно ефективніше керувати, обробляти та працювати з інформацією за рахунок централізації цієї самої інформації. Сховище даних (рис. 2) - це об’єкт з даними, який містить Animals та Categories. Кожна з категорій має дочірні підкатегорії зі значеннями, які можна отримати за присвоєними унікальними ключами. Схожим чином можна записати нові об’єкти та додати їм властивості, які будуть доступні за новими згенерованими ключами.

Іншою важливою особливістю Firebase є сервіс авторизації (Authentication), який дає змогу створювати аккаунти, використовуючи різні сервіси, авторизуватись у додатку та управляти аккаунтами. Також у Firebase Authentication є методи, які дозволяють авторизовувати користувача, надсилаючи повідомлення на його телефон. Крім того, даний сервіс може керувати надсиланням повідомлень із скиданням паролю на пошту користувача. Це розширює можливості та покращує умови реєстрації для користувачів, оскільки кожен може вибирати найзручніший спосіб для себе. Реєстрація є швидкою та безпечною. Наступним кроком йде авторизація користувача в додатку. Цей процес теж захищений. Після введення логіну та паролю користувачем, відбувається запит до серверу. Якщо той знаходить у себе такі дані (логін та пароль), то повертає одноразовий, зашифрований код (token), завдяки якому користувач потрапляє в додаток і може користуватись усіма доступними для його аккаунту функціями. Система “Притулок” включає в себе прогресивний мобільний додаток (PWA), який дає можливість сайту взаємодіяти з користувачем як додаток [2]. Тобто користувач може встановлювати його на будь-який гаджет, отримувати сповіщення і працювати з ним, навіть без інтернету. PWA додаток пропонуватиме встановити його на ваш пристрій вже після другого візиту на сайт. Перевагою PWA є можливість запускати його, використовуючи той самий код, що й для сайту і не потрібно створювати окремий нативний додаток. Іншою важливою особливістю системи є можливість роботи offline [3]. При першому вході на сайт чи додаток дані зберігаються та кешуються, щоб бути доступними для для використання при відсутності інтернету. PWA підтримується і продовжує імплементуватись усіма браузерами. Він є доступний для становленння на усіх пристроях крім Apple. При цьому, навіть без встановлення, PWA може виконувати свої функції так само, як на сайті.

ВИСНОВКИ

Розроблений інтерактивний веб-додаток можна вико-ристовувати у різних сферах залежно від заповнення бази даних. Крім того, він є дуже гнучким, оскільки може працювати та швидко підлаштовуватись під різні операційні системи: десктопні (Windows, Linux, MacOS) та мобільні (IOS, Android).

ЛІТЕРАТУРА

$1.$ Houssem Yahiaoui. Firebase Cookbook: Over 70 recipes to help you create real-time web and mobile applications with Firebase. – 1st Edition / Houssem Yahiaoui. – Birmingham: Packt Publishing, 2017. – 288 p.

$2.$ Tal Ater. Building Progressive Web Apps: Bringing the Power of Native to the Browser. / Tal Ater. – Sebastopol: "O'Reilly Media, Inc.", 2017. – 288 p.

$3.$ Алекс Бэнкс, Ева Порселло. React и Redux. Функциональная веб-разработка. / А. Бенкс, Е. Порселло. – Санкт-Петербург: Питер, 2018. – 336 с.

May 17, 2018