Сьогодні, все більшої і більшої популярності набирають системи машинного навчання, або, як їх ще називають, “штучний інтелект”. Проте, потрібно розуміти, що для того чи іншого навчання, потрібно мати чималий набір тренувальних даних. Для цієї, та багатьох інших проблематик, рішенням або ж покращенням, може стати підвищення самої ефективності збору та агрегації даних для конкретної задачі. Для підвищення ефективності збору даних у безсерверних системах необхідним є постійне покращення саме процесів збору даних у системах різного типу, зокрема в наукових системах та системах штучного інтелекту.
Особливої уваги заслуговують безсерверні (Serverless) системи, оскільки вони забезпечують новий підхід до розгортання та управління додатками, де розробники можуть зосередитись на розробці функцій, не витрачаючи зайвий час на управління серверами та інфраструктурою [1]. Цей прогресивний напрямок уже витісняє підхід з установкою фізичних серверів, тож, виконуючи задачу з підвищення ефективності збору даних, потрібно орієнтуватись саме на реалізацію її у безсерверних системах.
Сьогодні, чи не кожна бізнес-модель, що працює з тими чи іншими даними, постає перед проблемою їх збору та аналізу. Це може бути як складний науковий проект, що збирає геосейсмічні дані, військовий проект, що збирає фото дані про екзепляри військової техніки, для визначення цілі для дронів, або ж, простий сервіс доставки за картами. Усі вони потребують певного набору інформації для ефективної роботи системи. Якщо для простих сервісів обсяг даних обмежується на рівні декількох кілобайт даних, згрупованих в довільному форматі, то для складних наукових проектів - це терабайти структурованої інформації. Проте, усім їм потрібна надійна, швидка, економічно доступна та стійка до помилок система збору та аналізу даних.
Проблема полягає в тому, що ця задача в зазначеному масштабі, та у контексті безсерверних систем з’явилася відносно недавно, і на даний момент немає якогось універсального набору систем для збору даних під різні задачі [3]. Так, звісно, можна знайти архітектурні рішення інших розробників, проте вони, здебільшого, не обгрунтовані жодними дослідженнями вище згаданих факторів ефективності. Тому важливими аспектами дослідження є:
- Розробка архітектурних рішеннь для побудови ефективних систем збору даних;
- Формування комбінації безсерверної інфраструктури з алгоритмами збору даних, підлаштованої під різні задачі;
- Аналіз швидкодії, безпеки та захищеності даних;
- Дослідження економічної вигоди запропонованих імплементацій;
- Формування пропозицій щодо архітектурних рішень для певних систем збору даних на основі отриманих результатів досліджень.
Хоча, на перший погляд, збір та агрегація даних може виглядати як рутинна задача, проте у сучасних масштабах та вимогах до збору та аналізу даних, це стало далеко не тривіальною задачею. Проблеми при зборі даних бувають дуже різними і залежать від конкретної системи. Проте є і загальні проблеми, які залишаються незмінними, зокрема [2]:
- Недоступність даних: Іноді API може бути недоступним через технічні або тимчасові проблеми на стороні ресурсу;
- Обмеження швидкості та обсягу даних: Деякі API обмежують швидкість запитів або обсяг даних, які можна отримати за один запит. Це може призвести до затримок у зборі інформації та обмеження масштабу проекту;
- Різноманітність форматів даних;
- Зміна структури даних;
- Збір нестандартних даних;
- Аутентифікація та обмеження доступу;
- Проблеми з безпекою.
Для успішного збору та аналізу великої кількості даних з API та інших інтернет-ресурсів, важливо бути готовими до зустрічі з такими проблемами і мати стратегії для їх вирішення. Ретельне планування, тестування та моніторинг допомагають забезпечити ефективну та безпечну роботу з цифровими даними.
Список літератури:
1. Sam Newman, Building Microservices: Designing Fine-Grained Systems 1st Edition / за ред. O’Reilly, 2015.
2. What are some common challenges in data collection? Веб-сайт. URL: https://habiledata.medium.com/what-are-some-common-challenges-in-data-collection-1853f66fd212 (дата звернення: 21.01.2024)
3. Discover how adopting a serverless architecture can help you scale your applications in a cost-efficient way. Веб-сайт. URL: https://www.datadoghq.com/knowledge-center/serverless-architecture (дата звернення: 21.01.2024)
______________________
Науковий керівник: Гонсьор Оксана Йосипівна, кандидат технічних наук, доцент, Національний університет «Львівська політехніка»
|