ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ТЕХНИЧЕСКОМУ РЕГУЛИРОВАНИЮ И МЕТРОЛОГИИ
ГОСТР 70672— 2023
НАЦИОНАЛЬНЫЙ СТАНДАРТ РОССИЙСКОЙ ФЕДЕРАЦИИ
Дистанционное зондирование Земли из космоса
ПРОДУКТЫ И УСЛУГИ ДИСТАНЦИОННОГО ЗОНДИРОВАНИЯ ЗЕМЛИ ИЗ КОСМОСА
Общие требования к сервису обработки и анализа данных дистанционного зондирования Земли из космоса
Издание официальное
Москва Российский институт стандартизации 2023
Предисловие
1 РАЗРАБОТАН Акционерным обществом «Российская корпорация ракетно-космического приборостроения и информационных систем» (АО «Российские космические системы») по заказу Государственной корпорации по космической деятельности «Роскосмос»
2 ВНЕСЕН Техническим комитетом по стандартизации ТК 321 «Ракетно-космическая техника»
3 УТВЕРЖДЕН И ВВЕДЕН В ДЕЙСТВИЕ Приказом Федерального агентства по техническому регулированию и метрологии от 13 июля 2023 г. № 528-ст
4 ВВЕДЕН ВПЕРВЫЕ
Правила применения настоящего стандарта установлены в статье 26 Федерального закона от 29 июня 2015 г. № 162-ФЗ «О стандартизации в Российской Федерации». Информация об изменениях к настоящему стандарту публикуется в ежегодном (по состоянию на 1 января текущего года) информационном указателе «Национальные стандарты», а официальный текст изменений и поправок — в ежемесячном информационном указателе «Национальные стандарты». В случае пересмотра (замены) или отмены настоящего стандарта соответствующее уведомление будет опубликовано в ближайшем выпуске ежемесячного информационного указателя «Национальные стандарты». Соответствующая информация, уведомление и тексты размещаются также в информационной системе общего пользования — на официальном сайте Федерального агентства по техническому регулированию и метрологии в сети Интернет (www.rst.gov.ru)
© Оформление. ФГБУ «Институт стандартизации», 2023
Настоящий стандарт не может быть полностью или частично воспроизведен, тиражирован и распространен в качестве официального издания без разрешения Федерального агентства по техническому регулированию и метрологии
Содержание
1 Область применения
2 Нормативные ссылки
3 Термины и определения
4 Обозначения и сокращения
5 Общие положения
6 Требования к архитектуре сервиса обработки и анализа данных дистанционного зондирования Земли из космоса
7 Требования к исходным данным дистанционного зондирования Земли из космоса
8 Требования к аппаратно-программному обеспечению сервиса обработки и анализа данных дистанционного зондирования Земли из космоса
9 Требования доступа пользователей к сервису обработки и анализа данных дистанционного зондирования Земли из космоса
Приложение А (справочное) Рекомендуемые стандарты и спецификации
Приложение Б (справочное) Типовой функционал основных уровней API для реализации программных решений обработки и анализа данных дистанционного зондирования Земли из космоса
Библиография
Введение
По мере развития информационных технологий в области дистанционного зондирования Земли из космоса возникает необходимость применения облачных вычислений с программным доступом, позволяющих упростить обработку, визуализацию, анализ данных дистанционного зондирования Земли из космоса, и тем самым открываются новые возможности для работы с ними. Большинство программных интерфейсов приложений для работы сданными дистанционного зондирования Земли из космоса функционируют на основе веб-стандартов Открытого геопространственного консорциума (см. [1]).
Целью данного стандарта является определение унифицированных подходов к созданию и интеграции аппаратно-программного обеспечения сервисов обработки и анализа данных дистанционного зондирования Земли из космоса. Сервисы обработки данных дистанционного зондирования Земли из космоса предполагают предоставление пользователям данных, готовых для анализа, то есть продуктов тематической и базовой обработки (индексные изображения).
Реализация сервиса обработки и анализа данных дистанционного зондирования Земли из космоса в виде программного интерфейса приложений упрощает использование информационных ресурсов для повышения производительности процесса обработки данных дистанционного зондирования Земли из космоса и потенциально минимизирует затраты собственника (заказчика) данных дистанционного зондирования Земли из космоса, связанные с созданием и обслуживанием собственных программнотехнических средств.
ГОСТ Р 70672—2023
НАЦИОНАЛЬНЫЙ СТАНДАРТ РОССИЙСКОЙ ФЕДЕРАЦИИ
Дистанционное зондирование Земли из космоса
ПРОДУКТЫ И УСЛУГИ ДИСТАНЦИОННОГО ЗОНДИРОВАНИЯ ЗЕМЛИ ИЗ КОСМОСА
Общие требования к сервису обработки и анализа данных дистанционного зондирования Земли из космоса
Remote sensing of the Earth from space. Products and services of remote sensing of the Earth from space. General requirements for the service of processing and analysis of remote sensing data of the Earth from space
Дата введения — 2024—01—01
1 Область применения
Настоящий стандарт устанавливает общие требования к архитектуре, исходным данным, про-граммно-аппаратному обеспечению сервиса обработки и анализа данных дистанционного зондирования Земли из космоса и условиям доступа к нему.
Настоящий стандарт предназначен для применения организациями и специалистами, участвующими в разработке сервисов обработки и анализа данных дистанционного зондирования Земли из космоса, обработке данных дистанционного зондирования Земли из космоса и создании продуктов на их основе.
Настоящий стандарт не распространяется на данные дистанционного зондирования Земли из космоса, получаемые с космических комплексов (космических систем) гидрометеорологического, океанографического и гелиогеофизического назначения.
2 Нормативные ссылки
В настоящем стандарте использованы нормативные ссылки на следующие стандарты:
ГОСТ Р 54593 Информационные технологии. Свободное программное обеспечение. Общие положения
ГОСТ Р 58570 Инфраструктура пространственных данных. Общие требования
ГОСТ Р 58833 Защита информации. Идентификация и аутентификация. Общие положения
ГОСТ Р 59079 Данные дистанционного зондирования Земли из космоса. Типы данных дистанционного зондирования Земли из космоса
ГОСТ Р 59083 Данные дистанционного зондирования Земли из космоса. Сервисы (услуги), предоставляемые потребителям с использованием данных дистанционного зондирования Земли из космоса. Обеспечение доступа потребителей к сервисам на основе данных дистанционного зондирования Земли из космоса
ГОСТ Р 59753 Данные дистанционного зондирования Земли из космоса. Термины и определения
ГОСТ Р 59754 Данные дистанционного зондирования Земли из космоса. Обработка данных дистанционного зондирования Земли из космоса. Термины и определения
ГОСТ Р 59755 Данные дистанционного зондирования Земли из космоса. Информация о данных (метаданные). Общие требования
ГОСТ Р 59763 Данные дистанционного зондирования Земли из космоса. Программное обеспечение первичной обработки данных дистанционного зондирования Земли из космоса. Основные требования к исполнению и функциональному составу
Издание официальное
ГОСТ Р 59764 Данные дистанционного зондирования Земли из космоса. Программное обеспечение стандартной обработки данных дистанционного зондирования Земли из космоса. Основные требования к исполнению и функциональному составу
ГОСТ Р 59829 Дистанционное зондирование Земли из космоса. Данные дистанционного зондирования Земли из космоса. Данные для автоматического анализа
ГОСТ Р 70026 Дистанционное зондирование Земли из космоса. Продукты тематические цифровые. Порядок создания
ГОСТ Р 70032 Дистанционное зондирование Земли из космоса. Программное обеспечение обработки данных дистанционного зондирования Земли из космоса. Порядок разработки и распространения
ГОСТ Р 70154 Дистанционное зондирование Земли из космоса. Программное обеспечение обработки данных дистанционного зондирования Земли из космоса. Типовой функционал
Примечание — При пользовании настоящим стандартом целесообразно проверить действие ссылочных стандартов в информационной системе общего пользования — на официальном сайте Федерального агентства по техническому регулированию и метрологии в сети Интернет или по ежегодному информационному указателю «Национальные стандарты», который опубликован по состоянию на 1 января текущего года, и по выпускам ежемесячного информационного указателя «Национальные стандарты» за текущий год. Если заменен ссылочный стандарт, на который дана недатированная ссылка, то рекомендуется использовать действующую версию этого стандарта с учетом всех внесенных в данную версию изменений. Если заменен ссылочный стандарт, на который дана датированная ссылка, то рекомендуется использовать версию этого стандарта с указанным выше годом утверждения (принятия). Если после утверждения настоящего стандарта в ссылочный стандарт, на который дана датированная ссылка, внесено изменение, затрагивающее положение, на которое дана ссылка, то это положение рекомендуется применять без учета данного изменения. Если ссылочный стандарт отменен без замены, то положение, в котором дана ссылка на него, рекомендуется применять в части, не затрагивающей эту ссылку.
3 Термины и определения
В настоящем стандарте применены термины по ГОСТ Р 59753, ГОСТ Р 59754, а также следующие термины с соответствующими определениями:
3.1
сервис на основе данных дистанционного зондирования Земли из космоса: Предоставляемая потребителям совокупность технических и организационных решений с использованием информационных технологий, которая обеспечивает поддержку одной или нескольких бизнес-функций (бизнес-процессов) потребителей данных дистанционного зондирования Земли из космоса и воспринимается ими как единое целое.
[ГОСТ Р 59083—2020, пункт 3.1.1]
3.2 программный доступ: Программный интерфейс приложения, представляющий собой набор определений и протоколов для создания и интеграции прикладного программного обеспечения, который обеспечивает взаимодействие сервисов независимо от их реализации.
3.3 анализ данных дистанционного зондирования Земли из космоса: Процесс выполнения операций над обработанными космическими снимками с целью выявления скрытых закономерностей, структур и объектов, а также построения моделей, прогнозов и т.д.
4 Обозначения и сокращения
В настоящем стандарте применены следующие обозначения и сокращения:
JavaScript — кроссплатформенный объектно-ориентированный язык сценариев, используемый для создания интерактивных веб-страниц;
NumPy — библиотека с открытым исходным кодом для языка программирования Python, предназначенная для работы с многомерными массивами;
OAuth — открытый протокол авторизации;
OGR — эталонная реализация простых функций OpenGIS (OpenGIS simple features reference implementation);
OpenAPI — не зависящая от языка спецификация для описания REST API;
openEO — программная архитектура для обработки данных ДЗЗ из космоса;
pandas — библиотека для языка программирования Python с открытым исходным кодом для обработки и анализа данных;
PostGIS — открытое программное обеспечение, добавляющее поддержку географических объектов в реляционную базу данных PostgreSQL;
PostgreSQL — свободная объектно-реляционная система управления базами данных;
Python — высокоуровневый скриптовый язык программирования общего назначения;
raster — пакет для анализа пространственных данных в среде программирования R;
SciPy — библиотека для языка программирования Python с открытым исходным кодом, предназначенная для выполнения научных и инженерных расчетов;
sf — библиотека в среде программирования R, предназначенная для работы с геопространственными данными;
sp — библиотека в среде программирования R, предназначенная для работы с геопространственными данными;
WKT-2 — текстовый формат представления векторной геометрии и описания систем координат;
ДЗЗ — дистанционное зондирование Земли;
ПО — программное обеспечение;
ПФ — пользовательская функция;
API — программный интерфейс приложения (application programming interface);
CORS — совместное использование ресурсов между разными источниками (cross-origin resource sharing);
EPSG — публичный реестр геодезических данных (European Petroleum Survey Group);
GDAL — библиотека абстракции геопространственных данных (geospatial data abstraction library);
GeoJSON — открытый формат представления коллекций простых географических объектов с их непространственными атрибутами, использующий нотацию JavaScript (geometry JavaScript object notation);
GeoTIFF — открытый формат представления растровых данных с метаданными о географической привязке (geographic tagged image file format);
GUI — графический интерфейс пользователя (graphical user interface);
HTTP — протокол передачи гипертекста (hypertext transfer protocol);
HTTPS — безопасный протокол передачи гипертекста (hypertext transfer protocol secure);
IETF — инженерный совет Интернета (internet engineering task force);
IP — интернет-протокол (internet protocol);
IRI — интернационализированный идентификатор ресурса (internationalized resource identifier);
JSON — нотация объектов JavaScript (JavaScript object notation);
netCDF — двоичный формат файлов, являющийся стандартом для обмена научными данными (network common data form);
OGC — международная организация по стандартизации (Open Geospatial Consortium);
OWS — веб-сервисы открытого геопространственного консорциума (open geospatial consortium web services);
REST — архитектурный стиль взаимодействия компонентов распределенного приложения в сети (representational state transfer);
RFC — рабочее предложение (Request for Comments);
STAC — каталоги пространственно-временных объектов (spatiotemporal asset catalogs);
TLS — протокол защиты транспортного уровня (transport layer security);
UDF — функция обработки данных ДЭЗ из космоса, определяемая пользователем (user defined function);
URI — унифицированный (единообразный) идентификатор ресурса (uniform resource identifier);
URL — унифицированный указатель ресурса (uniform resource locator);
WCS — веб-сервис покрытий (web coverage service);
WGS 84 — всемирная система геодезических параметров Земли 1984 года (World Geodetic System 1984);
WMS — сервис веб-карт (web map service);
WMTS — сервис листов веб-карт (web map tile service);
W3C — Консорциум Всемирной паутины (World Wide Web Consortium);
XML — расширяемый язык разметки (extensible markup language).
5 Общие положения
5.1 Базовые сервисы на основе данных ДЗЗ из космоса по ГОСТ Р 59083 должны обеспечивать реализацию следующих возможностей:
- авторизации пользователя;
- поиска данных ДЗЗ из космоса;
- визуализации данных ДЗЗ из космоса;
- заказа данных ДЗЗ из космоса;
- автоматизированного ведения расчетов (в случае предоставления данных ДЗЗ из космоса за плату);
- загрузки (получения) данных ДЗЗ из космоса;
- вызова других сервисов.
5.2 Сервис обработки и анализа данных ДЗЗ из космоса, реализуемый с использованием базовых сервисов на основе данных ДЗЗ из космоса, обеспечивает возможности:
- прямого (без заказа) доступа к данным (наборам данных) ДЗЗ из космоса различных уровней обработки;
- доступа к аппаратно-программным средствам хранения и обработки данных ДЗЗ из космоса, в т. ч. пользовательских;
- выполнения функций обработки данных ДЗЗ из космоса, определяемых пользователем (ПФ/UDF);
- управления и контроля процессов обработки данных ДЗЗ из космоса (в т. ч. управление доступными вычислительными ресурсами);
- визуализации результатов обработки данных ДЗЗ из космоса;
- обеспечения доступа к результатам обработки данных ДЗЗ из космоса (возможности скачивания).
5.3 Сервис обработки и анализа данных ДЗЗ из космоса необходимо разрабатывать на основе информационных технологий, включающих общее и специальное ПО, информационно-лингвистическое обеспечение, технологии взаимодействия компонентов общего и специального ПО, информационно-техническое сопряжение по каналам связи со смежными телекоммуникационными системами и вычислительными ресурсами. При разработке элементов сервиса обработки и анализа данных ДЗЗ из космоса учитывают требования ГОСТ Р 59083.
5.4 Сервис обработки и анализа данных ДЗЗ из космоса реализует готовые или индивидуально настраиваемые программные решения на основе API (с применением облачных вычислений) в виде технологии распределенной обработки и анализа данных ДЗЗ из космоса, в которой аппаратно-программные средства представлены пользователю как сервис.
5.5 Сервис обработки и анализа данных ДЗЗ из космоса должен:
- обеспечивать единую среду реализации инструментов и функций для отображения данных и продуктов ДЗЗ из космоса;
- иметь индивидуально настраиваемый GUI, обеспечивающий передачу запросов на обработку, анализ данных ДЗЗ из космоса и получение откликов в стандартизированной форме с использованием API;
- обеспечивать обработку и анализ больших объемов (более 1 Тбайт) данных ДЗЗ из космоса с предоставлением результатов в режиме реального времени;
- иметь типовой функционал обработки и анализа данных ДЗЗ согласно ГОСТ Р 70154, в т. ч. возможность выявления изменений, выполнения классификации, изменения геометрических и радиометрических характеристик и др.;
- обеспечивать расширение функциональных возможностей обработки и анализа ПФ/UDF с помощью языка программирования на основе API (возможность создания пользовательских скриптов, автоматизации сценариев выполнения алгоритмов пакетной обработки данных ДЗЗ из космоса и др.).
Примечания
1 ПФ/UDF представляет собой произвольный фрагмент кода, который может быть дополнительно встроен в существующие процессы обработки и анализа данных ДЗЗ из космоса. ПФ/UDF поддерживаются для таких языков, как Python и R.
2 ПФ/UDF в виде пользовательских сценариев загружаются в серверное файловое хранилище и вызываются с помощью предопределенного процесса «ввод/вывод».
3 ПФ/UDF определяют как массив, временной ряд или многомерный массив.
4 ПФ/UDF применяют к отдельным значениям, к конкретным измерениям либо ко всему набору данных ДЗЗ из космоса в заданном экстенте обработки.
6 Требования к архитектуре сервиса обработки и анализа данных дистанционного зондирования Земли из космоса
6.1 Программный доступ к сервису обработки и анализа данных ДЗЗ из космоса должен обеспечивать взаимодействие пользователя с удаленными ресурсами через сеть связи. Рекомендуется реализация дистанционного программного доступа (Remote API) через сеть Интернет на основе общепринятых веб-стандартов (рекомендуемые стандарты и спецификации приведены в приложении А).
6.2 Архитектура сервиса обработки и анализа данных ДЗЗ из космоса включает как минимум три основных уровня, обеспечивающих связь приложений пользователей (клиентских приложений) с серверной частью сервиса:
- ядро API;
- серверный API;
- клиентский API.
6.3 Ядро API используется при взаимодействии (или согласовании) команд и запросов из клиентских приложений (стандартизированные в клиентском API) с командами из серверной части типового интерфейса (стандартизованные в серверном API). Ядро API должно являться интерфейсом для основных функций:
- идентификации, аутентификации, авторизации, обеспечения прав доступа;
- управления данными пользователя;
- организации доступа к данным ДЗЗ из космоса;
- организации доступа к данным ДЗЗ из космоса через метаданные;
- организации доступа к процессам обработки;
- документирования и мониторинга процессов (логи);
- организации асинхронного взаимодействия с пользователями.
6.4 На этапе проектирования ядра API необходимо разработать:
- спецификацию архитектуры интерфейса ядра API в соответствии с установленным шаблоном. Спецификация архитектуры интерфейса ядра API должна быть краткой и содержать ссылки на другие документы с детальным описанием методов и функций.
Примечание — Рекомендуется итеративная разработка спецификации с использованием отзывов пользователей о практических недостатках, которые могут быть обнаружены в процессе использования типового интерфейса;
- стандарты для описания наборов данных ДЗЗ из космоса и вычислительных процессов, которые определяют правила и порядок обработки клиентским и серверным API данных ДЗЗ из космоса;
- прототип интерфейса ядра API, основанного на предварительных результатах разрабатываемой спецификации для архитектуры типового интерфейса, наряду с реализациями прототипов на уровне серверного API и клиентского API;
- интерфейс ядра API с учетом опыта интерактивной разработки прототипа и полученных отзывов от пользователей.
6.5 Серверный API реализует скоординированный с ядром API интерфейс, который включает в себя аутентификацию, поиск и выборку данных ДЗЗ из космоса, мониторинг процессов, управление вычислительными ресурсами, управление процессами и их учет. На уровне серверного API согласуют стандарты метаданных и интерфейсы вычислительных сред и ресурсов, а также облачных инфраструктур, которые используют в серверной части типового интерфейса.
6.6 На этапе проектирования серверного API необходимо разработать:
- спецификацию стандартов и интерфейсов метаданных ДЗЗ из космоса в серверном API;
- прототип серверной части типового интерфейса;
- шаблон отчета об оценке используемых стандартов и протоколов описания метаданных ДЗЗ из космоса;
- тестовую версию серверной части типового интерфейса;
- окончательную версию серверной части типового интерфейса.
6.7 Клиентский API реализует подключение ядра API к интерфейсу интерактивным способом в соответствии с реализацией ядра API и серверного API, а также взаимодействие ядра API с мобильным приложением.
6.8 На этапе проектирования клиентского API необходимо разработать:
- спецификацию стандартов и интерфейсов метаданных ДЗЗ из космоса в клиентском API;
- прототип типового интерфейса клиентского API;
- шаблон отчета об оценке используемых стандартов и протоколов описания метаданных;
- тестовую версию типового интерфейса клиентского API;
- окончательную версию типового интерфейса клиентского API.
На рисунке 1 приведена обобщенная архитектура типового API обработки и анализа данных ДЗЗ из космоса. В приложении Б представлен типовой функционал основных уровней API для реализации программных решений обработки и анализа данных ДЗЗ из космоса с примерами наиболее используемых сред программирования и технологий.
Ядро API
Клиентский
API
Серверный API
Рисунок 1 — Обобщенная архитектура типового API обработки и анализа данных ДЗЗ из космоса
6.9 Архитектуру сервиса обработки и анализа данных ДЗЗ из космоса рекомендуется проектировать с учетом требования к унификации программно-технических средств и программного интерфейса API на основе общепринятых языков программирования, протоколов и др. Рекомендуемые стандарты и спецификации приведены в приложении А.
7 Требования к исходным данным дистанционного
зондирования Земли из космоса7.1 Для реализации сервиса обработки и анализа данных ДЗЗ из космоса необходимо использовать данные, готовые для анализа, согласно требованиям ГОСТ Р 59829 и ГОСТ Р 70026.
7.2 Все операции с исходными данными ДЗЗ из космоса, требующими применения нестандартных алгоритмов коррекции и привлечения дополнительной технической информации, выполняют до начала использования сервиса обработки и анализа данных ДЗЗ из космоса.
7.3 Для верификации и валидации результатов обработки исходные данные ДЗЗ из космоса должны быть обеспечены метаданными в соответствии с ГОСТ Р 59079 и ГОСТ Р 59755 и иной справочной информацией (отчеты о валидации, отчеты о качестве и т. п.).
7.4 Исходные данные ДЗЗ из космоса каталогизирует оператор архива данных ДЗЗ из космоса.
7.4.1 Результатом каталогизации является формирование каталога, содержащего ссылки на совокупность наборов данных ДЗЗ из космоса, доступных для удаленной обработки и анализа по запросу пользователя.
7.4.2 Каталог следует использовать:
- для разделения исходных данных ДЗЗ из космоса на группы по заданным критериям (по географическому признаку, временному диапазону мониторинга, по спектральным диапазонам и др.);
- группировки исходных данных и наборов данных ДЗЗ из космоса в каталог коллекции.
7.4.3 Доступ к каталогу может быть обеспечен с использованием URI, IRI, предоставляющих расширяемый способ идентификации ресурсов или инструментов работы с каталогом согласно спецификации STAC.
7.5 Исходные данные ДЗЗ из космоса должны быть расположены в оперативном архиве и быть доступны для непосредственной обработки с минимальной временной задержкой.
8 Требования к аппаратно-программному обеспечению сервиса обработки и анализа данных дистанционного зондирования Земли из космоса
8.1 Сервис обработки и анализа данных ДЗЗ из космоса необходимо реализовать на аппаратно-программном обеспечении с использованием виртуальных машин на базе серверной инфраструктуры и вычислительных модулей с возможностью параллельной обработки.
8.1.1 Сервис обработки и анализа данных ДЗЗ из космоса должен функционировать на автоматизированных рабочих местах, серверах, высокопроизводительных вычислительных кластерах, в облачной инфраструктуре центров обработки данных и т. д.
8.1.2 Сервис обработки и анализа данных ДЗЗ из космоса следует реализовать в виде веб-сервиса с веб-интерфейсом.
8.1.3 Необходимо, чтобы сервис обработки и анализа данных ДЗЗ из космоса соответствовал требованию кроссплатформенности — программные и пользовательские интерфейсы на разных платформах должны быть максимально идентичными.
8.2 Аппаратно-программное обеспечение сервиса обработки и анализа данных ДЗЗ из космоса должно:
- обеспечивать выполнение обработки и анализа больших данных в режиме реального масштаба времени;
- иметь средства контроля точности на всех этапах обработки и анализа данных;
- иметь функции автоматического и интерактивного контроля и редактирования результатов обработки и анализа данных, в т. ч. полученных автоматическим способом;
- обеспечивать проведение измерений и получение физических величин (опционально);
- обеспечивать возможность послойного представления информации и атрибутивных данных в различных форматах.
8.3 Вычислительная среда сервиса обработки и анализа данных ДЗЗ из космоса включает про-граммно-определяемые виртуальные кластеры (система управления кластерами, распределенные базы данных, файловая система и др.), которые управляют выделением и распределением вычислительных мощностей для выполнения процессов обработки и анализа данных ДЗЗ из космоса, обеспечивая возможность мониторинга и балансировки вычислительной нагрузки.
8.4 Аппаратно-программное обеспечение сервиса обработки и анализа данных ДЗЗ из космоса обеспечивает сетевой доступ к общему фонду конфигурируемых вычислительных ресурсов, которые могут быть оперативно предоставлены и освобождены с минимальными эксплуатационными затратами.
8.5 Аппаратное обеспечение сервиса обработки и анализа данных ДЗЗ из космоса имеет аппаратно-определяемую инфраструктуру, состоящую из унифицированных и взаимозаменяемых элементов аппаратной части, в частности мультипроцессорные кластеры, системы хранения данных и сетевые ресурсы.
8.6 Программная реализация сервиса обработки и анализа данных ДЗЗ из космоса в части функциональных возможностей должна соответствовать требованиям ГОСТ Р 59763 и ГОСТ Р 59764.
8.7 Использование динамически подключаемых библиотек и иных программных решений, адаптируемых для сервиса обработки и анализа данных ДЗЗ из космоса, осуществляют согласно требованиям ГОСТ Р 54593.
8.8 Порядок разработки и распространения программной реализации сервиса обработки и анализа данных ДЗЗ из космоса должен соответствовать положениям ГОСТ Р 70032 в части требований к модели взаимодействия между разработчиком и заказчиком и/или пользователем, включая требования:
- к системе управления версиями исходного кода и осуществлению доступа к системе для заказчика и/или пользователя;
- осуществлению сопровождения программного обеспечения, включая систему отслеживания проблем и протокол модификации исходного кода;
- правилам нумерации версий программного обеспечения и дистрибутивов;
- документации на исходный код и программное обеспечение в целом.
8.9 При разработке программной реализации сервиса обработки и анализа данных ДЗЗ из космоса используют среду управления версиями для отслеживания изменений в любом наборе файлов исходного кода, а также их документирования, включая возможность использования распределенной системы управления версиями с полной историей и возможностью полного отслеживания версий, независимо от доступа к сети Интернет или центральному (основному) серверу.
9 Требования доступа пользователей к сервису обработки и анализа данных дистанционного зондирования Земли из космоса
9.1 Доступ пользователей к сервису обработки и анализа данных ДЗЗ из космоса осуществляют в соответствии с ГОСТ Р 58570, ГОСТ Р 58833, ГОСТ Р 59083.
9.2 Доступ пользователей к сервису обработки и анализа данных ДЗЗ из космоса необходимо организовать при помощи механизмов авторизации. Рекомендуется использовать авторизацию:
- с помощью ключа API, представляющего собой уникальную последовательность символов, которая должна передаваться как параметр запроса URL, либо в заголовке HTTP-документа запроса для авторизации;
- на основе протокола OAuth.
Примечания
1 Указанные способы авторизации не являются взаимозаменяемыми и могут быть использованы совместно.
2 При разработке сервиса обработки и анализа данных ДЗЗ из космоса рекомендуется использовать актуальную версию протокола OAuth, имеющего возможность разделения ролей в части хранения информации о доступе и функционировании сервисов обработки и анализа данных ДЗЗ из космоса между отдельными серверами и сохранения конфиденциальности о группах пользователей и их правах.
Приложение А (справочное)
Рекомендуемые стандарты и спецификации
А.1 В разработке сервисов обработки и анализа данных ДЗЗ из космоса следует ориентироваться на общепризнанные на международном уровне стандарты. Большинство технических решений разработано в соответствии со стандартами консорциума OGC, разработанными в последние годы для среды веб-сервисов. Это стандарты, совместно именуемые OWS, которые включают в себя группу классов сервисов по поддержке алгоритмов обработки, анализа и визуализации данных ДЗЗ из космоса. В части интерфейса сервисов, использующих облачные ресурсы для проведения обработки и анализа больших массивов данных ДЗЗ из космоса, следует ориентироваться на орепЕО, которое состоит из трех уровней прикладного программирования, а именно: основного API для поиска, доступа и обработки больших наборов данных, серверного API для подключения к сервисам — источникам данных и технологий обработки данных ДЗЗ из космоса, и клиентских API для анализа этих наборов данных с использованием общераспространенных языков программирования R, Python и JavaScript.
А.2 В части унификации стандартов и форматов хранения, алгоритмов их обработки, а также подходов к разработке сервисов следует придерживаться следующих рекомендаций:
- разрабатываемые сервисы должны реализовать стандарты OGC;
- для передачи и отображения данных пользователям следует использовать стандарты OWS;
- API сервисов необходимо разрабатывать с использованием подходов OpenAPI (набор инструментов Swagger).
A.3API использует протокол HTTP для передачи сообщений запроса (request) и получения сообщений ответа (response). Эти сообщения оформляют в виде документов XML или JSON. Эти форматы являются предпочтительными, поскольку они представляют данные в виде, удобном для манипулирования клиентскими приложениями.
А.4 Проектирование API следует выполнять в соответствии с архитектурным стилем REST (передача репрезентативного состояния). REST является простым интерфейсом управления передачи информации без использования дополнительных внутренних прослоек. Каждая единица информации однозначно определяется глобальным идентификатором, таким как URL. Каждая URL в свою очередь имеет строго заданный формат. REST определяет набор ограничений того, как должна вести себя архитектура распределенной гипермедийной системы в сети. Архитектурный стиль REST подчеркивает масштабируемость взаимодействий между компонентами, единообразные интерфейсы, независимое развертывание компонентов и создание многоуровневой архитектуры для облегчения кэширования компонентов для уменьшения задержки, воспринимаемой пользователем, обеспечения безопасности и инкапсуляции устаревших систем.
А.5 Стиль REST определяет набор рекомендаций по проектированию свободно связанных приложений и сервисов, использующих протокол HTTP для передачи данных. REST не предписывает, как реализовать эти принципы на более низком уровне, вместо этого он определяет ряд архитектурных правил:
- архитектура должна состоять из клиентов (клиент — прикладное программное обеспечение, использующее функционал API), серверов и ресурсов;
- связь «клиент — сервер» не должна иметь состояния, то есть содержимое клиента не хранится на сервере между запросами. Вместо этого информация о состоянии сессии хранится у клиента;
- необходим единый интерфейс между компонентами, чтобы информация передавалась в стандартизированной форме, а не в соответствии с потребностями клиентских приложений;
- требуется наличие разделения «клиент— сервер»: клиент и сервер должны действовать независимо друг от друга. Они взаимодействуют друг с другом только через запросы и ответы;
- необходима многоуровневая система, которая организует каждый тип сервера (отвечающий за безопасность, балансировку нагрузки и т. д.), участвующий в получении запрашиваемой информации, в иерархию, невидимую для клиента.
А.6 Общие требования и рекомендации реализации:
- API должно максимально использовать специфицированные коды сообщений НТТР-транзакций;
- при обработке входных запросов рекомендуется производить валидацию (проверку) атрибутов и их значений и при необходимости формировать уведомления с соответствующим статусом (кодом) HTTP;
- в целях безопасности не рекомендуется разрешение использования механизма CORS.
А.7 В качестве транспортного протокола следует использовать HTTP/HTTPS, который является более предпочтительным, поскольку поддерживает шифрование в целях повышения безопасности. При использовании HTTPS рекомендуется использовать криптографические протоколы TLS. В качестве протоколов документов запросов и ответов рекомендуется использовать JSON или XML.
А.8 Ниже приведена краткая характеристика упоминаемых протоколов и форматов:
- HTTP. Протокол прикладного уровня в модели набора Интернет-протоколов для распределенных, совместных, гипермедийных информационных систем. HTTP — основа передачи данных в сети, где гипертекстовые документы включают гиперссылки на другие ресурсы, к которым пользователь может получить доступ в веб-браузере;
- TLS. Криптографический протокол, предназначенный для обеспечения безопасности связи в компьютерной сети. Протокол широко используется в таких приложениях, как электронная почта, обмен мгновенными сообщениями и передача голоса по IP;
- JSON. Открытый стандартный формат файла и формат обмена данными, в котором используется читаемый человеком текст для хранения и передачи объектов данных, состоящих из пар «атрибут — значение» и массивов (или других сериализуемых значений). Общий формат данных с разнообразными функциями при обмене данными, включая связь веб-приложений с серверами;
- XML. Расширяемый язык разметки, который определяет набор правил для кодирования документов в формате;
- CORS. Механизм, который позволяет запрашивать ограниченные ресурсы на веб-странице из другого домена за пределами домена, из которого был обслужен первый ресурс;
- GDAL/OGR. Библиотека для работы с пространственными данными, включающая набор утилит, служащих для преобразования и обработки широкого набора различных растровых и векторных форматов данных;
- PostGIS. Библиотека для работы с пространственными данными с открытым исходным кодом, которая в качестве внешнего расширения добавляет поддержку географических объектов в реляционную базу данных PostgreSQL.
В таблице А.1 приведены рекомендуемые стандарты для реализации сервиса программного доступа к обработке и анализу данных ДЗЗ из космоса.
Таблица А.1
Наименование | Краткая характеристика (назначение) |
OpenAPI Specification (см. [2]) | Стандартное описание интерфейса HTTP API, не зависящее от языка программирования |
OGC API — Common (см. [3]) | Стандарты OGC API определяют модули API для последовательного включения веб-API |
OGC API — Common — Part 1: Core (cm. [4]) | Определение модулей API и требования, которые применимы ко всем стандартам OGC веб-API |
OGC API — Common — Part 2; Geospatial Data (cm. [5]) | Организация наборов данных ДЗЗ, определение операций поиска и выборки отдельных наборов |
Web Coverage Processing Service (WCPS) Language Interface Standard (cm. [6]) | Определение стилей для извлечения, обработки и анализа многомерных покрытий данных ДЗЗ с координатной сеткой (кубов данных) |
openEO API (cm. [7]) | Спецификация для функциональной обработки больших наборов данных ДЗЗ в облачной среде |
OGC API — Features — Part 1: Core (cm. [8]) | Определение модулей ядра API для создания и изменения функций веб-API в соответствии с IETF HTTP/HTTPS RFC, рекомендациями W3C по работе с данными ДЗЗ, рекомендациями W3C/OGC по использованию данных ДЗЗ и рекомендациями OGC по веб-API |
OGC API — Features — Part 2: Coordinate Reference Systems by Reference (cm. [9]) | Определение расширений к ядру API, указанным в (см. [10]): ядро, с возможностью использования систем координат, отличных от WGS 84 |
RFC 5785 (cm. [10]) | Определение URI |
RFC 7946 (cm. [11]) | Формат GeoJSON обмена данными ДЗЗ, основанный на JSON. Определяет несколько типов объектов JSON и способ их объединения для представления данных о географических объектах, их свойствах. GeoJSON использует WGS 1984 |
Окончание таблицы А. 1
Примечания
1 Спецификации орепЕО API разрабатывались с учетом совместимости со STAC и OGC API. openEO API не предоставляет сервисы визуализации данных ДЗЗ из космоса напрямую, серверные части могут свободно предоставлять хранящиеся данные и/или результаты обработки с использованием таких стандартов, как WMS, WMTS, WCS или соответствующих им стандартов и спецификаций API OGC.
2 Для хранения данных ДЗЗ из космоса API орепЕО использует STAC. STAC API основан на OGC API — Features и на OGC API — Commons. Хранение данных ДЗЗ из космоса также может быть определено с помощью OGC API — Coverages через тот же интерфейс.
3 Метаданные пакетной обработки орепЕО предоставляются GeoJSON, опционально — STAC.
4 Форматы файлов и их свойства рекомендуется согласовывать с GDAL. По возможности используются стандартизированные форматы файлов, такие как оптимизированные для облака GeoTiff и netCDF.
5 Проекции для данных ДЗЗ из космоса задаются кодами EPSG или определениями WKT-2.
6 Для разработки совместимых интерфейсов взаимодействия применяются стандарты OGC, что позволяет разработчикам использовать сторонние библиотеки и приложения в своих технологических циклах, в части разработки и программной реализации алгоритмов обработки и анализа данных ДЗЗ из космоса в рамках единых открытых проектов применение стандартов OGC вносит большой вклад в унификацию ПО.
Приложение Б (справочное)
Типовой функционал основных уровней API для реализации программных решений обработки и анализа данных дистанционного зондирования Земли из космоса
Б.1 На уровне ядра API реализуется интерфейс, который предписывает уровень доступа клиентов (клиентский API), взаимодействующий с серверной частью типового интерфейса (серверный API). Внутренняя реализация этого уровня основана на построении микросервисов, небольших компонентов, которые решают относительно изолированную задачу, такую как аутентификация пользователя или выборка данных. Функциональное описание определяет, как серверный API взаимодействует с ядром API и как клиентские API взаимодействуют с ядром API.
Б.2 Взаимодействие между ядром API и серверным API должно соответствовать существующим стандартам и протоколам описания метаданных. Таким образом, рекомендуется выйти к соглашению о конкретных стандартах, поддерживаемых как ядром API, так и серверным API, чтобы усилить взаимодействие и совместимость различных уровней, гарантируя разработку типового интерфейса как единого согласованного API.
Уровень серверного API условно может состоять из трех подуровней реализации серверной части типового интерфейса:
- вычислительной среды, содержащей программно определяемые виртуальные кластеры (система управления кластерами, распределенные базы данных, файловая система и др.), которые управляют выделением и распределением вычислительных мощностей для выполнения процессов на уровне ядра API, обеспечивая возможность их мониторинга и балансировки вычислительной нагрузки;
- облачной инфраструктуры, обеспечивающей сетевой доступ к общему фонду конфигурируемых вычислительных ресурсов, которые могут быть оперативно предоставлены и освобождены;
- вычислительных ресурсов, отражающих аппаратно-определяемую инфраструктуру, состоящую из физических элементов серверной части типового интерфейса, то есть мультипроцессорные кластеры, системы хранения данных и сетевые ресурсы.
Б.З В клиентском API программный доступ может реализовываться в среде программирования, например, R, Python и JavaScript, которые импортируют в виде библиотек и используют в веб-интерфейсах. Две среды программирования: Python и R, — широко используются в приложениях обработки и анализа данных ДЗЗ. Среда программирования JavaScript поддерживается для интеграции веб-браузера и мобильных приложений. На уровне клиентского API поддерживаются:
- интеграция с экосистемами пакетов клиентской среды, например, в случае среды Python — с SciРу, NumPy, pandas; в случае среды R — R-пространственными пакетами, включающими sp, sf, raster; и, кроме того, потенциально более специализированные пакеты;
- пользовательские функции, обеспечиваемые серверной частью типового интерфейса, которые интегрируются с клиентской средой;
- в случае реализации мобильного приложения — кроссплатформенная поддержка различных мобильных операционных систем и использования встроенных функций для повышения эффективности;
- поиск и выборка данных ДЗЗ из космоса у различных поставщиков;
- запрос серверных возможностей и вычислительных ресурсов для обработки и анализа данных ДЗЗ из космоса;
- выполнение асинхронных операций и пакетных заданий по обработке и анализу данных ДЗЗ из космоса;
- аутентификация пользователя.
На уровне клиентского API имеются различные способы взаимодействия с пользователями:
- создание пакета Python, который предоставляет все функции, предлагаемые общим внутренним API в виде методов Python и содержащие дополнительные модули для стандартизированной аутентификации пользователя, обработки и анализа данных;
- создание пакета R с функциями и методами для стандартизированной аутентификации пользователя, обработки и анализа данных;
- создание графического пользовательского интерфейса для различных веб-браузеров для визуализации процессов и результатов обработки и анализа данных ДЗЗ из космоса. JavaScript включает в себя автономную библиотеку, которая обеспечивает доступ к внутренним службам, и базируется на таких технологиях, как HTTP и RESTful;
- создание мобильного приложения, доступного как для планшетов, так и для смартфонов на разных платформах. Эта задача основана на библиотеке, например, JavaScript, которая используется для доступа к различным серверным компонентам через ядро API типового интерфейса.
Библиография
[1] OGC Standards [Электронный ресурс] URL: https://www.ogc.org/docs/is
[2] Спецификация OpenAPI. Версия 3.1.0 (OpenAPI Specification — Version 3.1.0)
[3] Открытый геопространственный консорциум. Общий стандарт API. 19-072. Версия 0.0.6 (OGC API — Common. 19-072. Version 0.0.6)
[4] Открытый геопространственный консорциум. Общий стандарт API. Часть 1. Ядро. 19-072. Версия 1.0.0 (OGC
API — Common. 19-072. Part 1: Core. Version 1.0.0)
[5] Открытый геопространственный консорциум. Общий стандарт API. Часть 2. Геопространственные данные. 20-024. Версия 0.0.9 (OGC API — Common 20-024. Part 2: Geospatial Data. Version 0.0.9)
[6] Стандарт языкового интерфейса службы обработки веб-покрытия 08-068гЗ. Версия 1.1 (Web Coverage Processing Service (WCPS) Language Interface Standard. 08-068r3. Version 1.1)
[7] Спецификация API openEO для функциональной облачной обработки больших наборов данных. Версия 1.1.0 (openEO API. Version 1.1.0)
[8] Открытый геопространственный консорциум. Функции API. Часть 1. Ядро. 17-069гЗ. Версия 1.0 (OGC API — Features — Part 1: Core 17-069r3. Version 1.0)
[9] Открытый геопространственный консорциум. Функции API. Часть 2. Системы отсчета координат по ссылке. 18-058. Версия 1.0.0 (OGC API — Features — Part 2: Coordinate Reference Systems by Reference. 18-058. Version 1.0.0)
[10] RFC 5785 Определение общеизвестных унифицированных идентификаторов ресурсов [Defining Well-Known Uniform Resource Identifiers (URIs)]
[11] RFC 7946 Формат GeoJSON (The GeoJSON Format)
УДК 528.8:006.354
ОКС 35.240.70
49.140
Ключевые слова: системы дистанционного зондирования Земли из космоса, программный доступ, сервисы обработки и анализа данных ДЗЗ, API
Редактор М.В. Митрофанова Технический редактор И.Е. Черепкова Корректор И.А. Королева Компьютерная верстка Е.А. Кондрашовой
Сдано в набор 17.07.2023. Подписано в печать 27.07.2023. Формат 60x84%. Гарнитура Ариал. Усл. печ. л. 2,32. Уч.-изд. л. 1,90.
Подготовлено на основе электронной версии, предоставленной разработчиком стандарта
Создано в единичном исполнении в ФГБУ «Институт стандартизации» , 117418 Москва, Нахимовский пр-т, д. 31, к. 2.