1. Общие сведения
1.1. Обозначение и наименование программы
Полное наименование: Типовое тиражируемое программное обеспечение витрин данных конфигурации «Лайт».
Условное обозначение: ПО «Витрина данных Лайт».
1.2. Назначение программы
Национальная система управления данными (далее – НСУД) представляет собой систему, состоящую из взаимосвязанных элементов информационно-технологического, организационного, методологического, кадрового и нормативно-правового характера и обеспечивающую достижение целей и выполнение задач, обозначенных в Концепции Национальной системы управления данными, утвержденной распоряжением Правительства Российской Федерации от 3 июня 2019 года № 1189-р.
НСУД предназначена для управления информацией, содержащейся в информационных системах органов и организаций государственного сектора, а также в информационных ресурсах, созданных в целях реализации полномочий органов и организаций государственного сектора (далее – государственные данные) и для осуществления информационного обмена между Поставщиками и Получателями данных, присоединившимися к НСУД (далее – Участники НСУД).
Управление процессами информационного обмена между Участниками НСУД осуществляется средствами федеральной государственной информационной системы «Единая информационная платформа Национальной системы управления данными» (далее – ФГИС «ЕИП НСУД»).
Для передачи данных между Участниками НСУД используется среда взаимодействия НСУД, состоящая из Системы межведомственного электронного взаимодействия 3.0 (далее – СМЭВ) и (или) подсистемы обеспечения доступа к данным СМЭВ (далее – ПОДД СМЭВ) (СМЭВ 4.0), обеспечивающих транспорт и процессинг данных, а также агентов ПОДД СМЭВ, устанавливаемых на стороне Участников НСУД.
Программа является частью НСУД и предназначена для загрузки публикуемых данных в отдельную БД на стороне Поставщика данных. Программа представляет собой типовое программное обеспечение, устанавливаемое на стороне поставщиков данных.
1.3. Возможности программы
Программа обеспечивает выполнение следующих функций:
автоматическая настройка взаимосвязей между компонентами программы;
автоматический запуск всех необходимых компонентов программы после установки;
автоматическая настройка витрины и структуры ее таблиц на основании содержимого XML-файла, загружаемого через пользовательский web-интерфейс;
выгрузка шаблона через графический интерфейс (для упрощения процесса подготовки загружаемых данных);
загрузка данных в витрину:
через графический интерфейс;
REST API;
файловый обмен.
настройка параметров работы витрины через графический интерфейс;
выполнение запросов на предоставление данных в соответствии с протоколом ПОДД через механизмы СМЭВ ПОДД.
1.4. Рекомендуемые технические и программные средства
В разделе приведены рекомендации по аппаратному и программному обеспечению, а также необходимая конфигурация сети для оптимального баланса между производительностью и стабильностью работы всех компонентов программы. Рекомендация основана на использовании программы в режиме стандартной рабочей нагрузки на тестовом стенде.
Примечание
Следует учитывать, что невозможно дать универсальной рекомендации для развертывания программы т.к. вариантов конфигурации оборудования, характера нагрузки и других факторов может быть очень много. Предварительный расчет параметров оборудования на этапе внедрения для каждой организации должен быть рассчитан индивидуально. Советуем установить программу с приведенными ниже рекомендациями на тестовом стенде для того чтобы определить оптимальную конфигурацию для ваших сценариев работы.
Рекомендуем выполнить следующее:
продумайте сценарии работы с программой необходимые для достижения ваших целей;
установите программу (см. Руководство по установке) на тестовом стенде с рекомендуемыми техническими характеристиками (Таблица 1.1);
создайте структуру Витрины;
подготовьте тестовые данные для загрузки и определите количество загружаемых данных;
в процессе загрузки данных проведите измерение ключевых параметров нагрузки серверного оборудования;
линейно экстраполируйте эти данные на целевую систему, получив таким образом загруженность целевого оборудования;
выберете оборудование, которое будет соответствовать нагрузке для ваших задач.
Ниже приведены параметры тестового стенда, на котором проверялась работоспособность программы.
1.4.1. Серверное оборудование
Рекомендованные требования к серверному оборудования приведены в таблице (Таблица 1.1).
Сервер |
Требования |
CPU |
RAM,ГБ |
HDD, ГБ |
|---|---|---|---|---|
Витрина данных |
Минимальные требования |
4 |
16 |
100 |
Витрина данных |
Рекомендованные требования |
10 |
128 |
500 |
1.4.2. Программное обеспечение
Название |
Описание |
Версия |
|---|---|---|
Операционная система (выбор опционален) |
CentOS РЕД ОС АЛЬТ Сервер 8 СП Astra Linux 1.7 (уровень защищенности «Воронеж») |
7.9 7.2 8 1.7 |
Docker |
Программное обеспечение для автоматизации развёртывания и управления приложениями |
20.10.2 |
1.4.3. Требования к каналам связи
К каналам связи сервера, на котором будет установлена программа, предъявляются следующие требования:
пропускная способность 100 Гбит/сек с протоколами TCP/IP и UDP;
отсутствие ПО, блокирующего или замедляющего трафик.
К каналам связи, используемым для взаимодействия с клиентскими сетями Ведомства, предъявляются следующие требования:
пропускная способность 10 Гбит/сек с протоколами TCP/IP и UDP.
Необходимо учитывать процент свободных ресурсов оборудования и пиковые нагрузки.
1.5. Режим работы программы
Программа предназначена для круглосуточного функционирования, 24 часа день 7 дней в неделю, с перерывами на плановое техническое обслуживание, восстановление работоспособности.
Программа поддерживает функционирование в следующих режимах:
штатный;
сервисный;
аварийный;
остановка.
1.5.1. Штатный режим
Штатный режим является основным режимом функционирования Программы. В этом режиме функционирования обеспечивается круглосуточная работа Программы без потери функциональности и работоспособности ее программно-технических средств.
1.5.2. Сервисный режим
Режим функционирования, при котором Программа выполняет часть основных функций, но параллельно с этим проводятся работы по техническому обслуживанию, накладывающие ограничения на функциональность Программы. В сервисном режиме функционирования обеспечивается возможность круглосуточного функционирования Программы.
1.5.3. Аварийный режим
Режим функционирования, при котором в Программе доступны только базовые функциональные возможности, необходимые для восстановления работоспособности.
1.5.4. Остановка
Режим работы, когда Программа не выполняет ни одну из своих функций.
1.6. Используемые языки программирования
Название |
Версия |
Описание |
|---|---|---|
Kotlin |
1.6.20 |
Язык программирования |
Java |
1.8.0_352 |
Язык программирования |
SQL |
SQL:2016 |
Язык программирования, применяемый для создания модификации и управления данными в реляционной базе данных |
Html |
5 |
Язык разметки |
CSS |
3 |
Язык разметки. Описание внешнего вида документов |
Python |
3.0 |
Язык программирования |
JavaScript |
ES2017 (ES8) |
Язык программирования |
1.7. Требования к персоналу
1.7.1. Требования к системному администратору
Системный администратор обеспечивает штатную работу программы. Выполняет установку, настройку и мониторинг работоспособности программного и аппаратного обеспечения.
В основные обязанности системного программиста входит:
установка и настройка программы;
установка обновлений;
резервное копирование;
настройка логирования;
настройка системы мониторинга программы, аппаратного обеспечения и др.
Необходимые навыки для работы:
Знание TCP/IP.
Docker (развертывание, установка библиотек, администрирование).
Ansible.
Умение работать с веб-серверами (Apache).
SSH.
Резервное копирование.
Логирование.
Обновление программы.
Понимание модели баз данных.
Знание операционных систем CentOs на уровне администрирования.
Опыт работы по управлению и администрированию баз данных.
Навык проводить диагностику и анализ проблемных мест.
Умение распознать следствие/причины некорректной работы ПО или техники.
Умение анализировать сетевой трафик.
1.7.2. Требования к программисту
Программист решает задачи связанные непосредственно с сопровождением и доработкой программы под требования пользователей. Определяет схемы и алгоритмы обработки данных программой.
Программист должен обладать знаниями следующих языков программирования:
Java;
Кotlin;
Javascript.
Уметь использовать в своей работе следующее программное обеспечение и технологии:
Apache Zookeeper;
Apache Kafka;
Docker;
Vertx;
Spring (Spring-boot);
Web (http, настройка SSH).
В перечень задач, выполняемых программистом, входит:
поддержание работоспособности программы;
доработка программы под требованиям пользователей системы.