Загрузка данных через REST API
Эта статья демонстрирует загрузку журнала событий, загрузка таблицы процессов производится аналогично.
-
Перейдите к редактированию рабочей области, в которую необходимо загрузить данные. Нажмите на блок Подготовка данных и ML.
-
В появившемся интерфейсе Jupyter Lab, нажмите Новый лаунчер.
-
В списке доступных лаунчеров, выберите Amphi→New Pipeline. Это создаст новый пайплайн Amphi.
-
В окне редактирования пайплайна, перетащите узел REST Input из панели инструментов на рабочую область.

-
Нажмите
, чтобы перейти к настройке узла. -
В окне настройке узла REST Input, укажите URL, на который должен быть отправлен запрос. И метод запроса, по умолчанию - GET. Также доступны следующие дополнительные настройки (в примере не используются):
-
при необходимости можно так же добавить к запросу заголовки, например X-API-Key, или Authorization: Bearer для авторизации;
-
если endpoint требует определённого тела запроса, его можно указать через настройку Body;
-
в том случае, если структура ответа представляет из себя иерархический JSON-обьект, используйте настройку JSON Path, чтобы задать путь к необходимому массиву данных внутри объекта.

Нажмите кнопку
Input-узла, чтобы проверить подключение. При удачном получении данных, консоль пайплайна отобразит загруженную таблицу (Pandas DataFrame).

При импорте журнала событий, DataFrame на выходе Input-узла содержит колонки start и end c временными штампами в формате text. Для корректного экспорта, необходимо сконвертировать эти колонки в формат Pandas timestamp. Для этого:
- Добавьте на рабочую область трансформационный узел Python Transfoms и подключите его вход к выходу Input-узла.
-
Добавьте следующий Python-код в режиме редактирования этого узла:
def convert_columns_to_timestamp(df: pd.DataFrame, columns, \*, errors="coerce", utc=False) -> pd.DataFrame:result = df.copy()for col in columns:result\[col\] = pd.to_datetime(result\[col\], errors=errors, utc=utc)return resultoutput = convert_columns_to_timestamp(input, \["start", "end"\])
-
В окне редактирования пайплайна, перетащите узел Database Output из панели инструментов на рабочую область.

-
Нажмите
, чтобы перейти к настройке узла. -
В окне настройке узла Database Output, укажите следующие необходимые настройки:
Опция | Описание |
|---|---|
Host | Имя хоста СУБД |
Port | Номер порта |
Database Name | Имя базы данных, соответствет UUID рабочей области без дефисов и добавленым спереди символом нижнего подчёркивания. Например: — UUID рабочей области: fa776f95-df6c-4118-9d04-5f95fad4b666 — Имя базы данных: _fa776f95df6c41189d045f95fad4b666 |
Schema | Схеба БД, по умолчанию public |
Username | Имя пользователя БД |
Password | Пароль |
Database Type | Тип базы данных (выбрать PostgreSQL) |
Table Name | Таблица в которую необходимо добавить загруженные данные. Для создания новой таблицы, раскрыть выпадающий список, ввести имя таблицы в поле Custom и нажать + Add, затем выбрать добавленную таблицу в списке. |
If Table Exists | Что делать, если таблица уже существует (выдать ошибку / пересоздать / дописать в существующую)? |
Mode | Insert |

-
Соедините выход трансформационного узла c входом Output-узла.

-
Нажмите
(Run Pipeline).
В случае успешной загрузки данных, консоль пайплайна отобразит уведомление.
Перейдите к блоку Таблицы окна редактирования рабочей области, и найдите добавленную таблицу в списке доступных внутренних источников:
