Автоматизация обмена данными между информационными системами

В этой статье рассказываем, как команда Реактива навела порядок в данных информационных систем Российской государственной библиотеки и избавила издательства от двойной работы.

Клиент

Российская государственная библиотека (РГБ) — крупнейшее национальное хранилище печатных и электронных публикаций, в фондах которого более 48 миллионов изданий. В РГБ есть несколько информационных систем, в том числе «Единая библиография» — эта система создана для автоматизации приёма, регистрации и учёта всех изданий, выходящих в России, а также для взаимодействия с производителями документов, издательствами, библиотеками.

Контекст

Исторически сложилось так, что внутри объединённой структуры РГБ (после присоединения Российской книжной палаты) параллельно функционировали две информационные системы, которые работали с одними и теми же данными: «ОЭК» и «Единая библиография». Внешние поставщики (издательства, типографии, авторы) должны были передавать данные об изданиях в обе системы.

Проблема

Поставщики делали лишнюю работу, так как загружали одни и те же данные дважды: в одну систему, чтобы пройти государственную регистрацию и получить номер, а в другую — чтобы соблюсти законодательство по хранению экземпляра печатного издания в электронной форме.

Но кто-то загружал данные в обе системы, а кто-то — только в одну из двух. Это привело к беспорядку, дублированию усилий и риску потери данных. Такой процесс работы неудобен для поставщиков, особенно для крупных издательств, которые работают с тысячами электронных экземпляров.

Задача

Устранить дублирование работы для поставщиков и обеспечить единый набор данных в обеих системах. При этом — не объединять системы в одну, а найти решение, которое автоматизирует обмен данными и сохранит работоспособность существующей инфраструктуры.

Как мы работали

Команда Реактива отправилась в командировку в Российскую государственную библиотеку, чтобы разобраться в проблеме и лично пообщаться с разными группами пользователей и ответственными за процессы. Вместо того, чтобы просто получить ТЗ, команда вместе с заказчиком разбирали весь бизнес-процесс прохождения электронного экземпляра: рисовали схемы, выдвигали гипотезы, обсуждали предложения.

Схема обмена данными РГБ

Вместо объединения систем (что было бы намного дороже и дольше) мы разделили их зоны ответственности:

  • Система «ОЭК» становится единым окном входа. Она отвечает только за приём обязательных электронных экземпляров от поставщиков.
  • Система «Единая библиография» оставляет за собой ключевую функцию — государственную регистрацию и присвоение государственного номера издания.

Для связи систем спроектировали и реализовали интеграцию REST API. Разработанный метод обеспечивает бесшовную интеграцию между системой «ОЭК» и ИС «Единая библиография», автоматизируя ключевые точки обмена данными:

1. Автоматическая синхронизация поставщиков
После регистрации нового поставщика или изменения данных существующего в системе «ОЭК» информация автоматически передаётся в ИС «Единая библиография». Это гарантирует актуальность и единообразие справочной информации в обеих системах.
2. Передача электронных экземпляров на регистрацию
Поставщик загружает издание только в систему «ОЭК», после чего система самостоятельно направляет метаданные и файл в ИС «Единая библиография» для создания заявки на государственную регистрацию и присвоения номера.
3. Обратная связь по статусу регистрации
ИС «Единая библиография» возвращает статус обработки заявки, а при завершении регистрации — присвоенный номер. Система «ОЭК» получает эту информацию и может предоставить её поставщику.
4. Единая точка доступа к библиографическим данным
ИС «Единая библиография» предоставляет внешним информационным системам доступ к данным о документах, периодических изданиях, выпусках и издательствах, что исключает необходимость прямого обращения к нескольким источникам данных.

Результат

Разработанный метод автоматизации работы с данными позволил в два раза сократить объём работы поставщиков изданий: теперь они загружают информацию только в одну систему.

А в обеих системах теперь всегда актуальный и единый набор данных, так как мы исключили риск рассинхронизации информации о поставщиках и изданиях. Решение реализовано, протестировано и успешно работает в продуктивной среде.

Технологии

Oracle 12, Java, SQL, JavaScript, HTML/CSS, GlassFish, Red Hat Linux, Ubuntu Server, REST, JSON, HTTP, JWT-токены