Anforderungen an Datenbankservices in SOA-basierten Lösungen Liane Will SAP AG/ Otto-von-Güricke-Universität Magdeburg 6.5.2010 Diplom-Mathematikerin Seit 1997 bei SAP AG Berlin im Active Global Support Best Practices im SAP Systembetrieb auf Basis Solution Manager Veröffentlichungen bei Galileo Press ‚SAP NetWeaver System Administraion Web AS ABAP‘, ‚APO System Administration‘, ‚ IT Service & Application Management‘, ‚Cobit und der Sarbanes-Oxley Act‘ Seit 2009 Doktorand an der Otto-von-Güricke-Universität zu Magdeburg bei Prof. Saake Thema ‚Ein Modell zum zentralen Betrieb von hoch flexiblen SOA-Lösungen auf Basis definierter Standards‘ Grundbaustein von SOA: Service „Unter einer SOA versteht man eine Systemarchitektur, die vielfältige, verschiedene und eventuell inkompatible Methoden oder Applikationen als wieder verwendbare und offen zugreifbare Dienste repräsentiert und dadurch ein plattform- und sprachenunabhängige Nutzung und Wiederverwertung ermöglicht.“ Melzer, Ingo u.a.(2007): Service-orientierte Architekturen mit Web Services. „A Service-Oriented Architecture (SOA) is a software architecture that is based on the key concepts of an application frontend, service, service repository, and service bus. A service consists of a contract, one or more interfaces, and an implementation.” Krafzig, D.; Banke, K.; Slama, D. (2005): Enterprise SOA.- Service Oriented Architecture Best Practices. Verschiedene Definitionen aber allgemeiner Konsenz: Wiederverwendbarkeit, freie Verfügbarkeit, Austauschbarkeit der Services Verschiedene zwingend erforderliche Bestandteile Behauptung: Für den Betrieb solcher Lösungen ist ein zentrales Managementcockpit inkl. Datenmanagement erforderlich. Service muss zusätzlich zwingend nicht-funktionale Merkmale zum Zweck der Lösungsbetreibbarkeit aufweisen. Architektur Client-Server-Schichten GUI (SAPGUI, Browser) SOA Schichten Unternehmensschicht Prozessschicht Applikations Server (Middleware) Zwischenschicht Datenbank Server (Host) Ausführungsschicht Prozesssicht: Verkaufsorder (ARIS-Darstellung) Architektur SOA Schichten Unternehmensschicht Benutzerinterfaces Prozessschicht Services der Prozesse Zwischenschicht Technische Unterstützung von Service, wie z.B. Enterprise Service Bus, Service Repository, Managementcockpit Ausführungsschicht z.B. Datenbankservices Mapping auf technische Systeme Proprietäres System Anlegen der verkaufsorder ERP System Planungssystem Duplizierung der der Verkaufsorder Globaler Verfügbarkeitscheck Anlegen des Lieferauftrags Bestellung verfügbar Generierung der Entnahmeliste Drucksystem Senden/Drucken der Lieferdokumente Versendung der Ware Erzeugung der Faktura Senden/Druck der Rechnung Benutzer RFID Mobile Geräte Webbrowser Rendering Microsoft Office Datenbank Services Datenbank Datenbank Datenbank Datenbank Datenbank Systembetrieb vs. Lösungsbetrieb hinsichtlich Datenbankmanagement Client-Server Architektur Systemadministration/Datenbankadministration SOA Lösungsadministration datenbankspezifische administrative Werkzeuge Standardisierte zentrale Werkzeuge zum lösungsorientierten Betrieb datenbankspezifische Aktionen und Bedingungen Standardisierte Aktionen, die auf datenbankspezifische Aktionen gemappt werden datenbankspezifisches Wissen und Erfahrungen sind erforderlich, um erstes und zweites einzusetzen und erfüllen zu können Kenntnis des Standards und der Datenbankadministration erlaubt lösungsorientierten Betrieb weitestgehend ohne Kenntnis der Datenbankspezifika Datenmanagement Client-Server Architektur SOA Messung der Datenmengengröße in Definition von service-übergreifenden Prozessobjekten technischen Objekten- Datenbank, Tabelle, Index Messung der Datenmengengröße in Bezug auf diese Prozessobjekte unabhängig von der Export oder Import von Daten in konkreten technischen Realisierung des technischen Objekten Database Service Archivierung und Löschung von Export oder Import aller Daten, die zu einem Daten aus DatenbankProzessobjekt gehören, beispielsweise wenn tabellenorientiert ein Database Service ausgetauscht werden soll oder für Recovery-Zwecke Archivierung bzw. Löschung von Prozessobjekten (Datenbankübergreifend!) unter Verwendung von Database Services Monitoring des Datenbankservice Client-Server Architektur Überwachung von technischen Kennzahlen je Datenbankmanagementsystem, wie CPU, I/O, Memory, Disks, Operating System Durschnittliche Antwortzeiten Langlaufende (SQL)-Kommandos SOA Zusätzlich: Überwachung der Hardwarelast je Service, wie CPU, I/O, Memory, Disks, Operating System Antwortzeiten je Service Langläufer je Service -> Mapping zwischen Ressourcenbedarf und Service Benutzer Webbrowser Mobile Geräte Rendering Microsoft Office Service Repository Metadaten zu Services Mapping Prozessobjekte Technische Objekte Mapping Database Service Service der Prozessschicht Datenbank Services Datenbank Datenbank Datenbank Datenbank Datenbank Managementcockpit RFID Anforderungen an zentrales Management Cockpit und Database Services Nutzung der Metadaten im Service Repository für eine service- und prozessorientierte Administration Unabhängigkeit von Herstellerspezifika des Database Service Database Services müssen technische Informationen standardisiert abrufbar ermöglichen Definition und Verwaltung von prozessspezifischen Kriterien zur Bewertung von Datenbeständen Messung der Datenmengengröße und Ressourcennutzung in Bezug auf diese Prozessobjekte unabhängig von der konkreten technischen Realisierung des Database Service