BPM inspire Performance Benchmarks Copyright 2009 Inspire Technologies GmbH. Alle Rechte vorbehalten. Diese Dokumentation darf ohne vorherige schriftliche Genehmigung weder ganz noch teilweise in irgendeiner Form reproduziert, vervielfältigt oder übersetzt werden. Änderungen und weitere Entwicklungen vorbehalten. Microsoft Windows, Windows NT, Windows Vista, Excel, Visio und Word sind Warenzeichen oder eingetragene Warenzeichen der Microsoft Corporation in den USA und/oder anderen Ländern. Andere Firmen- und Produktbezeichnungen können Warenzeichen bzw. eingetragene Warenzeichen ihrer jeweiligen Firmen sein. Inspire Technologies GmbH Leopoldstr. 1 78112 St. Georgen Deutschland +49 7724 85990-10 kontakt@bpm-inspire.com http://www.bpm-inspire.com Seite 2 von 11
Inhaltsverzeichnis 1 Die Ausgangssituation...4 2 Das Szenario...4 3 Eingesetzte Hardware und Produktkomponenten...5 4 Messverfahren...6 5 Messergebnis...6 6 Fail Over...10 7 Ihre Vorteile auf einen Blick...10 Seite 3 von 11
1 Die Ausgangssituation Eines der Top100 Global Player-Unternehmen hat als Bedingung für die Beauftragung den Nachweis im Rahmen eines Proof-of-concepts gefordert, dass BPM inspire robust und hochskalierbar ist. Die Anforderung an das Produkt lautete, mindestens 10.000 Prozesse komplett pro Stunde abzuarbeiten und zu demonstrieren, wie skalierbar das System ist und wie es auf Hardwareausfälle reagiert. 2 Das Szenario Viele Messungen bei BPM-Produkten basieren auf Transaktionen pro Zeiteinheit, was nur bedingt aussagekräftig ist, solange die Transaktionen selbst nicht erläutert oder die dabei verwendete Systemumgebung aufgezeigt wird. Wesentlich fundiertere Erkenntnisse lassen sich anhand praxisnaher Szenarien ableiten. Bei dem hier gewählten Szenario handelt es sich um eine Posteingangsverarbeitung mit folgendem Prozess: Es wurden Scannstationen simuliert, die gescannte Dokumentenstapel mit durchschnittlich 50 Dokumenten à 3 Seiten erzeugen. Die typische Datengröße eines Bildes beträgt 75 kbyte. Gescannte Bildstapel werden zusammen mit ihrer XML-Beschreibungsdatei aus der Scannersimulation über die BPM inspire Image Pusher- Komponente an den Prozessserver übertragen. Die Bilder wurden wahlweise in einer Datenbank bzw. auf dem Dateisystem des Servers abgelegt und je Dokument ein Posteingangsprozess gestartet. Dieser Prozess holte im ersten Schritt Zusatzinformationen aus einer Datenbank und speicherte sie zu der jeweiligen Prozessinstanz ab. Im nächsten Schritt wurde eine Klassifikation des Dokumentes, anschließend eine OCR-Erkennung, im nächsten Schritt dann eine manuelle Stichprobenkontrolle simuliert und - abhängig von den Ergebnissen - das Dokument zusammen mit einer XML-Beschreibung auf ein Zielverzeichnis des Servers ausgeliefert. Seite 4 von 11
3 Eingesetzte Hardware und Produktkomponenten Das Szenario wurde auf zwei verschiedenen Systemumgebungen aufgesetzt. Zum einen auf einer Sun mit Oracle als Datenbank und um aussagekräftige Vergleichswerte zu erhalten auf einer IBM AIX p55 und DB2 als Datenbank SUN Systemumgebung: Eine Sun Fire V890 mit 4 CPUs, 16GByte und 6 Festplatten (Seagate ST314680FSUN146G mit 10 000 rpm) kein RAID Fail-Over-Test mit zusätzlicher Sun Fire V240 1,5GHz mit 2CPUs, 2GByte und 2 Festplatten (Ultra 160 SCSI Platten je 73 GB) Betriebssystem: Sun Solaris 10 Datenbank: Oracle 10g mit 4GByte SGA Client: Windows PC (P4 mit 3GHz, 2GByte Ram) Netzwerk: 100MBit/s TomCat 5.5 mit max. 8GByte, JDK 1.5 im 64bit Modus IBM Systemumgebung: BPM inspire Server: IBM AIX p55 mit 1 x Dual Core p5+ (nur einer aktiv), 1,9GHz, 16 GByte und 6 Festplatten mit 146GB und 15k rpm Datenbankserver: IBM AIX p55 mit 1 x Dual Core p5+ (nur einer aktiv), 1,9GHz, 16 GByte und 6 Festplatten mit 146GB und 15k rpm Betriebssystem AIX 5.3 Datenbank: DB2 Client: Windows PC (Windows 2003, 4x Xeon 3.0, 12 GB) Netzwerk: 1GBit/s Seite 5 von 11
4 Messverfahren Um eine hohe Last für den Server zu produzieren, wurden auf einem bis drei PCs je 10 Scannstationen simuliert. Diese 30 parallel laufenden Simulatoren erzeugten permanent Scannstapel à 150 Seiten und sendeten sie über den BPM inspire Image Pusher an den Server, der die entsprechende Anzahl an Prozessen für die Dokumente startete. Um die Skalierung zu demonstrieren, wurde sowohl die Anzahl der aktivierten CPUs als auch die Anzahl der Scannsimulatoren variiert. 5 Messergebnis Gemessen wurde die Gesamtausführungszeit beginnend mit der Übertragung der Bilder und XML- Stapelbeschreibungen vom Client an den Server über das Starten der Prozesse bis zum Ende einer jeweiligen Messreihe. Die Messreihen wurden dann umgerechnet in Durchsatz pro Stunde. Lastverhalten auf der SUN Wie aus der nachfolgenden Grafik gut erkennbar ist, ist die Skalierung des Durchsatz von der Anzahl der CPUs bei parallelen Scannsimulatoren abhängig: rund 5000 Prozesse / Stunde bei einer CPU, ca. 10.900 Prozesse / Stunde bei 2 CPUs, im Mittel 15.300 Prozesse / Stunde bei 3 CPUs und bei 4 CPUs ist ein deutlicher Anstieg auf 32.100 Prozesse / Stunde zu beobachten. Der Grund des enormen Anstiegs bei 4 CPUs war der Rückgang der CPU-Auslastung auf nur noch 90%, wohingegen bei bis zu 3 CPUs eine Vollauslastung zu beobachten war. Diese Zahlen können natürlich leicht weiter gesteigert werden, indem die Datenbank auf eine eigene Hardware zugreift und zusätzlich die Festplatten über ein RAID-System beschleunigt werden. Es wurde aber in diesem Szenario bewusst eine moderate Hardware gewählt, um praxisnahe Ergebnisse zu erhalten und den Nachweis einer funktionierenden Skalierbarkeit zu führen. Umgerechnet auf den Durchsatz der Bilder pro Stunde konnten bei nur einer aktiven CPU 15.000 und bei 4 CPUs 96.300 Bilder an den Prozessserver je Stunde übertragen werden. Seite 6 von 11
Prozesse /h 35000 30000 25000 20000 15000 10000 5000 0 1 5 10 1 2 3 4 CPUs SUN V890 parallele Scansimulatoren Lastverhalten auf der AIX Bei dieser Umgebung wurde eine Trennung des BPM inspire und Datenbankservers durchgeführt, jedoch wurde bei beiden Servern nur jeweils eine CPU aktiviert. Aufgrund der Beschränkung der CPUs wurde lediglich geprüft, welcher Durchsatz mit 10 parallelen Scannstationen möglich ist. Überraschenderweise konnte ein etwas höherer Durchsatz auf der p5+ im Vergleich zur V890 erzielt werden, bei gleichzeitig nur jeweils nur einer CPU getrennt auf dem Datenbank und BPM inspire Server. Seite 7 von 11
Prozesse /h 35000 30000 25000 20000 15000 4 10000 5000 2 3 CPUs 0 p5+ V890 1 Gegenüberstellung AIX p5+ vs. SUN V890 Seite 8 von 11
Als zusätzliche Messreihe wurde die Speicherung der Dokumente in der Datenbank einer Ablage im Dateisystem gegenübergestellt und die Dateigröße der übertragenen Bilder zwischen 225kByte und 17kByte variiert. Bei einer Ablage der Bilder in der Datenbank war die CPU nur noch mit 45% (225kByte Dokumente) bis 60% (17kByte Dokumente) ausgelastet, so dass die Datenbank selbst die Grenze für die Performance mit zwischen 11.200 und 27.700 Prozesse / Stunde definierte. Bei einer Ablage im Dateisystem spielte die Größe der Dokumente nur eine untergeordnete Menge. Ein nur 17kByte großes Dokument steigerte die Performance um ca. 12% auf 36.000 Dokumente pro Stunde. Anders bei der DB2 Datenbank, hier konnte in der Tat eine deutlich bessere Skalierbarkeit der Datenbank beobachtet werden. Bei der Gegenüberstellung ist zu berücksichtigen, dass die p5+ nur mit 2 CPUs gegenüber den 4 CPUs im Falle der V890 betrieben wurde Prozesse /h 35000 30000 25000 20000 15000 10000 5000 0 V890/Oracle Dokumentengröße p5+/db2 Datenbank Dateisystem Seite 9 von 11
6 Fail Over Bei Anwendungen mit einem Durchsatz in dieser Größenordnung handelt es sich meist um kritische Systeme, deren Ausfall spürbare monetäre oder noch schlimmere Folgen nach sich zieht. Aus diesem Grunde wurde auch ein Serverausfall simuliert. Hierzu wurde eine zweite, wenngleich deutlich schwächere SUN V240 zugeschaltet. Mitten im laufenden Betrieb wurde der SUN V240 Server hart beendet. Nach der eingestellten Fail-Over-Zeit von 2 Minuten konnte man sich davon überzeugen, dass die SUN V890 sämtliche von der ausgefallenen Sun angenommenen Prozesse übernommen und fehlerfrei abgearbeitet hatte. Nach erneutem Einschalten des zweiten Servers hat er wiederum erkannt, dass seine reservierten Prozesse mittlerweile übernommen waren und hat diese nicht mehr bearbeitet. Voraussetzung für ein funktionierendes Fail-Over ist die hohe Verfügbarkeit der Datenbank sowie des Servers für die Benutzerverwaltung. Dasselbe Prinzip gilt auch für sämtliche Hardwareplattformen. 7 Ihre Vorteile auf einen Blick BPM inspire ist hochgradig skalierbar und daher für sehr hohe Volumina bestens geeignet Fail-Over Fähigkeit prädestiniert BPM inspire auch für kritische Anwendungsbereiche Moderate Hardwareanforderungen von BPM inspire halten Investitionen in überschaubaren Dimensionen Seite 10 von 11
Mitarbeiterzentrische & Systemzentrische Prozesse Vollständige BPM Suite inkl. GUI Designer Import von Prozessmodellen aus vielen Standard-Modellierungswerkzeugen Schnelle Prototypenerstellung für realen Proof-of-Concept Einfache Prozessänderungen & Fehlerbehandlungsmöglichkeiten Optimale Unterstützung von strukturierten und unstrukturierten Prozessen Grafischer Designer für Masken-, Formular- und Reportdesign BPM inspire Designer vereinfacht die Entwicklung Unterstützung von mehrsprachigen Anwendungen und Prozessen Hohe nachgewiesene Performance & Skalierbarkeit Vielschichtige Berechtigungssteuerung Unterstützung der Java Mail API (eingebettete Bilder) Versionierung von Prozessen und Auflösen von Inkonsistenzen Verfügbar für MS Windows, Linux und diverse Unix Betriebssysteme Optimale Unterstützung einer Service-orientierten Architektur (SOA) SOA Connect zertifiziert von IBM Grafische Schema Editoren (XSD) inkl. grafischem Mapping Integrierter XML & Xpath Editor Dynamische Prozessveränderungen mit unstrukturierten Daten Unterstützung von JMS (Java Messaging-Services) Unicode-Unterstützung Betriebskalender für Stellvertreterregelungen Integration und Nutzung unterschiedlicher Technologien (.net, java, webservices) Unterstützung von WS-I-konformen und auch nicht WS-I konformen Webservices Einstieg in die Automatisierung von jedem Punkt aus möglich (Modellierung, BI, DMS etc.) Standardanbindung an Dokumentenmanagement-, Business Intelligence, OCR & Capturing, Archiv- und ERP-Systeme Vielseitige Integrationsmöglichkeiten (Webservices, Plug-In, Standardadaptoren) Anbindungen an ESBs gestatten die Orchestrierung von Services Integration in bestehende Portallösungen möglich Replikationsmechanismen für bestehende Benutzerverwaltungssysteme Auswertung von Prozesskosten und -kennzahlen dank integriertem Reportingmodul Generierung von Prozessdokumentation auf Knopfdruck (html, word, pdf) Unterschiedliche Produktlinien ermöglichen einfachen Einstieg und komfortable Ausbaumöglichkeiten Seite 11 von 11