38
Зеленов Сергей Архитектор информационных систем Интеграция бизнес- решений с использованием Microsoft BizTalk Server 2004

Зеленов Сергей Архитектор информационных систем

  • Upload
    makoto

  • View
    64

  • Download
    1

Embed Size (px)

DESCRIPTION

Интеграция бизнес-решений с использованием Microsoft BizTalk Server 2004. Зеленов Сергей Архитектор информационных систем. Повестка:. Описание проблем и задач интеграции Обзор продукта Microsoft BizTalk Server Роль Microsoft SQL Server в архитектуре решения. Проблемы интеграции. - PowerPoint PPT Presentation

Citation preview

Page 1: Зеленов Сергей Архитектор информационных систем

Зеленов СергейАрхитектор информационных систем

Интеграция бизнес-решений с использованием

Microsoft BizTalk Server 2004

Page 2: Зеленов Сергей Архитектор информационных систем

Повестка:

• Описание проблем и задач интеграции

• Обзор продукта Microsoft BizTalk Server

• Роль Microsoft SQL Server в архитектуре

решения

Page 3: Зеленов Сергей Архитектор информационных систем

Проблемы интеграции

Page 4: Зеленов Сергей Архитектор информационных систем

Что такое интеграция бизнес-решений?

Автоматизация бизнес-процессов (BPM)Автоматизация бизнес-процессов (BPM)

Интеграция корпоративных приложений (EAI)Интеграция корпоративных приложений (EAI)

Business-to-Business

Цели интеграции: Надежность связей «Прозрачность» процессов Управляемость

Цели интеграции: Надежность связей «Прозрачность» процессов Управляемость

Page 5: Зеленов Сергей Архитектор информационных систем

Архитектура «точка-точка»

CRM System

Purchasing

SCM System

OrderEntry

Marketing

Financial Systems

Достоинства Производительность Более тесная

интеграция Легче во внедрении

(не всегда)

Недостатки Сложность управления Сложность изменения Изменения затрагивают

большое количество систем

Достоинства Производительность Более тесная

интеграция Легче во внедрении

(не всегда)

Недостатки Сложность управления Сложность изменения Изменения затрагивают

большое количество систем

ERP

Page 6: Зеленов Сергей Архитектор информационных систем

«Корпоративная шина данных»

CRM System

Purchasing

SCM System

OrderEntry

ERP

Financial Systems

Marketing

Шина

Достоинства Независимость отправителя и

получателя сообщения Преобразование документов Относительная простота

интеграции

Недостатки Требуется дополнительное ПО Более сложные механизмы

взаимодействия Требует наличия у приложения

универсального интерфейса

Достоинства Независимость отправителя и

получателя сообщения Преобразование документов Относительная простота

интеграции

Недостатки Требуется дополнительное ПО Более сложные механизмы

взаимодействия Требует наличия у приложения

универсального интерфейса

Page 7: Зеленов Сергей Архитектор информационных систем

Что такое BizTalk Server?

BizTalk Server BizTalk Server – это набор инструментов для – это набор инструментов для решения широкого круга задачрешения широкого круга задач::

Интеграция корпоративных Интеграция корпоративных приложенийприложений (EAI) (EAI)

Системы Системы Business to Business (B2B)Business to Business (B2B) Управление бизнес-процессамиУправление бизнес-процессами (BPM) (BPM)

Page 8: Зеленов Сергей Архитектор информационных систем

История развития

BizTalk Server 2000BizTalk Server 2000 BizTalk Server 2002BizTalk Server 2002 BizTalk Server 2004BizTalk Server 2004

Page 9: Зеленов Сергей Архитектор информационных систем

Компания БКомпания Б

Компания AКомпания A

BizTalk Server 2004 Обзор продукта

Internet

Internet

ПриложениеПриложение

ПриложениеПриложение

ПриложениеПриложение

ПриложениеПриложение

ПриложениеПриложение

BizTalk ServerBizTalk ServerBizTalk Server 2004 включает:

Обработчик сценариев Подсистему обмена сообщениями Средства интеграции с веб-сервисами Структуру бизнес-правил Систему единого входа (Single sign-on) Службу мониторинга и отладки Встроенные средства разработки

