Loading
Пропустить Навигационные Ссылки.

Авторизоваться
Для зарегистрированных пользователей

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

В 2019 году был реализован действующий макет подсистемы блочного доступа к данным для проведения их эффективной распределенной параллельной обработки. При его реализации использовалась инфраструктура и технологические решения ЦКП «ИКИ-Мониторинг», в первую очередь, связанные с обеспечением доступа к архивам спутниковых данных и проведением их распределенной параллельной обработки. Архивы ЦКП построены на базе использования разработанной в ИКИ РАН технологии UNISAT, предназначенной для построения сверхбольших распределенных архивов спутниковых данных. Взаимодействие с подсистемой обработки спутниковых данных реализовано с использованием технологии организации распределенной многопотоковой обработки спутниковых данных, также разработанной в ИКИ РАН. Ниже кратко описаны реализованные программные компоненты, а также ближайшие планы по их доработке и оптимизации.

Универсальная процедура формирования заданий на получение исходных наборов данных реализована на языке программирования Perl с использованием пакета библиотек SDB (Satellite Data Base), разработанного в ИКИ РАН. В текущей реализации параметры запусков процедуры определяются двумя типами текстовых конфигурационных файлов. Файл grids.ini описывает различные варианты регулярных разбиений и, в частности, содержит шаг сетки в градусах, диапазон координат и степень перекрытия соседних ячеек сетки разбиения. Для каждой обработки также формируется конфигурационный файл, содержащий информацию об используемом при его построении разбиении, полигон, по которому будет производиться обработка спутниковых данных, а также описания множества источников исходных данных, позволяющие задать большое число различных критериев поиска необходимых данных в архивах, а также информацию о том, какие именно каналы исходных файлов данных должны быть предоставлены для обработки. Хотя скорость выполнения процедуры по результатам тестирования является вполне приемлемой, в перспективе планируется модернизация отдельных компонент реализации технологии UNISAT, что позволит заметно ускорить и упростить задачу поиска данных по спутниковым сеансам. В результате выполнения утилиты формируется набор поддиректорий, соответствующих отдельным ячейкам разбиения, в каждой из которых создаются файл, содержащий ссылки на получения необходимых наборов исходных данных в формате программы Aria2c, а также файлы с метаданными для каждого из источников исходных данных в формате JSON.
Универсальный программный модуль для многопотокового скачивания исходных наборов данных также реализован на языке программирования Perl и при этом представляет собой относительно простую процедуру, позволяющую произвести запуск ПО Aria2c и убедиться в успешности его выполнения.

Сервис для оптимальной переадресации запросов на получение исходных наборов спутниковых данных в текущей реализации также реализован на языке программирования Perl. Он позволяет равномерно распределить нагрузку на сервера предварительной подготовки данных на основе модифицированного метода «Least connection», позволяющего в приоритетном режиме направлять запросы на те сервера, на которых непосредственно находятся исходные данные. Специальные параметры конфигурации позволяют задать степень приоритетности выполнения обработки на этих серверах, а также выставить серверам веса, соответствующие уровню их производительности.  Тестирование показало, что производительность и надежность реализованного сервиса находятся на вполне приемлемом уровне, однако в перспективе рассматриваются варианты более эффективной и потенциально более надежной его реализации с использованием языка программирования C++ или Python.

Унифицированный сервис формирования наборов данных по спутниковым сеансам в рамках описываемого действующего макета установлен на пяти различных серверах хранения спутниковых данных. В текущей реализации операции по обработке спутниковых изображений реализуются путем последовательных вызовов утилит, входящих в состав ПО GDAL. Отдельные вызовы используются для корректировки исходных данных и для получения мозаики исходных фрагментов данных по заданной территории в требуемой географической проекции. Так как этот вариант, на наш взгляд, является не самым оптимальным, в настоящее время ведется разработка процедуры на языке программирования C++, использующей GDAL API для проведения операций со спутниковыми изображениями. Предварительные результаты ее тестирования показывают существенное повышение скорости выполнения операций по предварительной подготовке исходных наборов спутниковых данных по сеансам, за счет минимизации издержек, связанных с использованием промежуточных временных файлов.

В настоящее время ведутся работы по внедрению представленной технологии, в частности, для задачи построения безоблачных атмосферно-скорректированных композитов по данным прибора КМСС, установленного на российских спутниках серии «Метеор». Также продолжаются работы по интеграции подсистемы блочного доступа к данным с автоматизированной системой распределенной многопотоковой обработки спутниковых данных.