Перейти к содержанию

Настройка метаданных станции

Учебные результаты

К концу этого практического занятия вы сможете:

  • создать токен авторизации для конечной точки collections/stations
  • добавить метаданные станции в wis2box
  • обновить/удалить метаданные станции с помощью wis2box-webapp

Введение

Для международного обмена данными между членами ВМО важно иметь общее понимание станций, которые производят данные. Интегрированная глобальная система наблюдений ВМО (WIGOS) предоставляет рамки для интеграции систем наблюдений и систем управления данными. Идентификатор станции WIGOS (WSI) используется как уникальная ссылка на станцию, которая произвела конкретный набор данных наблюдения.

wis2box имеет коллекцию метаданных станций, которая используется для описания станций, производящих данные наблюдений, и должна быть получена из OSCAR/Surface. Метаданные станции в wis2box используются инструментами преобразования BUFR для проверки того, что входные данные содержат действительный идентификатор станции WIGOS (WSI), и для обеспечения сопоставления между WSI и метаданными станции.

Создание токена авторизации для collections/stations

Чтобы редактировать станции через wis2box-webapp, вам сначала нужно создать токен авторизации.

Войдите в свою учебную виртуальную машину и убедитесь, что вы находитесь в директории wis2box:

cd ~/wis2box

Затем войдите в контейнер wis2box-management с помощью следующей команды:

python3 wis2box-ctl.py login

Внутри контейнера wis2box-management вы можете создать токен авторизации для конкретной конечной точки с помощью команды: wis2box auth add-token --path <my-endpoint>.

Например, чтобы использовать случайно сгенерированный токен для конечной точки collections/stations:

wis2box auth add-token --path collections/stations

Результат будет выглядеть так:

Continue with token: 7ca20386a131f0de384e6ffa288eb1ae385364b3694e47e3b451598c82e899d1 [y/N]? y
Token successfully created

Или, если вы хотите определить свой собственный токен для конечной точки collections/stations, вы можете использовать следующий пример:

wis2box auth add-token --path collections/stations DataIsMagic

Результат:

Continue with token: DataIsMagic [y/N]? y
Token successfully created

Пожалуйста, создайте токен авторизации для конечной точки collections/stations, используя приведенные выше инструкции.

Добавление метаданных станции с помощью wis2box-webapp

wis2box-webapp предоставляет графический интерфейс пользователя для редактирования метаданных станции.

Откройте wis2box-webapp в вашем браузере, перейдя по адресу http://YOUR-HOST/wis2box-webapp, и выберите станции:

wis2box-webapp-select-stations

Когда вы нажмете 'добавить новую станцию', вам будет предложено предоставить идентификатор станции WIGOS для станции, которую вы хотите добавить:

wis2box-webapp-import-station-from-oscar

Добавьте метаданные станции для 3 или более станций

Пожалуйста, добавьте три или более станций в коллекцию метаданных станций вашего wis2box.

По возможности используйте станции из вашей страны, особенно если вы принесли свои собственные данные.

Если в вашей стране нет станций в OSCAR/Surface, вы можете использовать следующие станции для этого упражнения:

  • 0-20000-0-91334
  • 0-20000-0-96323 (обратите внимание на отсутствие данных о высоте станции в OSCAR)
  • 0-20000-0-96749 (обратите внимание на отсутствие данных о высоте станции в OSCAR)

Когда вы нажмете поиск, данные станции будут получены из OSCAR/Surface, обратите внимание, что это может занять несколько секунд.

Просмотрите данные, возвращенные OSCAR/Surface, и добавьте недостающие данные, где это необходимо. Выберите тему для станции и предоставьте ваш токен авторизации для конечной точки collections/stations и нажмите 'сохранить':

wis2box-webapp-create-station-save

wis2box-webapp-create-station-success

Вернитесь к списку станций, и вы увидите добавленную вами станцию:

wis2box-webapp-stations-with-one-station

Повторите этот процесс, пока у вас не будет настроено как минимум 3 станции.

Определение отсутствующей информации о высоте

Если высота вашей станции отсутствует, существуют онлайн-сервисы, которые помогут найти высоту, используя открытые данные о высотах. Один из таких примеров - Open Topo Data API.

Например, чтобы получить высоту на широте -6.15558 и долготе 106.84204, вы можете скопировать и вставить следующий URL в новую вкладку браузера:

https://api.opentopodata.org/v1/aster30m?locations=-6.15558,106.84204

Результат:

{
  "results": [
    {
      "dataset": "aster30m", 
      "elevation": 7.0, 
      "location": {
        "lat": -6.15558, 
        "lng": 106.84204
      }
    }
  ], 
  "status": "OK"
}

Просмотр метаданных вашей станции

Метаданные станции хранятся в бэкенде wis2box и доступны через wis2box-api.

Если вы откроете браузер и перейдете по адресу http://YOUR-HOST/oapi/collections/stations/items, вы увидите добавленные вами метаданные станции:

wis2box-api-stations

Проверьте метаданные вашей станции

Проверьте, что добавленные вами станции ассоциированы с вашим набором данных, посетив http://YOUR-HOST/oapi/collections/stations/items в вашем браузере.

У вас также есть возможность просмотреть/обновить/удалить станцию в wis2box-webapp. Обратите внимание, что для обновления/удаления станции вам необходимо предоставить ваш токен авторизации для конечной точки collections/stations.

Обновление/удаление метаданных станции

Попробуйте обновить/удалить метаданные станции для одной из добавленных вами станций с помощью wis2box-webapp.

Массовая загрузка метаданных станций

Обратите внимание, что wis2box также имеет возможность выполнять "массовую" загрузку метаданных станций из файла CSV с помощью командной строки в контейнере wis2box-management.

python3 wis2box-ctl.py login
wis2box metadata station publish-collection -p /data/wis2box/metadata/station/station_list.csv -th origin/a/wis2/centre-id/weather/surface-based-observations/synop

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

Вы можете создать файл CSV с помощью Excel или текстового редактора, а затем загрузить его в wis2box-host-datadir, чтобы сделать его доступным для контейнера wis2box-management в директории /data/wis2box/.

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

Смотрите официальную документацию wis2box для получения дополнительной информации о том, как использовать эту функцию.

Заключение

Поздравляем!

На этом практическом занятии вы научились:

  • создавать токен авторизации для конечной точки collections/stations, который будет использоваться с wis2box-webapp
  • добавлять метаданные станции в wis2box с помощью wis2box-webapp
  • просматривать/обновлять/удалять метаданные станции с помощью wis2box-webapp