Узлы

Узел - отдельный блок графа, представляющий собой этап (операцию) реализуемого алгоритма.

Состояние

Узел в текущем слое данных может находиться в следущих состояниях:

  • Активен

  • Отключен

В активном состоянии в узле автоматически обрабатываются (создаются задания) все приходящие в него пакеты.

Типы и состав узлов

Расчетный узел

Расчетный узел (Compute) - набор исполняемых программ (скриптов) и их параметров, реализующих заданную пользователем функциональность.

Compute node

Состав узла:

SQL узел

SQL узел (Query)- SQL запрос, реализующий выборку и обработку вошедших в него пакетов данных. В отличии от расчетного узла позволяет оперировать данными всех вошедших в него пакетов.

Query node

Общий состав аналогичен виду расчетного узла. Но доступ обеспечивается только к следующим вкладкам панели узла:

Узел данных

Узел данных (Data)- промежуточный этап хранения данных в виде FIFO очереди.

Data node

Общий состав аналогичен виду расчетного узла. Но доступ обеспечивается только к следующим вкладкам панели узла:

Группа

Группа (Group) - совокупность узлов.

Group

Общий состав аналогичен виду расчетного узла. Но доступ обеспечивается только к следующим свойствам узла:

  • Кнопки для доступа к соответствующим свойствам узла
    • Описание
    • Переход внутрь группы

Оповещения узла

Оповещения расчетного узла предназначены для рассылки уведомлений, подписавшимся пользователям, о произошедщих событиях в узле с объектами (задания), создателем которых является пользователь.

В окне оповещений узла доступно:

  • Кнопка или - выбор способа оповещений (электронная почта или телеграмм ).

    Для использования уведомлений с помощью Телеграмм необходимо, чтобы экземляр платформы поддерживал данный способ уведомлений, а также чтобы в настройках пользователя был включен переключатель интеграции с Телеграмм .

  • Оповещения включены/выключены - переключатель включение/выключение оповещений.
  • - переключатели включение/выключение отдельных типов оповещений.

Типы оповещений:

  • Задание выполнено - задание успешно завершено.
  • Все задания выполнены - все задания завершены (как успешно, так и с ошибками).

    Проверка наличия заданий осуществляется только в текущем узле поэтому возможны ложно-положительные уведомления.

  • Задание не выполнено - завершено с ошибкой.

В связи с наличием ограниченийopen in new window Телеграмм платформа может ограничивать количество отправляемых оповещений для пользователя при их большом количестве.

Панели узла

Панель узла - панель для установки различных параметров и свойств узла.

Node panels

Общие управляющие кнопки:

  • Изменить расположение панели (в нижней или правой части экрана)
  • Открыть панель на полный экран
  • Закрыть панель

Описание

Описание узла - название, текстовое описание назначения и спецификация узла.

Node description

Структура:

  • Название узла
  • Описание узла
  • Спецификация узла
  • Кнопка "РЕДАКТИРОВАТЬ"

По нажатию кнопки РЕДАКТИРОВАТЬ окно переходит в режим редактирования описания и заголовка узла:

Node edit description

Спецификация

Спецификация узла - опциональное описание состава входных и состава выходных пакетов узла.

Выполняет две функции:

  • Информационную - для представления формата, состава и назначения переменных пакета.
  • Служебную - для обеспечения возможности фильтрации поступления пакета в узел.

Структура:

  • Вход - входные переменные узла

    • Общие команды

      • Копирование всех переменных
      • Вставка ранее скопированных переменных
      • Автоматическая вставка переменных на основе пакетов
      • Добавление переменной
    • Список переменных

      Структура каждого элемента списка:

      • Тип переменной Поле или Файл или Вложенные пакеты с возможностью изменения при щелчке по ней
      • Название переменной с возможностью переименования при щелчке по ней
      • Описание переменной с возможностью переименования при щелчке по нему
      • Копирование переменной
      • Удаление переменной
  • Выход - выходные переменные узла аналогично входным переменным.

Node desc

Существует возможность копирования параметров узла в входную спецификацию узла.

Параметры

Параметры узла (Parameters) - управляющие параметры выполнения узла, передаваемые исполнительной программе (скрипту) узла.

Node params

Подробное описание.

Контейнер

Среда исполнения. Контейнер - Докер образ на основе которого будет создаваться контейнер для выполнения программных модулей узла в рамках конкретного задания.

Node container