BizTalk Server 2004 включает: Обработчик сценариев Подсистему обмена сообщениями Средства интеграции с веб-сервисами Структуру бизнес-правил Систему единого входа (Single sign-on) Службу мониторинга и отладки Встроенные средства разработки

Page 10: Зеленов Сергей Архитектор информационных систем

Шина обменаданными

HTTPHTTP SMTPSMTP MSMQMSMQ АдаптерАдаптер Файл Файл Вебсервис

Вебсервис

XMLXML EDIEDI FlatFlat CustomCustom

HTTPHTTP SMTPSMTP MSMQMSMQ АдаптерАдаптер ФайлФайл Вебсервис

Вебсервис

БезопасностьБезопасность СопоставлениеСопоставление ОтслеживаниеОтслеживание

BusinessProcessБизнес-процесс

Получение информации

Анализ

Маршрутизация

Преобразование

Отправка информации

Зависимость отсодержимого

Зависимость отсодержимого

МеханизмПубликации/Подписки

МеханизмПубликации/Подписки

ДинамическаямаршрутизацияДинамическая

маршрутизация

Архитектура решения

Page 11: Зеленов Сергей Архитектор информационных систем

Как BizTalk обрабатывает сообщения

XML

Message Database

XML,Flat File

ReceiveAdapterReceiveAdapter

ReceivePipelineReceivePipeline

Receive Location1

Бизнес процесс

Mapping

Orchestration

<tag> <tag><tag> <tag>

XML 23

XML,Flat File

XML

SendPipelineSend

Pipeline

SendAdapterSend

Adapter

Send Port4

Page 12: Зеленов Сергей Архитектор информационных систем

Получение сообщений

Receive Location

XML orFlat file

Message Database

Для получения сообщений необходимо настроить источник (receive location)

Настройка и управление источниками производится системным администратором

Обработка входящих сообщений происходит в принимающем канале (pipeline)

Копии всех сообщений сохраняются в БД

Для получения сообщений необходимо настроить источник (receive location)

Настройка и управление источниками производится системным администратором

Обработка входящих сообщений происходит в принимающем канале (pipeline)

Копии всех сообщений сохраняются в БД

ReceiveAdapterReceiveAdapter

ReceivePipelineReceivePipeline

Page 13: Зеленов Сергей Архитектор информационных систем

Что такое адаптер?

CRM SystemCRM System

ERPERP

DatabaseDatabase

SCMSCM

MainframeMainframe

Financial SystemFinancial System

Адаптеры

Прикладные адаптеры Интеграция с бизнес-приложениями Используют API

Технологические адаптеры Интеграция приложений на уровне

платформы Для приложений, не имеющих программных

интерфейсов

Прикладные адаптеры Интеграция с бизнес-приложениями Используют API

Технологические адаптеры Интеграция приложений на уровне

платформы Для приложений, не имеющих программных

интерфейсов

Адаптеры Соединение целевых систем с шиной данных Быстрая интеграция «без строчки кода»

Адаптеры Соединение целевых систем с шиной данных Быстрая интеграция «без строчки кода»

Page 14: Зеленов Сергей Архитектор информационных систем

BizTalk Server 2004 – Встроенные адаптеры и поддерживаемые протоколы

АдаптерАдаптер ОписаниеОписание

EDIEDI Обмен сообщениями с системами, поддерживающими формат Обмен сообщениями с системами, поддерживающими формат

электронного обмена данными (электронного обмена данными (EDIEDI))

FileFile Передача сообщений с использованием Передача сообщений с использованием URI-URI-путипути

HTTPHTTP Прием/передача сообщений с использованием Прием/передача сообщений с использованием URLURLFTPFTP Обмен сообщениями с мейнфреймами и другими системамиОбмен сообщениями с мейнфреймами и другими системами

MSMQTMSMQT Передача сообщений при помощи транспорта Передача сообщений при помощи транспорта MSMQMSMQ Механизм гарантированной доставкиМеханизм гарантированной доставки

SMTPSMTP Передача сообщений по почтовому протоколуПередача сообщений по почтовому протоколу

