Багатопосланцевий онлайн-аналіз даних
MMODA (Multi-Messenger Online Data Analysis) — вебплатформа для аналізу даних астрофізичних обсерваторій без встановлення програмного забезпечення. Український вузол платформи розгорнуто й підтримувано в КНУ імені Тараса Шевченка в межах проєкту ACME.
Про платформу

MMODA — це відкрита вебплатформа, що надає доступ до конвеєрів аналізу даних провідних астрофізичних інструментів через єдиний інтерфейс у браузері. Користувач формулює запит у термінах астрономії — джерело, координати, часовий інтервал, тип продукту, — а платформа виконує обчислення на серверній інфраструктурі та повертає готові наукові продукти: спектри, криві блиску, карти неба, спектрограми.
Платформу створено в межах ініціативи ODA (Online Data Analysis) — за визначенням розробників, «ініціативи спільноти фізики астрочастинок для розвитку сумісного наукового аналізу даних». Її започаткували астрофізики Женевського університету та Центру наукових даних INTEGRAL (ISDC), Лабораторії астрофізики EPFL (Лозанна) і лабораторії APC (Париж). Головний екземпляр платформи працює в Женевському університеті; вихідний код відкритий і публікується в організації github.com/oda-hub.
Принцип роботи
- Запит. Користувач вводить назву обʼєкта (платформа сама розвʼязує її в координати), часовий інтервал і параметри аналізу для обраного інструмента.
- Виконання. Завдання надходить до диспетчера, який запускає відповідний обчислювальний бекенд. Аналіз виконується асинхронно: браузер можна закрити й повернутися за результатом пізніше.
- Кешування. Результати зберігаються; повторний запит із тими самими параметрами повертає готовий продукт миттєво.
- Результат. Продукти можна переглянути в браузері, завантажити, поділитися посиланням або отримати готовий фрагмент коду для відтворення запиту програмно.
Для роботи зі скриптів та Jupyter-ноутбуків призначено відкриту Python-бібліотеку oda_api (ліцензія MIT): будь-який аналіз, виконаний через вебінтерфейс, можна відтворити програмно, що відповідає принципам FAIR та вимогам відтворюваності наукових результатів.
Сервіс безкоштовний; автентифікація — через GitHub або реєстрацію на платформі, історія аналізів зберігається в обліковому записі.
Як платформа влаштована зсередини
MMODA — це не монолітний сайт, а конструктор із відкритих компонентів, кожен з яких живе у власному репозиторії організації і розгортається незалежно.
Веб інтерфейс (frontend). Користувацька частина побудована на CMS Drupal з власною темою та модулями MMODA. Вкладки інструментів не верстаються вручну — вони генеруються автоматично з описів параметрів кожного сервісу, тож новий інструмент з'являється в інтерфейсі без переписування сайту. Для роботи з небесними координатами вбудовано AladinLite — стандарт де-факто для астрономічних вебзастосунків.
Диспетчер (dispatcher). Серцевина платформи — Python-фреймворк dispatcher-app, який приймає запит з інтерфейсу чи API, перетворює його на обчислювальне завдання і передає відповідному бекенду. Кожен інструмент підключається через власний плагін (dispatcher-plugin-integral, -gw, -antares, -legacysurvey тощо). Завдання виконуються асинхронно: диспетчер веде чергу, кешує результати, а про завершення тривалого аналізу повідомляє електронною поштою або через месенджер Matrix (бот @mmoda-bot). Автентифікація та права доступу реалізовані через токени (JWT).
Від ноутбука до сервісу (nb2workflow). Найцікавіший компонент для дослідників. Науковець пише звичайний Jupyter-ноутбук з анотованими параметрами — а інструмент nb2workflow автоматично перетворює його на повноцінний REST-сервіс у контейнері, який розгортається на Kubernetes і з'являється як нова вкладка MMODA. Саме цим шляхом на українському вузлі з'явився сервіс аналізу транзієнтів УТР-2 — робочий ноутбук з алгоритмами пошуку радіотранзієнтів став публічним інструментом без написання жодного рядка «вебкоду».
Відтворюваність і походження даних. Кожен результат супроводжується метаданими походження (provenance): якими даними, яким кодом і з якими параметрами його отримано. Будь-який аналіз із вебінтерфейсу можна одним кліком перетворити на фрагмент Python-коду для бібліотеки oda_api (https://github.com/oda-hub/oda_api) (PyPI/conda-forge, ліцензія MIT) — і навпаки, запити з ноутбука відтворюються в браузері. Параметри та продукти описуються термінами відкритої астрономічної онтології, що робить сервіси машиночитними й сумісними з принципами FAIR.
Автоматизоване розгортання. Платформа постачається як набір Helm-чартів для Kubernetes; сервісний бот oda-bot стежить за оновленнями компонентів у git-репозиторіях і через CI/CD автоматично оновлює розгортання на кожному вузлі. Завдяки цьому невелика команда підтримує актуальність цілої платформи.
Федерація вузлів і «право на реплікацію»
Філософія ODA, зафіксована в маніфесті проєкту (https://github.com/oda-hub/mmoda-manifesto) (DOI: 10.5281/zenodo.6376845), включає «право на реплікацію»: користувачі не повинні залежати від єдиного постачальника сервісу, тому весь код і конфігурації відкриті, а платформу може розгорнути будь-яка інституція. Сьогодні працюють три публічні вузли федерації: Женевський університет (головний, з доступом до даних INTEGRAL у реальному часі), APC/Париж та київський вузол на інфраструктурі КНУ. Вузли рівноправні: кожен frontend, диспетчер і плагін може бути розгорнутий будь-де; вузли переадресовують запити один одному там, де інший має кращий доступ до даних, а однакові запити в різних місцях дають ідентичні результати — це забезпечує і стійкість, і взаємну перевірку. Український вузол, таким чином, — не «дзеркало», а повноцінний учасник розподіленої системи, який до того ж додав у федерацію власні сервіси (УТР-2) та власний компонент моніторингу використання (oda-usage-monitor).
Аналіз події GW170817 у браузері: платформа розвʼязує назву джерела, звертається до даних детектора LIGO H1 і будує спектрограму.
Сервіси українського вузла
На вузлі, розгорнутому в КНУ, наразі інтегровано пʼять аналітичних сервісів:
- Auger — аналіз спектрів космічних променів найвищих енергій за даними обсерваторії імені Пʼєра Оже (Аргентина);
- Gaia — спектри, фотометрія та криві блиску з архіву астрометричної місії ESA Gaia;
- LST-1 — симуляція спектрів і подій та прогноз видимості джерел для великого телескопа LST-1 обсерваторії CTAO (Ла-Пальма);
- MAGIC — інструменти моделювання спостережень черенковських телескопів MAGIC, включно з аналізом пульсарів;
- УТР-2 — пошук і аналіз радіотранзієнтів за даними Українського Т-подібного радіотелескопа — найбільшого у світі інструмента декаметрового діапазону (поблизу Чугуєва, Харківщина).
Через бібліотеку oda_api додатково доступні дані INTEGRAL (ISGRI, JEM-X, SPI-ACS), POLAR, ANTARES, огляду DESI Legacy Survey та гравітаційно-хвильових детекторів LIGO/Virgo.
Злива космічних променів очима детекторної мережі обсерваторії Пʼєра Оже. Зображення: Pierre Auger Observatory.
Космічний апарат Gaia. Зображення: ESA/ATG medialab; ESA/Gaia/DPAC; подяка: A. Moitinho (CC BY-SA 3.0 IGO).
LST-1 — перший великий телескоп CTAO, Ла-Пальма. Джерело: acme-astro.eu.
Телескопи MAGIC на Ла-Пальмі. © Daniel López, IAC.
УТР-2 — Український Т-подібний радіотелескоп, найбільший у світі декаметровий. Джерело: acme-astro.eu.
Інфраструктура та розробка

Архітектура київського вузла: дані надходять через віртуальний доступ WP4, обробляються на кластерах КНУ і стають доступними через вебінтерфейс та Jupyter-ноутбуки. Схема: ЦККНО ЛФАВЕ.
Український вузол MMODA працює за адресою odahub.k8s.esoc.knu.ua/mmoda на кластері Kubernetes Інформаційно-обчислювального центру КНУ (10 вузлів, 56 процесорних ядер, 112 ГБ оперативної памʼяті) і дзеркалить сервіси доступу до даних, аналізу та моделювання основного екземпляра платформи. Обчислювальну підтримку забезпечують HPC-сервери фізичного факультету; для ресурсоємних задач доступний GPU-кластер.
Для дослідників і студентів
Платформа розрахована і на професійних астрофізиків, і на студентів: для запуску аналізу не потрібно ні встановлювати спеціалізоване програмне забезпечення, ні мати власні обчислювальні потужності. Це робить MMODA зручним інструментом для навчальних курсів з астрофізики високих енергій, кваліфікаційних робіт і швидкої перевірки наукових гіпотез. Питання щодо використання платформи в навчальному процесі можна надсилати через сторінку контактів.
Доступ до сервісу
Запустити MMODA →
Посилання: вихідний код — github.com/oda-hub · Python-клієнт oda_api — github.com/oda-hub/oda_api · головний екземпляр платформи — astro.unige.ch/mmoda
Фінансування
Роботи виконуються в межах проєкту ACME.

Проєкт ACME отримав фінансування від програми Європейського Союзу з досліджень та інновацій Horizon Europe за грантовою угодою № 101131928. Висловлені погляди та думки належать виключно автору(ам) і не обовʼязково відображають погляди Європейського Союзу чи Європейського виконавчого агентства з досліджень (REA). Ані Європейський Союз, ані орган, що надає фінансування, не несуть за них відповідальності.