Основы SAP PI. Часть 4 – “Что такое интерфейс?”.

cern

Сегодня мы с вами разберемся – что же такое интерфейс в терминах SAP Process Integration, из чего он состоит и, как говорится, “с чем его едят”.


Весь цикл статей:
SAP Process Integration – основы. Часть 1: историческая.
SAP Process Integration – основы. Часть 2 – обзор архитектуры.
SAP Process Integration – основы. Часть 3 – System Landscape Directory.
Основы SAP PI. Часть 4 – “Что такое интерфейс?”.
Основы SAP PI. Часть 5 – “Integration Directory, настройка интерфейса“
Основы SAP PI. Часть 6 – “Правила маршрутизации и pipeline. Почтальон Пиайкин за работой.“
Основы SAP PI. Часть 7 — «Системы всего ландшафта – соединяйся! Адаптеры».


Договоримся о терминах.

Для начала – словарное определение:

Интерфе́йс (англ. interface — сопряжение, поверхность раздела, перегородка) — совокупность возможностей, способов и методов взаимодействия двух систем <..>, устройств или программ для обмена информацией между ними, определённая их характеристиками, характеристиками соединения, сигналов обмена и т. п.

Wikipedia

Рис.1: Интерфейс

Рис.1: Интерфейс


Заметим, что интерфейсом можно назвать как способ передачи/приема данных одной системы (например, “SAP ERP принимает данные через интерфейс BAPI_OBJECT_CREATE..”), так и совокупность интерфейса системы-отправителя данных, интерфейса системы-получателя данных и необходимых преобразований между ними.

В зависимости от направления движения информации, интерфейсы систем делятся на исходящие (outbound) и входящие (inbound).

Рис.2: Исходящий и входящий интерфейсы

Рис.2: Исходящий и входящий интерфейсы

Интерфейсы также делятся на синхронные (syncronious) и асинхронные (asyncronious). Синхронные интерфейсы работают по принципу “запрос-ответ”, при этом исходная система останавливает работу до получения ответа от целевой системы, то есть системы синхронизируют свою работу в процессе обмена данными. Асинхронные интерфейсы передают данные только в одну сторону и не ожидают получения ответа.

Рис.3: Синхронные и асинхронные интерфейсы.

Рис.3: Синхронные и асинхронные интерфейсы.

Процесс преобразования данных и технического протокола передачи между исходящим и входящим интерфейсом называется мэппингом (mapping). Надо сказать, что в SAP Process Integration задачи преобразования данных и протокола разделяются. Первым занимаются программы мэппинга, вторым – адаптеры.

Данные в различных системах могут различаться как по структуре, так и по набору значений (пример – различные артикулы одного и того же товара в складской и торговой системах). Мэппинг также делиться на два вида: мэппинг структуры (structure mapping) и мэппинг значений (value mapping).

Таким образом, схема интерфейса в вышеназванных терминах будет выглядеть так:

Рис.4: Интерфейс и его составляющие

Рис.4: Интерфейс и его составляющие

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

Рис.5: Чем больше систем и интерфейсов - тем выгоднее внедрение интеграционной шины

Рис.5: Чем больше систем и интерфейсов – тем выгоднее внедрение интеграционной шины

Интеграционная шина SAP Process Integration.

Любая интеграционная шина должна решать, как минимум, следующие задачи:

  • преобразовать технологический протокол передачи данных из исходного в целевой;
  • преобразовать структуру данных из исходной в целевую;
  • преобразовать значения данных там, где это необходимо.

Что из себя представляет “система”, которую нужно интегрировать?
Это некоторая “железка”, компьютер или сервер, на которой установлено программное обеспечение. В программном обеспечении предусмотрена возможность “выгрузить” (передать, отправить) или “загрузить” (принять) некоторые данные.

Вспомним некоторые термины из предыдущей статьи про SLD и подставим их в предыдущее утверждение.

Бизнес-система – это техническая система на которой установлены программные компоненты, включающие в себя интерфейсы.

Как мы помним, бизнес-система, техническая система, программные компоненты – все это объекты модели ландшафта в SLD. Интерфейсы – новый тип объекта. В SAP Process Integration за создание, обработку и хранения такого типа объектов отвечает отдельный репозитарий – Enterprise Service Repository (ESR).

Интерфейс в Enterprise Service Repository (ESR).

Связь между SLD и ESR можно изобразить следующим образом:

Рис.7: Связь объектов SLD и ESR.

Рис.7: Связь объектов SLD и ESR.

На левой части рисунка мы видим систему в интеграционном ландшафте – бизнес-система, основанная на технической системе с установленными программными компонентами (продукт в данной связи не используется).
Компоненты импортируются из SLD в репозитарий интерфейсов (ESR), а интерфейсы – создаются в ESR с привязкой к программному компоненту.

В ESR, помимо интерфейсов, также создаются объекты мэппинга – правила и программы преобразования структуры и значений данных при передаче их из исходящего интерфейса во входящий.

Рис.8: Интерфейс и его отображение в ESR.

Рис.8: Интерфейс и его отображение в ESR.

В Enterprise Service Repository есть еще множество разных объектов, но на данном этапе мы не будем их затрагивать – важнее сейчас понять принцип построения интерфейса в SAP PI.

Таким образом, в ESR строится модель интерфейса, в которой описаны структуры и формат данных исходящего и целевого интерфейсов, а также правила преобразования данных и значений между ними. То есть, при помощи объектов ESR мы решаем две из трех основных задач интеграции – преобразование данных и преобразование значений.

А что же третья задача – преобразование протоколов передачи данных?

Этим занимается другой репозитарий – Integration Directory.

О нем мы поговорим в следующей статье.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *