Integrace aplikací Nabízejte nové služby nad vašimi
stávajícími systémy
Michal Bureš, Jan Ulrych 11. 05. 2016
2
Agenda
› Představení
› Platformy pro aplikační integraci Profinit ESB a API gateway
› Integrační governance a katalog služeb
› Datová cache
› Datová integrace v nástrojích Informatica
› Závěr, diskuse
Jan Ulrych Senior Consultant Enterprise Integration
Michal Bureš Senior Advisor Enterprise Integration
3
Kdo jsme
17 let na trhu od
roku 1998
400 mil obrat za rok
2015
50+ významných
zákazníků v 5
zemích
300+ zkušených
profesionálů
Top 5 oblast SaS v ČR
(Studie IDC)
Praha sídlo
společnosti
4
Naše portfolio
VÝVOJ
SOFTWARE
NA ZAKÁZKU
APPLICATION
MANAGEMENT
OUTSOURCING
MARKETING
AUTOMATION
BIG DATA
& ANALYTICS
APLIKAČNÍ A
DATOVÁ
INTEGRACE
CORPORATE
PERFORMANCE
MANAGEMENT
BI
& DWH
5
Snížíme náklady na integraci vašich aplikací a propojíme
klíčové systémy mezi sebou tak, aby spolupracovaly jako
jeden harmonický celek. Tým našich integračních specialistů
se o to postará.
Aplikační a datová integrace
Co nabízíme?
› Analýzu a návrh optimální integrační architektury
› Komplexní dodávku integračních řešení od A do Z
› Návrh a zavedení SOA Governance
› Implementaci předních integračních platforem
› Outsourcing specialistů a celých týmů
Proč Profinit?
› Dlouholeté zkušenosti a znalosti našich konzultantů
› Kvalitní a efektivní řešení s nízkými náklady
› Vyvážený poměr mezi cenou, výkonem, časem
› Vlastní nástroje pro efektivnější údržbu a rozvoj
Vybrané reference
› Implementace moderní ESB platformy
ČSOB Leasing, Sazka
› Implementace ETL platformy Informatica
Telefonica O2, Česká spořitelna
› Audit middleware technologií
Česká spořitelna
› Integrační specialisté
Komerční banka, Equa bank
Integrační platformy Profinit ESB, API Gateway
1
7
Integrační architektury
Přímá integrace
Architektura
orientovaná na služby
Enterprise
Service
Bus
Point to Point Governance
8
Proč SOA a ESB?
› IT pohled – architektura
– Lepší architektura systémů
– Zajištění dostupnosti, rozložení výkonových špiček
– Vrstva služeb pro BPM
– Správa závislostí, dopadové analýzy, verzování služeb
› IT pohled – provoz
– Vyhodnocení dostupnosti služeb, měření SLA
– Identifikace a řešení provozních problémů
› Strategické cíle
– Transparentnost prostředí, vidíme do architektury i do dat mezi systémy
– Integrace drží velkou část know-how o architektuře podniku
– Jasné mantinely zodpovědnosti mezi dodavateli
– Audit, compliance, bezpečnost
– Flexibilita, náklady na integraci a TTM
Service Oriented Architecture = Koncept architektury IT podniku
Enterprise Service Bus = Infrastrukturní komponenta, sběrnice služeb
9
Postup zavádění SOA a ESB
› Najděte sponzora
– Přesvědčit management
› Koncept integrace a SOA
– Analýza současného stavu
– Definice cílů v čase, návrh cílové architektury
› Výběr technologické platformy a dodavatele
– Doporučujeme provedení PoC
› Nastavení rolí a procesů
– SOA governance, katalog služeb, metodika, zodpovědnost
› Pilotní nasazení ESB
– Spojte pilotní nasazení s vhodným projektem
› Ostrý provoz a další rozvoj
Rozhodnutí Koncept Platforma Governance Pilot Provoz
10
Integrační architektura podniku
Datová integrace - ETL
BI
DWH
Aplikační integrace - ESB
AP
I / Clo
ud
/ B2B
/ IoT
/ M2M
Gate
way
oCRM Billing
Portál eShop
Data
cache
ODS MDM / DQ
BPM
Go
vern
an
ce
Kata
log
slu
žeb
Mo
bile
P
artn
ers
D
evic
es
Data services
App3
11
Funkce platformy ESB
› Očekávané funkce ESB
– Transformace a mapování dat, konverze komunikačních protokolů
– Směrování správ, frontování požadavků
– Validace dat
– Zabezpečení: autentizace, autorizace, audit, šifrování, nepopiratelnost
– Orchestrace služeb, kompozitní služby
– Garantované doručení zpráv
– Omezení provozu, zajištění kvality služeb
– Monitorování, kontrola SLA, logování, audit
– Vysoká dostupnost
– Správa služeb, politik a koncových bodů, SOA governance
– Cachování dat
› ESB naopak není
– Aplikační kontejner pro obchodní logiku
– Pouze pro webové služby
12
Platforma Talend ESB
› Komponenty Talend ESB
– Aplikační kontejner Apache Karaf
– Webové služby Apache CXF
– ActiveMQ pro zpracování asynchronních zpráv
– Apache Camel pro jednoduché routování zpráv
– Run-time engine pro orchestraci služeb s grafickým návrhem
– Pokročilé možnosti práce s daty a XML, konverze datových formátů
– Rozsáhlá knihovna komponent a adaptérů
› Dostupná v několika edicích – Talend Open Studio – open-source bez licenčních poplatků
• Vhodná pro menší či prvotní nasazení s nízkými náklady
– Talend ESB Enterprise – roční předplatné
• Technická podpora, pokročilá administrace, správa přístupů, týmový vývoj
– Talend Platform for Enterprise Integration – roční předplatné
• Navíc modul BPM a BRMS, vylepšený data mapper, vyšší SLA
Vývoj
bez
kódování
13
Ukázka grafického vývoje služeb v Talend ESB
Přehledné
grafické
vývojové
prostředí
14
Ukázka orchestrace služeb v Talend
› Kompozitní webová služba na ESB
› ETL přenos a look-up do mapovací tabulky
15
Ucelený pohled na komunikaci mezi systémy
› Nasazení ESB zjednodušuje řešení provozních incidentů
– Všechny zprávy související s jedním případem lze dohledat pomocí metadat
› Možnost využití pro audit nebo detekci událostí v reálném čase
– Požadavky bezpečnosti, compliance, anti-fraud systém
› Udržení know-how o celkové architektuře systémů
validateOrder ORDER_123
sendOrder ORDER_123
bookStock ORDER_123
sendConfirmation ORDER_123
processingERROR ORDER_123
Katalog
služeb
16
Ucelený pohled na komunikaci mezi systémy
17
Integrační vzory pro on-line integraci
› Synchronní integrace
– Web Service Proxy
• Vystavené WSDL musí odpovídat konvencím již na back-endovém systému
• Nízká komplexita, i tak je zajištěna transparentnost, rozložení zátěže, monitoring, validace, …
– Web Service Facade
• Umožňuje mapování hodnot, volání DB procedury atp.
• Varianta: možnost re-try požadavků
• Vyšší komplexita, ale nezávislost na back-endu
– Composite Service
• Přenos části procesní logiky na integrační vrstvu – orchestrace
• Vysoká komplexita
› Asynchronní integrace
– Publish Event
• Notifikace jednomu nebo více systémům, často spojeno s nějakým synchronním vzorem
• Nízká až střední komplexita, ale maximální míra nezávislosti (provozní, designová)
– Fire & Forget
• Odešle požadavek do cílového systému, ale nečeká na odpověď
• Nízká až střední komplexita
18
Jak zlepšit výkon či spolehlivost integrace
› Fire-Forget nebo Web Service Retry
– Konzument zprávy zašle požadavek a očekává / spoléhá se, že bude
zpracován
– Vysoká provozní nezávislost
– Nízká až střední komplexita
– Možnost zaslání odpovědi asynchronním kanálem
Portál Back-end WS Proxy
19
Jak rozšířit funkcionalitu stávajících systémů
› Publish Event
– Notifikace jednomu nebo více systémům
– Maximální míra nezávislosti (provozní, designová)
– Nízká až střední komplexita
– Nutná podpora ze strany aplikace
› Puslish Event on Success
– Notifikace jednomu nebo více
systémům, pokud se podaří
volání služby
– Velká míra nezávislosti
(provozní, designová)
– Nízká až střední komplexita
– Není nutná podpora ze
strany aplikace
Portál
ESB
WS
Proxy
Subscriber
Topic
App 1 App 2
20
ESB vs. API Gateway
› Enterprise Service Bus
– Interní podniková sběrnice služeb
• Mapování dat
• Adaptéry do běžných IS
• Transformace protokolů
• Asynchronní zpracování požadavků
• Auditní log
– Datové služby
› API Gateway
– Lite brána pro RESTful služby do internetu
– Autentizace, autorizace, identity management
– Bezpečnost, obrana proti útokům
– Developer portál, auto-provisioning, analytika využití API
› Další druhy
– B2B gateway
– Cloud gateway
– M2M gateway, IoT gateway
21
Bezpečnost API Gateway
› Autentizace a autorizace
– Základní autentizace aplikace pomocí API Key
– Autentizace uživatelů a aplikací pomocí OAuth
a SAML
– Klientský certifikát
– Podepisování požadavků pomocí HMAC
› Ochrana proti útokům
– Kvóty pro API klíč, pro IP adresu
– Ochrana proti XML / JSON útokům
– Striktní kontrola vkládaného obsahu
– Ochrana na síťové vrstvě
› Chráněné úložiště
– Ukládejte citlivá data na serveru,
ne na koncovém zařízení
Integrační governance
2
23
Posouzení stavu SOA podle OSIMM
24
Nastavení rolí a procesů
› Identifikovat dopad na jednotlivé systémy – tým architektury
› Identifikovat integrační body – architektura & dodavatelé systémů
Koncept
architektury
› Identifikovat služby a datové toky, nahrubo datová pole, vedoucí dodavatel
› Funkční a nefunkční požadavky na rozhraní, integrační vzor
High-level
design
› Vytvořit schémata, WSDL, detailní sekvence volání, mapování dat
› Bezpečnostní pravidla, přístupy, objemy dat v čase, …
Detailed
Design
› Kódování, build systémů
› Testování systému s využitím mock objektů (ideálně omezit na minimum)
Build &
System Test
› Propojit systémy, udělat smoke test – integrační tým
› Vývojáři systémů testují kompletní scénáře (připravit check-list › reporting)
Pre-
integration
› Testování dle připravených scénářů
› Provádí testeři
End2End
Integrace
25
Nastavení rolí a procesů – příklady
› High-level design komplexní služby
› High-level design proxy služby
26
Nastavení rolí a procesů – příklady
› High-level design
– Poskytovatel a konzument služby, taxonomie, zodpovědnost, kontakty
– Popsat jednotlivé operace a integrační flows, sekvence volání, integrační vzor
– Datová pole, jejich významy
– Způsob ošetření chyb
– Zabezpečení, označit citlivá API nebo data
– Jaký je objem dat, rozložený zátěže v čase
› Detailed Design
– Datové typy všech polí, schémata, WSDL, XSD, formáty souborů
– Validační pravidla, reg-ex, min/max values, enumerace
– Přesné mapování dat, podmínky, pre-conditions, post-conditions
– Uživatelské účty, způsob autentizace, síla šifrování
– Chybové kódy
– Časování datových přenosů
– Vstupy pro testování
27
Modelování a evidence služeb
MODEL • High-level modely
• Detailní funkční popis
EVIDENCE • Celkový pohled
• Životní cyklus
• Vazba na ITSM
• Využití a výkon
• Incidenty
• Skutečný provozní stav PROVOZ
NÁSTROJ METODIKA
28
Modelování služeb
› Naše metodika
– Postavená na otevřených standardech a produktu Enterprise Architect
› Komponentní diagram
– Solution overview
– Přehled systémů, služeb a jejich vazeb
› Sekvenční diagram
– Popis fungování konkrétní služby
29
Evidence a modelování služeb
Excel je výborný pomocník, ale chybí mu workflow a vazby
30
Katalog služeb
› Informace o službách, systémech, procesech, datových přenosech
– Identifikace, jméno, popř. namespace
– Rozhraní služby, popis operací a datových struktur
– Popis, dokumentace, komentáře
• Přílohy MS Office, WSDL, XSD, Enterprise Architect, PDF
– Taxonomie, klasifikace
• Funkční – dle referenčního modelu
• BIAN (banky), ACORD (pojišťovny)
• CID/eTOM (telco)
• Common data model
• Bezpečnostní klasifikace
• Integrační vzor
• Dle dostupnosti nebo doby odezvy
– Konzumenti, závislosti, přístupy
• jiné služby, backendy, DB, …
– Verze, životní cyklus
• Planned, Designed, …
• Verze na jednotlivých prostředích
– Vlastník služby, kontakty
31
Katalog služeb
› Životní cyklus
– Při změně stavu lze provádět kontroly nebo schvalování, spustit workflow
– O změně stavu jsou informování uživatelé
– Plánování nových služeb, nových verzí, plánování ukončení služeb
› Vazba na další oblasti IT service management
– Správa požadavků, projekty, change requests
– Incidenty a řešení
– Configuration management, ITIL
› Hledání, reporty, dopadová analýza
– Vyhledávání služeb podle kritérií
– Dopadová analýza podle vazeb
– Reporting využití, re-use, nákladů
› Provozní informace
– Metriky, chyby, incidenty
– URL
› Řízení přístupů
32
Nejčastější nedostatky existujících řešení
› Čistě technický katalog pro integrační oddělení
– Řada nástrojů dodávaná přímo s middlewares
– Nevyužívá se napříč firmou – zbytek IT, business analytici
• Složitost, neochota používat
• Proprietární systém, licence
– Chybějící front-end pro business uživatele
– Nejrychlejší cesta k neúspěchu
› Chybějící napojení na návrh a vývoj služeb
nebo na životní cyklus
– Ruční aktualizace neprobíhají správně
nebo vůbec
– Katalog se časem „zanáší“
› Cena, podpora a údržba
– Roční náklady ve statisících Kč
– Speciální řešení na samostatných serverech
– Zálohování, údržba…
Lidé
Nástroje
Procesy
33
Základní datový model Service Repository
Datový model je snadno rozšiřitelný i customizovatelný!
Enterprise Architect
› Funkční model služeb
› Společný datový model
› Modely řešení projektů
Atlassian JIRA
› Evidence služeb a vazeb
› Životní cyklus a workflow
› Service management
Atlassian Confluence
› Přístup pro všechny uživatele
› Úložiště dokumentace
› Vyhledávání
Provozní platformy
› On-line middleware
› Batch
Náš koncept Service Repository
35
Náš koncept Service Repository
– Datové entity (služby, operace, sys.)
• Různé typy entit - různé typy issues
• Vlastní pole
– Životní cyklus
• Workflow, schvalování
• Stavy, historie
• Notifikace, subskripce
– Vazby
• Různé typy linků
– Dokumentace
• Přílohy, odkazy na disky, intranet
– Vyhledávání, dopadové analýzy
• Simple/advance vyhledávání
• Dashboardy, reporty
– Řízení přístupů
– Přehledné GUI pro všechny
uživatele
• Export dat formou reportů
• Dashboardy – strukturovaná
data a reporty
• Wiki
1
2
3
4
5
6
Vazba na aplikaci přes link „relates to“
Operace založené jako sub-tasky
Záznam služby 1
3
4 3
4
2
Reporty a Dashboardy 5
Links Explorer
Datová cache
3
40
Stavíme moderní front-end
CRM Planning
Datová cache
ERP Product
Management
Content
Management
Inventory Marketing Network data
41
Datová cache
Database
system
Datová cache
Web
Content
Management
Inventory
CRM
Marketing
Sociální sítě
EDW
MDM
Data Services
Operation reporting
42
Datová cache
Datová
cache
Enterprise Data Hub
Data Integration Hub
43
Pros & Cons
› Přínosy
– Připravenost pro vytvoření nových kanálů a služeb
– Podpora operačního rozhodování
– Snížení ceny pro uchování archivních dat
– Podpora real-time business procesů
– Decoupling – oddělení zdroje a cíle
– Omezení zátěže primárních systémů
› Rizika
– Přímý přístup k více sytémům stále existuje
– Více paralelních data caches
– Data používaná pouze jednou aplikací
– Datové objemy
44
Co vzít v úvahu?
› Real-time
– Zajištění specifických business požadavků
(Fraud detection/prevention, on-line marketing,
on-line banking…)
– Potřeba real-time nástrojů
› In-memory computing
– Operativní rozhodnování nad velkým množstvím dat
– Omezená perzistence při výpadku (Cena)
› Big data
– Levné uložiště (archivace a historizace dat)
– Náklady na adopci technologie
45
Profinit Data Cache Framework
› Architektura
› Governance
› Lifecycle management
› Metadaty řízený přístup
› Perzistence
› Naváznost na datovou a aplikační integraci
› Zkušenosti s real-time a mission critical nasazením
– Česká spořitelna, Letiště Praha
46
Informatica Data Integration Hub
› Out-of-the-box řešení publish/subscibe datové integrace
› Slouží integrační bod pro jednotný přístup k datům
› Historizace dat, automatické doručení, self-service
Data Integration Hub
Data Management
Interaction Management
Monitoring and Control
Persistency
47
Informatica Data Integration Hub
Integrační platformy Informatica Express, Informatica Cloud
4
49
Menší projekt …
… jednorázový požadavek nebo POC?
› Informatica Express
– Odlehčená verze standardní Informaticy
– Datové transformace
– Vestavěný Data Profiling
– Nainstalováno za 10 minut
– Možný přímý přechod na plnou verzi Informatica nebo
Informatica Big Data Edition
– Základní verze zdarma
50
Informatica Express
51
PowerCenter Express Editions
Personal Professional
Data Integration Design and Development ● ●
Data Profiling Limited Profiling Limited Profiling
Number of Users 1 1-5 Users/Server
Shared Repository - ●
Number of Rows 250K/Day Unlimited
Simultaneous Jobs 1 1
Connectivity
Basic, (Relational,
FF, XML,
Unstructured,
Social Media)
Basic, (Relational,
FF, XML,
Unstructured,
Social Media)
Central Management and Monitoring ● ●
Obavy z Cloudu
1. Bezpečnost
2. Dostupnost
3. Hacked interfaces and APIs
4. Account hijacking
5. Ztráta dat
53
Informatica Cloud Portfolio
Cleanse and
De-Dupe
Visualize
Relationships
Improve User
Experience
Leverage
Existing Systems
Secure
Sandbox
Data
Quality MDM
Process
Automation Cloud
Integration
Test Data
Mgmt
54
Informatica Cloud Architecture
Secure
Agent
Enterprise Firewall
› Customer accounts
› Contacts
› Custom objects
55
Informatica Cloud Designer
Cloud Mapping
56
Integrace jednoduše pro všechny
Technický/IT uživatel – pokročilá drag&drop integrace
Business uživatel – jednoduchá integrace přes průvodce
› Vývojář
› Architekt
› Business
analytik
Konfigurace
spuštění
57
Výhody
1. Self-service
2. Agilní přístup, možnost rychlého testování
3. Sdílení, kooperace
4. Hybridní model
5. Nizké vstupní náklady
www.informaticacloud.com
Vyzkoušejte 30 denní demo na:
58
Diskuze
Profinit, s.r.o.
Tychonova 2, 160 00 Praha 6
Telefon
+ 420 224 316 016
Web
www.profinit.eu
linkedin.com/company/profinit
twitter.com/Profinit_EU
Děkujeme
za pozornost