Cтруктура:

  • Докер образ - название докер образа и список докер образов рабочего пространства.

    Docker images list

    Необходимый докер образ можно выбрать из списка или набрать название самостоятельно (в последнем случае набор необходимо завершить нажатием Enter).

  • - Загрузка, политика загрузки докер образа узла.

    Типы:

    • - Всегда, загружать докер образ в случае его изменения, иначе использовать локальную версию.

    • - При отсутствии, загружать докер образ при его отсутствии на узле.

    • - Никогда, не загружать докер образ из внешнего репозитория. Использовать только локальную версию.

    • - Исполнитель, использовать значение по умолчанию исполнителя.

    Знак появляется если к узлу подключен секрет, типа "Загрузка образов", то есть если необходимо подключение к приватному Докер реестру.

    Все типы политик, кроме типа "Исполнитель", соответствуют стандартным политикамopen in new window Kubernetes.

    Рекомендуемая политика по умолчанию "При отсутствии". Временное переключение на политику "Всегда" необходимо при обновлении используемого образа (образ обновляется только на том узле, на котором выполняется задание с указанной политикой).

    При постоянном использовании политики "Всегда" без промежуточного кеширующего прокси возможно превышение лимитов на доступ к регистру хранения (лимиты определяются самими регистром, например, для Dockerhubopen in new window задаются следущие лимитыopen in new window).

  • - Приоритет, приоритет выполнения заданий.

    Типы:

    • - низкий
    • - нормальный
    • - высокий
  • - Сервер расчетов, индивидуальный сервер расчета (исполнитель) узла.

    После выбора сервера расчетов, кнопка заменяется на иконку соответстующего сервера расчетов, а на панели узла появляется пометка над :

    Compute node with executor

  • Скрипт - первоначально запускаемый программный модуль или скрипт узла (см. Файлы).

    Запуск должен соответствовать правила запуска в shell-среде ОС Linux.

    Например:

    ./run.py
    

    или

    bash run.sh
    

    или

    python script.py
    
  • Требования - запрашиваемые вычислительные ресурсы для запуска докер контейнера.

    • Память - запрашиваемая оперативная память
    • Ядра ЦПУ - запрашиваемое количество процессоров (ядер) центрального процессора
    • ГПУ - запрашиваемое количество графических процессоров (видекарт)
    • Лимит времени (минуты) - максимальное время выполнения задания в минутах
  • Параллелизация - ограничение максимального количества одновременно выполняемых заданий (задание считается выполняемым, если оно было передано на выполнение в кластер Kubernetes).

Файлы

Файл - программный модуль, скрипт или библиотека предназначенные для выполнения в узле.

В узле в соответствующей вкладке Файлы отображается список файлов. Структура:

  • Список файлов

    Структура каждого элемента списка:

    • Иконка типа файла
    • Иконка наличия несохраненных изменений
    • Название файла с возможностью переименования файла при щелчке по нему
    • Установить свойство файла: исполняемый
    • Установить свойство файла: бинарный
    • Удаление файла
  • Редактор файла

    • Название файла

    • Панель инструментов

      • Уменьшить размер шрифта
      • Текущий размер шрифта
      • Увеличить размер шрифта
      • Включить/Выключить перенос строк
      • Включить VIM режим
      • Открыть на полный экран
    • Кнопка открытия истории изменений файла: автор / время последних изменений .

  • Кнопка "СОХРАНИТЬ" - для сохранение изменений файла

  • Кнопка создания нового файла

  • Кнопка загрузки нового файла

Node file

Пакеты

В вкладке Пакеты отображается список пакетов узла в рамках выбранного слоя данных:

Node package

Панель инструментов

  • Загрузка/создание пакета Load Node package

    • Заголовок
      • Перейти на страницу инструкции создания пакета
      • Закрыть диалог
    • Метка (название) пакета
    • Переключатель - включить/отключить запуск обработки пакета после загрузки
    • Переключатель - включить/отключить использование параметров узла в качестве полей пакета
    • Файлы - список добавленных файлов
    • ЗАГРУЗИТЬ - кнопка загрузки пакета
    • ОТМЕНА -кнопка отменызагрузки пакета
  • Скачать выделенные пакеты

    Скачивается архив. В дополнении к файлам пакета в архиве присутствует файл info с информацией о процессе создания пакета.

  • Обработать выделенные пакеты

  • Обработать все пакеты с учетом фильтров и мастер-пакета

  • Перезапуск всех пакетов с учетом фильтров и мастер-пакета

  • Использовать выделенные пакеты для запуска заданий-инициаторов (запуск заданий по расписанию)

  • Обработать выделенные задания в интерактивном режиме

  • / Выбор/Отмена выбора установки мастер пакета слоя данных

  • Копировать выбранные пакеты между узлами и проектами

  • Вставить ранее скопированные пакеты

    При вставке пакетов из другого проекта необходимо сначала обновить целевой проект по кнопке F5.После вставки может понадобиться обновить список пакетов кнопкой .

  • Обновление списка пакетов

    Может содержать дополнительно два вида ярлыков:

    • Верхний ярлык зеленого цвета - информирует об изменении количества пакетов в узле.
    • Нижний ярлык оранжевого цвета - информирует об изменении количества заданий некоторых пакетов в списке.
  • Удаление выбранных пакетов

  • Удаление всех пакетов с учетом фильтров и мастер-пакета

  • Фильтр по количеству заданий

  • Фильтр по входной спецификации

  • Окно просмотра пакетов

  • Добавление переменной пакета

    Добавление переменной пакета в качестве нового столбца в таблице пакетов.

    Список добавленных переменных с возможностью удаления .

  • Сохранить набор текущих столбцов