SOAPSOAP Передача сообщений путем вызова методов веб-сервисовПередача сообщений путем вызова методов веб-сервисов

SQLSQL Прямой обмен данными с СУБД Прямой обмен данными с СУБД MS SQL ServerMS SQL Server

Page 15: Зеленов Сергей Архитектор информационных систем

Поддерживаемые типы схем данных

Тип схемыТип схемы ОписаниеОписание

XMLXML Поддерживаются «родные» типы Поддерживаются «родные» типы XMLXML--сообщенийсообщенийДля описания используется Для описания используется XSDXSD

Flat FileFlat File

Поддержка позиционных файлов и файлов с Поддержка позиционных файлов и файлов с разделителемразделителем

PropertyPropertyТип схемы для особых нуждТип схемы для особых нуждОпределяет поля схемы, публикуемые в базуОпределяет поля схемы, публикуемые в базуДоступ к опубликованным полям возможен Доступ к опубликованным полям возможен посредством различных компонентов посредством различных компонентов BizTalkBizTalk

NodeNode StructureStructure StartStart LengthLengthDescriptionDescriptionDelmitedDelmited 00 5050UnitPriceUnitPriceDelmitedDelmited 5050 1010QuantityQuantityDelmitedDelmited 6060 1010TotalPriceTotalPriceDelmitedDelmited 7070 1010ItemIDItemID DelmitedDelmited 8080 1010StatusStatus DelmitedDelmited 9999 11

ItemIDQtyUnitPrice

ItemDescriptionStatus

Date

ItemIDQtyUnitPrice

ItemDescriptionStatus

Date

PropertyStatusQty

Page 16: Зеленов Сергей Архитектор информационных систем

Преобразование данных

XSLTMap

XSLTMap

ItemIDQuantityUnitPrice

RecordPOStatus

OrderPO Number

DateQuantityItem No

Status

Итоговая схемаИсходная схема

Date

Карта преобразования в BizTalk: Описывает соответствие записей и полей

двух разных XML-схем Используется для преобразования и

нормализации данных Создается при помощи BizTalk Mapper Компилируется в файл XSLT

Карта преобразования в BizTalk: Описывает соответствие записей и полей

двух разных XML-схем Используется для преобразования и

нормализации данных Создается при помощи BizTalk Mapper Компилируется в файл XSLT

Page 17: Зеленов Сергей Архитектор информационных систем

XSLTMap

XSLTMap

Сложные преобразования

Выполнение вычислений и других операций над данными Данные из одного сообщения автоматически вставляются в

другое в процессе выполнения

Выполнение вычислений и других операций над данными Данные из одного сообщения автоматически вставляются в

другое в процессе выполнения

ItemID

UnitPrice

RecordPOStatus

OrderPO Number

DateTimeItem NoWeight

OrderStatus

Итоговая схемаИсходная схема

Date

Char to Numeric

Total AmtSum

+TimeQty

Page 18: Зеленов Сергей Архитектор информационных систем

Использование функтоидов

Функтоид – средство выполнения операций над Функтоид – средство выполнения операций над данными непосредственно в процессе данными непосредственно в процессе преобразованияпреобразования

Функтоид – средство выполнения операций над Функтоид – средство выполнения операций над данными непосредственно в процессе данными непосредственно в процессе преобразованияпреобразования

ItemID

Qty

UnitPrice

Record

PO

Status

Order

PO Number

Date

Item No

Quantity

Order Status

Итоговая схемаИсходная схема

Date Total Price

X

(..)

Более 70 встроенных функтоидов Добавление и изменение данных Изменения даты и времени Конкатенация значений полей Сложные преобразования

Собственные функтоиды Обеспечение специфических

функций Возможность использования

универсального функтоида скриптинга

Можно использовать Visual Basic, C#, Jscript или XSLT

Более 70 встроенных функтоидов Добавление и изменение данных Изменения даты и времени Конкатенация значений полей Сложные преобразования

Собственные функтоиды Обеспечение специфических

функций Возможность использования

универсального функтоида скриптинга

Можно использовать Visual Basic, C#, Jscript или XSLT

Functoids

Page 19: Зеленов Сергей Архитектор информационных систем

Перевод данных

ПереводПереводДвоичные данныеДвоичные данные

МетаданныеИмя поля, тип данных,

размер и т.д.

МетаданныеИмя поля, тип данных,

размер и т.д.

XMLXML

Ben, Smith, 4521,Sales<?XML version = “1.0”?><Employee><FName>Ben</FName><LName>Smith</LName><EmpNo>4521</EmpNo><Dept>Sales</Dept>

Сообщение в одном формате преобразуется в сообщение в другом Пример: двоичный файл переводится в формат XML Для перевода двоичного файла в XML необходимы метаданные

Сообщение в одном формате преобразуется в сообщение в другом Пример: двоичный файл переводится в формат XML Для перевода двоичного файла в XML необходимы метаданные

Page 20: Зеленов Сергей Архитектор информационных систем

Введение в сценарии BizTalk

Редактор сценариев (orchestrations)

Визуальная среда разработки Предоставляет набор

инструментов для моделирования бизнес-процессов

Модель бизнес-процесса может быть сохранена для последующей компиляции

Редактор сценариев (orchestrations)

Визуальная среда разработки Предоставляет набор

инструментов для моделирования бизнес-процессов

Модель бизнес-процесса может быть сохранена для последующей компиляции

Port Surface << >> Port Surface

Receive POReceivePOPort Operation_1 -> Request

Check Quantity

Denied Else

Denied Msg

Transform

SendDeniedPort Operation_1

<- Request

Send_ApproveSendApprvPort Operation_1

-> Request

Send_Denied

!

СохраненныйсценарийBizTalk Orchestration

Среда периода выполнения Выполняет модели бизнес-

процессов

BizTalk Orchestration Среда периода выполнения Выполняет модели бизнес-

процессов

Page 21: Зеленов Сергей Архитектор информационных систем

«Движок» Orchestration

Как работает среда BizTalk Orchestration

Создает экземпляры сценариев

Хранит данные о состоянии всех сценариев (в БД SQL)

Выполняет оптимизацию ресурсов

Обеспечивает надежность при выключении и вынужденном восстановлении информации

Создает экземпляры сценариев

Хранит данные о состоянии всех сценариев (в БД SQL)

Выполняет оптимизацию ресурсов

Обеспечивает надежность при выключении и вынужденном восстановлении информации

MessageBox

Dehydrate

Rehydrate

Page 22: Зеленов Сергей Архитектор информационных систем

Работа с редактором сценариевPort Surface << >> Port Surface

Поле редактирования

Поле редактирования

Поле размещения

портов

Поле размещения

портов

Поле размещения

портов

Поле размещения

портов

Receive_POReceivePOPort Operation_1 -> Request

CheckQuantity

Denied Else

Const_Denied

Transform_1 SendDeniedPort Operation_1 <- Request

Send_Approve SendApprvPort Operation_1 -> Request

Панель инструментов

Панель инструментов

Send_Denied

Page 23: Зеленов Сергей Архитектор информационных систем

Опрос и публикация веб-сервисов

Публикация схемы Предоставление удаленного доступа к

XML-схеме Выбор между схемами запроса и отклика Не привязана к сценарию

Публикация схемы Предоставление удаленного доступа к

XML-схеме Выбор между схемами запроса и отклика Не привязана к сценарию

Опрос веб-сервиса Веб-сервис может быть вызван напрямую

из сценария Для получения информации о сервисе

используется UDDI Только запрос, либо запрос-отклик

Опрос веб-сервиса Веб-сервис может быть вызван напрямую

из сценария Для получения информации о сервисе

используется UDDI Только запрос, либо запрос-отклик

Web Service

Сценарий

Публикация сценария Предоставление удаленного доступа к

бизнес-процессу Входящие порты представляются в виде

веб-методов Для публикации используется WSDL Доступен любому Web-клиенту

Публикация сценария Предоставление удаленного доступа к

бизнес-процессу Входящие порты представляются в виде

веб-методов Для публикации используется WSDL Доступен любому Web-клиенту

Web Service

Сценарий

Web Service

Схема

Page 24: Зеленов Сергей Архитектор информационных систем

Мониторинг приложений BizTalk

Действия Мониторинг сообщений

и служб Закрытие, остановка и

возобновление процессов

Отладчик сценариев

Настройка Выбор уровня

журналирования Изменение

представлений

Действия Мониторинг сообщений

и служб Закрытие, остановка и

возобновление процессов

Отладчик сценариев

Настройка Выбор уровня

журналирования Изменение

представлений

ОтладчиксценариевОтладчиксценариев

Health and Activity Tracking (HAT)Health and Activity Tracking (HAT)

Page 25: Зеленов Сергей Архитектор информационных систем

Отслеживание сообщений

Отслеживание запуска и остановки служб Отслеживание отправки и получения

сообщений Отслеживание прохождения сообщений через

каналы и сценарии Создание фильтров для ограничения

отображаемых результатов

Отслеживание запуска и остановки служб Отслеживание отправки и получения

сообщений Отслеживание прохождения сообщений через

каналы и сценарии Создание фильтров для ограничения

отображаемых результатов

Page 26: Зеленов Сергей Архитектор информационных систем

Подсистема Business Rules

Использование Business Rules

СценарийСценарийBusiness RulesEngine

Business RulesEngine

RulesRules

Rules

Business RulesComposer

Business RulesComposer

Подсистема Business Rules Связывает бизнес-политики со сложными бизнес-процессами Облегчает использование бизнес-правил в сценариях Обеспечивает динамическое обновление правил и политик Предоставляет графический интерфейс для обновления правил

Подсистема Business Rules Связывает бизнес-политики со сложными бизнес-процессами Облегчает использование бизнес-правил в сценариях Обеспечивает динамическое обновление правил и политик Предоставляет графический интерфейс для обновления правил

Rules

Page 27: Зеленов Сергей Архитектор информационных систем

Бизнес-правила (Business Rules)

Business Rules Условия, влияющие на ход выполнения бизнес-процессов Обеспечивают отделение правил от прикладной логики Дает бизнес-пользователям контроль над приложением

Преимущества Уменьшение времени разработки Быстрая реакция на изменения Возможность повторного использования Снижение стоимости разработки и владения

Business Rules Условия, влияющие на ход выполнения бизнес-процессов Обеспечивают отделение правил от прикладной логики Дает бизнес-пользователям контроль над приложением

Преимущества Уменьшение времени разработки Быстрая реакция на изменения Возможность повторного использования Снижение стоимости разработки и владения

Примеры бизнес-правил: Сегодняшняя ставка = 6.5% Размер скидки на этой

неделе - 20% Заказы на сумму свыше $250k должны отправляться в финансовый отдел для утверждения

RulesRulesRules

Business RulesEngineBusiness RulesEngine

RulesRulesRules

Business UserBusiness Process

Page 28: Зеленов Сергей Архитектор информационных систем

Описание бизнес-правил ПолитикиПолитики

СловариСловари

Редактор правил

Редактор правил

ОпределенияОпределения

Создание версий словарей

Создание определений

Создание политик Публикация

словарей и политик

Создание версий словарей

Создание определений

Создание политик Публикация

словарей и политик

Page 29: Зеленов Сергей Архитектор информационных систем

Host AHost A

Host CHost C

Host BHost B

Host AHost A

Что такое BizTalk Host?

BizTalk Host Логическое хранилище

объектов BizTalk Server Используется для

разграничения прав доступа

Может организовывать объекты по функциям

BizTalk Host Логическое хранилище

объектов BizTalk Server Используется для

разграничения прав доступа

Может организовывать объекты по функциям

Источник данных

Исходящий порт

Сценарий

Источник данных

Исходящий порт

СценарийФункцияФункция ОбъектОбъект

ПолучениеПолучение Источники Источники данныхданных

ОбработкаОбработка СценарииСценарии

ОтправкаОтправка Исходящие Исходящие портыпорты

Page 30: Зеленов Сергей Архитектор информационных систем

Масштабируемость решения

Сервер AСервер AСервер BСервер B

Сервер CСервер C

Сервер DСервер D

MessageBox

Host

Сценарии

F G

Host

E F

Сценарии

Host

АдаптерИсходящийканал

Host

АдаптерИсходящийканал

Host

Адаптер Входящийканал

Page 31: Зеленов Сергей Архитектор информационных систем

Масштабируемость решения

Сервер AСервер A Сервер BСервер B Сервер CСервер C

Сервер DСервер D

MessageBox

Host

Сценарии

F G

Host

E F

Сценарии

Host

АдаптерИсходящийканал

Host

АдаптерИсходящийканал

Host

Адаптер Входящийканал

Сервер HСервер H

MessageBox

Page 32: Зеленов Сергей Архитектор информационных систем

Средства обеспечения безопасностиФункцияФункция ИспользованиеИспользование

Инфраструктура Инфраструктура открытых ключей (открытых ключей (PKIPKI))

• Аутентификация и шифрование данных, Аутентификация и шифрование данных, передаваемых бизнес-партнерами друг другупередаваемых бизнес-партнерами друг другу

ЭЦПЭЦП• Верификация отправителя входящих сообщенийВерификация отправителя входящих сообщений• Верификация исходящих сообщенийВерификация исходящих сообщений

Шифрование с помощью Шифрование с помощью сертификатовсертификатов

• Расшифровка входящих сообщенийРасшифровка входящих сообщений• Шифрование исходящих сообщенийШифрование исходящих сообщений

S/MIMES/MIME• Расшифровка входящих сообщенийРасшифровка входящих сообщений• Шифрование исходящих сообщенийШифрование исходящих сообщений

Integrated logonIntegrated logon • Аутентификация пользователей Аутентификация пользователей WindowsWindowsKerberosKerberos • Аутентификация пользователей интранетАутентификация пользователей интранетSecured Sockets LayerSecured Sockets Layer • Безопасный обмен данными по протоколу Безопасный обмен данными по протоколу HTTPSHTTPS

Роли Роли SQL ServerSQL Server• Контроль доступаКонтроль доступа• Предоставление только необходимых привилегийПредоставление только необходимых привилегий

Хранилища сертификатов Хранилища сертификатов WindowsWindows

• Хранение открытых и закрытых ключей для каждого Хранение открытых и закрытых ключей для каждого из экземпляров из экземпляров BizTalk HostBizTalk Host

Page 33: Зеленов Сергей Архитектор информационных систем

Платформа Microsoft для автоматизациибизнес-процессов

Page 34: Зеленов Сергей Архитектор информационных систем

BizTalk Server 2004 EngineПримерсценария: EAI

OrchestrationOrchestration

Инвентарная система

ERP система

Запрос формы заказа

Запрос формы заказа

Получение формы заказа

Получение формы заказа Система

контроля поручений

Размещение заказа

Размещение заказа

2 3

4MessagingMessaging

Отправка заявки

Отправка заявки

1

Page 35: Зеленов Сергей Архитектор информационных систем

Поставщик A

Система контроля поставок

Поставщик B

ERP система

ЗакупщикСистема управления закупками

InternetInternet

Примерсценария: B2B

Page 36: Зеленов Сергей Архитектор информационных систем

Источники информацииИсточники информации http://www.microsoft.com/BizTalkhttp://www.microsoft.com/BizTalk BizTalk Server 200BizTalk Server 20044 Newsgroups Newsgroups and Blogs and Blogs

http://www.microsoft.com/BizTalk/community/newsgroupshttp://www.microsoft.com/BizTalk/community/newsgroups

BizTalk Server 2004 BizTalk Server 2004 CommunityCommunity http://www.microsoft.com/BizTalk/communityhttp://www.microsoft.com/BizTalk/community

Sites of InterestSites of Interest http://www.topxml.com/b2b/http://www.topxml.com/b2b/ http://http://www.gotdotnet.com/team/entserverswww.gotdotnet.com/team/entservers//

Page 37: Зеленов Сергей Архитектор информационных систем

Вопросы?Вопросы?

Page 38: Зеленов Сергей Архитектор информационных систем

Зеленов СергейАрхитектор информационных системE-mail: [email protected]

Интеграция бизнес-решений с использованием

Microsoft BizTalk Server 2004