Порядок обработки запросов на загрузку данных
Запрос на загрузку данных обрабатывается в следующем порядке:
- Внешняя информационная система отправляет запрос INSERT SELECT FROM upload_external_table через JDBC-драйвер Prostore.
- Запрос поступает в сервис исполнения запросов Prostore.
- Сервис исполнения запросов отправляет команду на загрузку данных в соответствующие коннекторы и отслеживает состояние загрузки с помощью сервиса мониторинга статусов Kafka.
Команда отправляется в коннекторы тех СУБД хранилища, в которых хранятся данные логической таблицы, или той СУБД, где размещается standalone-таблица. - Информация о процессе загрузки данных сохраняется в сервисной базе данных.
- Каждый задействованный коннектор загружает данные из топика Kafka в свою СУБД хранилища.
Используется топик, с которым связана внешняя таблица загрузки, указанная в запросе INSERT SELECT FROM upload_external_table. - По завершении загрузки каждого или всех пакетов данных (в зависимости от СУБД) сервис исполнения запросов отправляет в каждую задействованную СУБД команду на версионирование данных.
- JDBC-драйвер возвращает ответ во внешнюю информационную систему. Ответ возвращается синхронно — после успешной загрузки всех данных.
Подробнее о компонентах системы см. в разделе Компоненты системы, обо всех внешних связях системы см. в разделе Связи с другими системами и компонентами.