Таблица пакетов

  • - переключатель выбора пакета

  • Id - идентификатор пакета

    Дополнительно на идентификаторе может отображаться ярлык с количеством дочерних заданий:

    Для просмотра конкретного пакета в отдельном окне необходимо щелкнуть по его идентификатору в столбце Id.

  • Метка - имя пакета

  • Создано - время создания пакета

  • Владелец - пользователь создавший пакет

Фильтр по количеству заданий

Открывается по щелчку по в панели инструментов.

Package

  • Активировать - активация фильтра
  • Тип операции - выбор типа проверки количества заданий по отношению к указанному значению в поле "Количество заданий".
  • Количество заданий

Фильтр по спецификации

Открывается по щелчку по в панели инструментов. Осуществляет фильтрацию по входной спецификации узла.

Package

  • Активировать - активация фильтра
  • Поля - выбор переменной из спецификации, по которой будет производиться фильтрация
  • Тип операции - позволяет выбрать тип проверки по отношению к указанному значению в нижнем поле ввода.
  • Поле ввода ограничения

Окно просмотра пакета

Открывается по щелчку по идентификатору пакета в столбце Id в таблице со списком пакетов.

Package

Состав пакета:

  • Панель инструментов

    • Открыть пакет на новой странице браузера

      При открытии пакета на новой странице браузера возвращается прямая ссылка на пакет.

    • Открыть на весь экран

    • Закрыть

  • Метка

  • Поля и их значения

  • Список файлов с кнопкой скачивания

  • Окно отображения выбранного файла

  • Кнопка уникального идентификатора пакета (в правом нижнем углу)

    • Щелчок по идентификатору копирует его в буфер обмена.

    • Нажатие на открывает меню с дополнительными командами

      • Верификация хеша - осуществляет пересчет идентификатора пакета на основе его состава и истории создания. Может использоваться для проверки пакета и его истории на наличие неправомерных изменений.

        Package

        или

        Package

Окно просмотра пакетов

Открывается по щелчку по в панели инструментов.

Позволяет одновременно просматривать файлы из выбранных пакетов.

Package

  • Панель инструментов

    • 1 x 2 Выбор размера сетки отображения файлов

      Для изменения размерности сетки требуется щелкнуть по столбцу соответствующего измерения

    • Кнопка с списком фильтров файлов :

      • Группировка по родительским пакетам (по умолчанию)
      • Группировка по уникальнымому содержимому
      • Группировка по имени файла
    • Кнопка для закрытия всех выбранных файлов.

    • Дерево файлов с корневыми элементами, отображающими идентификатор пакета в случае группировки по пакетам, либо имя файла в случае группировки по файлам. Cодержит элементы управления:

      • Кнопка отображения всех файлов с выбранным именем
      • Кнопка скачивания файла
    • Сетка для отображения выбранных файлов

Запрос

Запрос - SQL скрипт для формирования выходных пакетов по заданным условия. В качестве параметров запроса возможно использовать переменные пакета типа поле.

Структура:

  • Вкладка по умолчанию "ТЕКСТ ЗАПРОСА"

    • Редактор SQL запроса

    • Панель инструментов

      • SQL мастер
      • Помощь
      • Уменьшить размер шрифта
      • Текущий размер шрифта
      • Увеличить размер шрифта
      • Включить/Выключить перенос строк
      • Включить VIM режим
      • Открыть на полный экран
    • Кнопка истории изменений запроса: автор / время последних изменений

      Отображение и управление истории аналогично истории файлов.

    • Кнопка "СОХРАНИТЬ" - для сохранение изменений запроса

    Node query

  • Вкладка "ТЕСТ"

    Отображение результата тестового выполнения запроса.

    • Панель инструментов
      • Тестовый запуск запроса
      • Показывать только новые результаты запроса
    • Таблица с результатом
      • Столбцы таблицы
        • Пакеты - идентификаторы выбранных входных пакетов
        • Переменные - переменные (поля и файлы) выходного пакета

    Node query results

  • Вкладка "РЕЗУЛЬТАТЫ"

    Результаты запроса переданные в следующий узел.

    • Панель инструментов
      • Обновления списка
      • Удаления выбранных заданий
    • Таблица с списком заданий
      • Столбцы таблицы
        • - переключатель выбора результатов
        • Входные пакеты - идентификаторы входных пакетов
        • Выходные пакеты - идентификаторы выходных пакетов

    Node query results

Задания

В вкладке Задания отображается список заданий узла в рамках выбранного слоя данных:

Node job list

Панель инструментов

  • Скачать выделенные задания
  • Перезапустить выделенные задания
  • Перезапустить выделенные задания в интерактивном режиме
  • Перезапустить задания с выбранным состояним

При перезапуске можно указывать необходимость использования текущих параметров узла или параметров на момент предыдущего запуска.

  • Поставить на паузу или активировать задание-инициатор

  • Фильтрация заданий по состоянию

    Cостояние " Стартовало" дополнительно содержит переключатель  / , что позволяет соответственно включать или исключать из этого фильтра дочерние состояния:  Сгрузило данные,  Выполнено,  Загрузило данные,  Cформировало пакеты.

  • Обновления списка

Может содержать дополнительный ярлык:

  • Верхний ярлык зеленого цвета - информирует об изменении количества заданий в узле.

  • Удаление выбранных заданий

  • Удаление заданий с выбранным состоянием и с учетом мастер-пакета

  • Добавление параметра узла

    Добавление параметра узла в качестве нового столбца в таблице заданий.

    Список добавленных параметров с возможностью удаления кнопкой .

  • Сохранить набор текущих столбцов

Таблица заданий

  • - переключатель выбора задания
  • Id - идентификатор задания
  • Пакеты - идентификаторы входных пакетов
  • Создано - время инициации задания
  • Владелец - пользователь создавший задание
  • Приоритет - приоритет выполнения задания
  • Состояние - текущее состояние выполнения задания

Для открытия окна конкретного задания необходимо щелкнуть по его идентификатору в столбце Id.

Окно просмотра задания

Открывается щелчком по идентификатору конкретного задания в столбце Id в таблице заданий.

Node job

Состав задания:

  • Панель инструментов

    • Открыть задание на новой странице браузера

      При открытии задания на новой странице браузера возвращается прямая ссылка на задание.

    • Открыть на весь экран

    • Закрыть

  • История состояний обработки

  • Входные пакеты

  • Выходные пакеты

  • Сервер расчетов

  • Узел задания (с возможностью перехода на него)

  • Параметры контейнера

    • Скрипт - скрипт запуска задания
    • Требования - запрошенные вычислительные ресурсы при запуске докер контейнера.
      • Память - запрошенная оперативная память
      • Ядра ЦПУ - запрошенное количество процессоров (ядер) центрального процессора
      • ГПУ - запрошенное количество графических процессоров (видекарт)
      • Лимит времени (минуты) - установленное максимальное время выполнения задания в минутах
  • Периодичность запуска (только для заданий-инициаторов)

  • Докер образ

  • Параметры узла на момент запуска

  • Переключение на показ списка файлов

    • Список файлов с кнопкой сохранения в файлы узла
    • Отображение выбранного файла
  • Переключение на показ окна журнала выполнения задания (в случае ошибок выполнения отображает последний полученный журнал)

Процесс выполнения задания можно контролировать с помощью файла журнала идентификатор_задания.log, который расположен в списке файлов.

История изменения

Для каждого файла/запроса доступна история его изменения.

Для получения доступа к ней необходимо выбрать необходимый файл/запрос и нажать на кнопку автор / время последних изменений .

История содержит список существующих версий.

File history

Состав версии в истории:

  • Название

  • Дата сохранения

  • Опциональое описание

  • Кнопки управления

    • Восстановить
    • Задать описание
    • Открыть окно сравнения версий файла
    • Удалить

При щелчке по конкретной версии в истории она будет отображена вместо текущего файла в режиме только для чтения. Чтобы выйти из этого режима необходимо закрыть окно истории.

Окно сравнения версий файлов

File history