Generische Daten-Service-Dienste mittels Web
Transcription
Generische Daten-Service-Dienste mittels Web
Generische Daten-Service-Dienste mittels Web-Services 110. DB-Stammtisch, HTW Dresden, 23.11.2005 Claus Jungmann Agenda 1. Ausgang und Ziel 2. Technologische Basis 3. Architektur 4. Beispiel Zentraler Stammdaten-Hub im Energiebereich News zum Thema Deriving Value from IT Will Hinge on Process-Driven Solutions Quelle: IT Business Edge: Integrating the Enterprise Issue 47, Vol. 2 • CRM Today: For the next 30 years, the primary value of IT systems will be derived by integrating the "cluttered diversity of applications" that already exists. But a purely technical approach to integration won't do. Rather, integration should be process-driven, so that it's related to real business problems. This means that business process management (BPM) and integration will become synonymous. One result: More and more vendors will attempt, either through marketing or via acquisitions, to plant a flag in the BPM market space. SOA, Merkmal einer neuen SW-Generation? • Heute noch 60 % der Software in COBOL programmiert? • Steigerung der SE-Produktivität bescheiden • Methoden des Reengineering bieten keine 100%Migration Ausweg: Kapselung der Altanwendungen und Realisierung von EAI mittels SOA: Integration mittels Web-Services und flexiblen BPM-Anwendungen Was ist neu an SOA • SOA: Architektur verteilter Systeme (Ende der 70er) • Kommunikationsstruktur - früher: RPC - heut: Web Services • Softwarestruktur - früher: fest verdrahtet - heut: basierend auf flexiblen Prozessmodell (BPM) • Problem - Wenig ausgeprägtes prozessorientiertes Denken - Paradigmenwechsel: von „Programmierung im Kleinen“ zu „Programmierung im Grossen“ Orchestrierung • Was ist nun SOA? Konzept für flexible service-orientierte Anwendungen auf der Basis von Standards: XML, SOAP, WSDL, UDDI, BPEL, … • Gibt eine Aussicht auf Erfolg? Ja, alle großen Software-Hersteller entwickeln gemeinsam Standards und implementieren sie EAI-Architektur Custom Legacy 1 Java App 1 Java App 2 Java App 3 New Package 1 SAP App 2 SAP App 1 Java App 4 Enterprise Nervous System SAP App 3 New Bolt-on Package 3 Packaged Legacy 2 ESB .NET App 1 .NET App 2 .NET App 3 New Package 2 Custom Legacy 2 Custom Legacy 3 Packaged Legacy 1 .NET App 4 Java App 5 Packaged Legacy 3 Techologische Basis + XML mittels Web-Service (deklarativ) + Verarbeitung z.B. mittels BPEL (deklarativ) - Der „Fach“-Adapter muß programmiert werden Genutzte Technologien • Framework eXForms – XML – JAVA • Web Services • Generisches Datenmodell • XML Datenbank für Hub Strenge Konsistenz und schwache Konsistenz • Strenge Konsistenz erfordert, dass sich alle Daten stets in einem konsistenten Zustand befinden. • Schwache Konsistenz erlaubt “nicht-aktuelle” Daten. • Latenz ist das Maß, wie lange die Daten brauchen, um konsistent zu werden. • In manchen Fällen ist das System nie konsistent, weil es immer Änderungen gibt, die noch nicht synchronisiert wurden. Quelle: Jürgen Bittner; 108. DB-Stammtisch: „Möglichkeiten zur Integration verschiedener Datenbanken und DB-Applikationen“ Agenda 1. Ausgang und Ziel 2. Technologische Basis 3. Architektur 4. Beispiel Zentraler Stammdaten-Hub im Energiebereich Idee • Initialisierung des Dienstes – – – – SSL Der Service muss autorisiert sein Initiale Konfiguration des Dienstes Dem generischen Datenservice wird propagiert: • eine Datenquellenbeschreibung (entities.xml) • Authentifizierung • Dienst wird registriert und bereitgestellt • Nutzung des Dienstes per Web Service • Verschlüsselte Übertragung Der generische Datenservice im Kontext mit SOA Integrate Orchestrate Develop Analyze Access Deploy Optimize Secure Genutzte Transportschichten transport layer kommerziell OpenSource J-EAI SQL GmBH TransConnect® WebService Hub-and-Spoke Topologie Design Time Modellierung der Integrationsszenarien zwischen den Anwendungen durch eine zentrale Repräsentation anstelle eines Punkt-zu-Punkt Ansatzes. Application View Common View Application View Transform XML App1 Spoke JMS AV CV Transform HUB XML Spoke App2 JMS CV AV Runtime Die Adapter kommunizieren mit einem Hub um Events an andere Adapter weiterzuleiten. Adapter sind zuständig für die Ausführung der Transformation. Design Time iStudio Metadaten XML App1 Adapter JMS Runtime AQ XML Adapter JMS App2 OracleAS InterConnect Schnelles Integrationsdesign & -verteilung Grafisches Design Tool “Common View” Metadata Transformation Adapter Content-driven Routing Publish/Subscribe Request/Reply (asynchron, synchron) • Erweiterbar / SDKs • • • • • • • Metadata App1 Adapter AQ Adapter XML XDK Application View Common View Application View App2 Eingesetzte Werkzeuge Design Applications Develop J2EE Apps Develop Business Processes Develop DBMS Schemas Profile, Debug, Optimize Deploy & Manage SOA auf Basis BPEL Optimize Design Routing Monitor QOS BPEL CEP Workflow Enterprise Service Bus WSDL WSIF JCA REST Rules Data Hubs – Operational Data Enterprise Service Bus Microsoft Siebel e-Bus Suite JD Edwards SAP ISV Apps Agenda 1. Ausgang und Ziel 2. Technologische Basis 3. Architektur 4. Beispiel Zentraler Stammdaten-Hub im Energiebereich Prämissen • projektunabhängige Zugriffsschicht • erweiterbaren Menge von physischen Datenquellentypen • Entkopplung von Geschäftslogik und Datenschicht • D.h. nicht mehr die Datenquellen, sondern die logische Zugriffsschicht wird angesprochen Architektur des Frameworks Einbindung beliebiger Datenquellen • • • • • Stored Procedures Web Services LDAP Flat Files Beliebige Datenbanken – db2 – Oracle (auch XML-DB) – sql-server, .. • Beliebige Datenmodelle – z.B. generische Datenmodelle Architektur der Zugriffsschicht Datenzugriff (entities.xml) Wesentliche Ergebnisse • Logische Namen für Datenquellen • Änderungen von physischen Namen werden nicht mehr im Code, sondern in der Zugriffsschicht vorgenommen • Daten aus mehreren Datenquellen werden zu einem logischen Geschäftsobjekt zusammengefasst • Filtern und Sortieren konfigurierbar (für alle Datenquellen, auch Web-Services) Agenda 1. Ausgang und Ziel 2. Technologische Basis 3. Architektur 4. Beispiel Zentraler Stammdaten-Hub im Energiebereich Integration in der Realität Kraftwerks Kraftwerkssteuerung steuerung ZZählerfernählerfernauslesung auslesung EDM EDM CRM CRM Prognose Prognose Ger ätedatenGerätedatenbank bank Product Product Management Management Portal Portal B2B B2B––B2C B2C Billing Billing Problemstellung im Energiemarkteinsatz • Hohe Anzahl von miteinander kommunizierenden Systemen • Reengineering von Schnittstellen • Große Datenmengen müssen kurzfristig bewältigt werden • Regulatory Compliance (Unbundling) • Stammdaten besitzen Abweichungen Ziele der Stammdatendrehscheibe • Logische Verknüpfung inhaltlich gleicher aber unterschiedlich formatierter Stammdaten aus verschiedenen Datenhaltungssystemen • Propagierung eingefügter und geänderter Stammdatensätze vom Daten-Master zu angeschlossenen Systemen • Individuelle Verhinderung der Propagierung von Stammdatensätzen durch zu Slave-Systemen • → Erhöhung der Datenkonsistenz im Gesamtsystem → Verbesserung der Zuordnung von Daten Derzeitige ecount-Lösung Format 1 Format 2 e~count-DB Konverter Format n e~count XMLZwischenformat SpezialDatenformat ecount-Import XML Struktur: Element STAMMDATEN Der Weg zur Anwendungsintegration: Geschäftsprozesse Process Input Business Process Analysis EAI/ Technical Rules EAI/ Technical Rules Business Rules Runtime Engine Integration Broker App. 1 Quelle: nach Gartner Output App. 2 App. 3 Der Weg zur Anwendungsintegration: Entwicklungsmethodik Adapt Business Processes to Market Dynamics Take Decisions with Better Quality Information Build Modular, Flexible Business Applications Consolidate Information to Unified Data Model Technology Requirements Share Information & Collaborate Productively Lower Cost, Better Ownership Experience Secure Information & Applications for Compliance Quelle: nach Oracle Der Ausgangspunkt • Schnittstellen meist auf Datenbankbasis • Skalierbarkeit ist nur aufwendig realisierbar • Kein systemübergreifendes Monitoring • Aufwendige und zu pflegende APIs • Nahezu 100% sind zu kodieren • Geringe Änderungen verursachen hohe Kosten Das Ziel • XML zum Austausch der Daten • Einfache und bei Bedarf unkomplizierte Skalierbarkeit • Systemübergreifendes Monitoring • Einfache Änderungen sollen deklarativ vorgenommen werden können • Der Kernprozeß bleibt im Unternehmen • Teilprozesse beim Dienstleister XML getrieben Frei wählbare Transportschicht für den Datenaustausch • Propagierungsregeln koordinieren den Datenaustausch Konfigurierbares Regelwerk • Beschreibung der Plausibilisierung Dynamische Prüfung gegen Systeme - Statische Prüfungen - • Transformation - Systemspezifische Transformation von Daten Generisches Datenmodell auf Basis XML-DB Schematischer Aufbau (Variante 1) Transportschicht Transformationsschicht - Hub XML-Stammdatensatz Validierung … … … Stammdatensatz Data Hub … Transformation Propagierungssequenz Meta (Master) Transf. XMLStammdatensatz 1 Transf. XMLStammdatensatz n Regelwerk Meta (Slave1) … Meta (Slave n) Prozeß: Stammdatenanlage eines Kunden Stammdaten-Hub EDM EDM Web service • Stammdatenpool ZFA ZFA Web service Web service CRM CRM Web service Billing Billing W W Back End Application Web service S •Vertragspartner W •Verträge S •Spez. Fachdaten Back End Application Transportschicht (TransConnect, BPEL Process Manager, …) S Web service W S Systemintegration Billing XML … EDM transport layer Prozesse, Ereignisse • Regeln •Vertragspartner •Verträge •… XML rule based data hub Melde-Tool • Stammdatenpool Teilprozesse Transformationen Cleansing Objekte CRM XML XML SOA – Orchestrierung mit BPEL EAI - Der TransConnect Server TransConnect® Server Format Engine Routing Mapping Transport Transaction Management Metadata Repository TransConnect Manager Persistence Online Überwachungstools Zentrale Konfiguration aller Parameter SAP I-SU/CRMFachdatenmodell Kaufmännische Stammdaten ServiceServiceanbieter anbieter Netz Netz ServiceServiceanbieter anbieter Vertrieb Vertrieb VertragsVertragsKonto Konto ISUACCOUNT ISUSERPROV ISUSERPROV Vertrag Vertrag Netz Netz Folie 52 EXTERN VerbrauchsVerbrauchsstelle stelle INSTLN GeräteGeräteinfosatz infosatz Technische Stammdaten 25. Mai 2005 Anlage Anlage Vertrieb Vertrieb INSTLN ISUPOD Regionalstruktur ug z n Ei MOVEINDOC Anlage Anlage Netz Netz ZählZählpunkt punkt BORBOR-Objekt ISUCONTRCT ug z Ein MOVEINDOC ISUGRID Anlegen Mutieren ISUPARTNER Vertrag Vertrag Vertrieb Vertrieb ISUCONTRCT Netz Netz GeschäftsGeschäftspartner partner BOREvents für EDM: DEVICE PREMISES GeräteGeräteplatz platz DEVLOC AnschlussAnschlussobjekt objekt CONNOBJ Bsp.: SAP / EDM-Kopplung ISU_UTILMD ZT: utilmd_to_ecount.xslt (DB-Status = 18) ALEAUD (1) Status=53 ZT: msg_received_2_sap.xslt ALEAUD Status=18 Verarbeiten von UTILMDNachrichten IDOC in VDIS (3) ZT: set_idoc_finished.xslt ET: get_error_from_db.xslt ALEAUD (Status in DOC auf '12' setzen) VDIS alle 60s überprüfen Job: getUtilmdDocument (4) (get_utilmd_doc.xml) (Sätze in DOC auf Status 53 prüfen) Fehlerfrei? set_status_doc_to_done.xslt (Status in DOC auf '12' setzen) nein ja Ablegen der Nachricht als FAILED Ablegen der Nachricht als EXECUTED ALEAUD ALEAUD ZT: vdis_msg_to_sap.xslt ALEAUD Status=68 ZT: vdis_msg_to_sap.xslt ALEAUD Status=53 ISU_UTILMD (5) (1) Automatische Empfangsbestätigung von TransConnect (2) Sämtliche Prozeduren werden in ec_drewag.pkg_prozesse_sap ausgeführt (3) Prozess wird separat erklärt (4) entspricht Jobbeschreibung GetIDoc (5) Nachricht enthält ResultSet der DB-Abfrage, muss aber als UTILMD in die Queue gestellt werden; Zieltransformation erzeugt dann IDoc-Struktur ZT: rebuild_utilmd.xslt ET: set_msg_executed.xslt ISU_UTILMD Ablegen der Nachricht als EXECUTED ALEAUD 12 = Versand OK 18 = IDoc von TransConnect empfangen 22 = Versand erfolgt, Bestätigung steht aus 53 = in SAP: IDoc erfolgreich verarbeitet in VDIS: IDoc versandbereit Resultat: Zentraler Stammdaten Hub Langfristig saubere Stammdaten in allen angebundenen Systemen Abweichungen zwischen den Stammdaten der einzelnen Systeme können sofort erkannt werden Vereinfachte Fehlersuche bei systemübergreifenden Stammdaten Integriertes systemübergreifendes Stammdaten-Cleansing Identifikation der jeweils führenden Systeme Änderungen in einem System werden regelbasiert zu anderen propagiert Datenbasis ist Grundlage für neue (globale) Data Warehouse-Anwendungen Vielen Dank für Ihr Interesse Claus Jungmann (Dipl.-Inf.) Leiter Consulting Industrie E-Mail: claus.jungmann@robotron.de GSM: +49 172 7947004 Robotron Datenbank-Software GmbH Tel.: +49 351 4021630 Stuttgarter Str.29 Fax.: +49 351 4021699 D-01189 Dresden www.robotron.de