Katalogsysteme im Test
Katalogsysteme im Test
Katalogsysteme im Test
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
Paul Dachtler ist Vorstand (CTO) bei der Heiler<br />
Software AG in Stuttgart<br />
NET 12/03<br />
Im IT-Umfeld werden Leistungsmessungen<br />
seit vielen Jahren dazu verwendet,<br />
um die Performance von Rechensystemen<br />
zu bewerten. Unterschiedliche<br />
und oft sehr individuelle<br />
Ansprüche an die Verfahren machten<br />
es dabei schon <strong>im</strong>mer schwer, die passende<br />
Methode zu finden. Denn sie<br />
soll zuverlässige Aussagen über die<br />
Leistung eines Systems unter genau<br />
der Last treffen, die für einen Anwender<br />
wichtig ist. Daher ist es naheliegend,<br />
nicht eine Sammlung synthetischer<br />
Programme zur Leistungsbewertung<br />
zu verwenden, sondern die Leistungsfähigkeit<br />
von Anwendungen<br />
vor dem Hintergrund tatsächlicher<br />
Abläufe <strong>im</strong> Unternehmen zu testen.<br />
Dies gilt insbesondere für <strong>Test</strong>s, die<br />
sich mit der Leistungsfähigkeit von<br />
Beschaffungslösungen befassen. Gefragt<br />
ist daher ein Verfahren, das relevante<br />
Business-Aspekte auf Basis eines<br />
realistischen Szenarios überprüft.<br />
Anforderungen auf der<br />
Buy Side<br />
Bereits seit geraumer Zeit nehmen die<br />
Benutzerzahl und die Menge des Produktdaten-Contents<br />
in den Katalogen<br />
der beschaffenden Unternehmen stetig<br />
zu. Daraus ergeben sich hohe Per-<br />
KOMMUNIKATIONSMANAGEMENT<br />
<strong>Katalogsysteme</strong> <strong>im</strong> <strong>Test</strong><br />
S<strong>im</strong>ulation eines realistischen Beschaffungsszenarios<br />
Paul Dachtler<br />
Bislang gab es für<br />
Beschaffungslösungen keine<br />
allgemein anerkannten Prozeduren<br />
oder Benchmarks, mit denen<br />
Aussagen über die Leistungsfähigkeit<br />
eines Katalogsystems auf einer<br />
best<strong>im</strong>mten Serverplattform gemacht<br />
werden konnten. Synthetische und<br />
damit rein theoretische Werte, die auf<br />
Verfahren des Transaction Processing<br />
Performance Councils (TPC) beruhen,<br />
führen zu keinen sinnvollen<br />
Aussagen. Gefragt sind daher<br />
praxisorientierte <strong>Test</strong>s, wie in diesem<br />
Beitrag beschrieben, die es<br />
ermöglichen, nachprüfbare Werte für<br />
die Performance und die<br />
Skalierbarkeit von elektronischen<br />
<strong>Katalogsysteme</strong>n zu ermitteln.<br />
Das Thema in Kürze<br />
Die elektronische Beschaffung und<br />
das Bereitstellen elektronischer Kataloge<br />
erhalten in den Unternehmen<br />
eine Schlüsselfunktion – Katalogmanagementlösungen<br />
und die Lieferantenintegration<br />
werden zu zentralen<br />
Komponenten. Da es <strong>im</strong> Beschaffungsumfeld<br />
noch keine <strong>Test</strong>verfahren<br />
für <strong>Katalogsysteme</strong> gibt,<br />
entwickelte man bei der Heiler Software<br />
AG gemeinsam mit Sun Microsystems<br />
den <strong>im</strong> Beitrag beschriebenen<br />
speziellen Leistungstest.<br />
formance- und Lastanforderungen an<br />
das Katalogsystem. Behäbige Lösungen<br />
mit langen Antwortzeiten senken<br />
die Akzeptanz der Benutzer.<br />
Höhere Beschaffungsvolumina über<br />
die Procurement-Plattform lassen sich<br />
nur durch die Einbeziehung zusätzlicher<br />
aktueller Produktsort<strong>im</strong>ente abwickeln.<br />
Notwendig sind daher neben<br />
einer Opt<strong>im</strong>ierung der Prozesse auch<br />
schnelle Updatezyklen des Contents.<br />
Anforderungen auf der<br />
Sell Side<br />
Der Bedarf der Einkäufer an hochwertigen<br />
Informationen und standardisierten<br />
Formaten n<strong>im</strong>mt zu. Hersteller<br />
und Distributoren müssen aktuellen<br />
elektronischen Content schnell liefern.<br />
Als Hürde einer raschen und<br />
kontinuierlichen Bereitstellung von<br />
elektronischem Catalog Content an<br />
die Kunden erweisen sich häufig fehlende<br />
oder falsche Produktinformationen,<br />
die beispielsweise <strong>im</strong> Vertrieb<br />
oder in Niederlassungen entstehen.<br />
Daraus resultiert dann oft ein unbrauchbarer<br />
Datenbestand. Veraltete<br />
und redundante Informationen ergeben<br />
sich auch dann, wenn Produktstammdaten<br />
in unterschiedlichen Anwendungen<br />
und in verteilten Systemen<br />
gehalten werden. Als Lösung<br />
wird deshalb in vielen Fällen ein zentralesProduktdatenmanagementsystem<br />
angestrebt, das Benutzern die<br />
Möglichkeit bietet, Produktdaten und<br />
Kataloginhalte schnell zu erstellen, zu<br />
pflegen und zu verteilen.<br />
Leistungstest von <strong>Katalogsysteme</strong>n<br />
Im Beschaffungsumfeld gibt es noch<br />
keine allgemein anerkannten <strong>Test</strong>verfahren,<br />
die Aussagen über die Performance<br />
eines Katalogsystems auf einer<br />
best<strong>im</strong>mten Hardware ermöglichen<br />
würden. TPC-C-Werte führen hier zu<br />
15
<strong>Katalogsysteme</strong> <strong>im</strong> <strong>Test</strong><br />
keinerlei verwertbaren Aussagen und<br />
müssen durch entsprechende Application-<strong>Test</strong>s<br />
(Benchmarks) ersetzt werden.<br />
Daher entwickelte die Heiler<br />
Software AG gemeinsam mit Sun<br />
Microsystems in deren <strong>Test</strong>center in<br />
Langen einen Leistungstest mit dem<br />
Heiler Premium Business Catalog (PBC<br />
in der Version 2.5.2). Er widmet sich<br />
speziell dem Thema Performance in<br />
einer gegebenen Hardwareumgebung<br />
und der Frage, wie zusätzliche<br />
Prozessoren in den Servern die Leistungsfähigkeit<br />
beeinflussen (Skalierbarkeit).<br />
Der Premium Business Catalog<br />
(PBC) ist das führende elektronische<br />
Katalogsystem, mit dem große<br />
Unternehmen ihre Beschaffung organisieren.<br />
Eine hohe Benutzerfreundlichkeit,<br />
effiziente Suchstrategien sowie<br />
die opt<strong>im</strong>ale Integration in unterschiedliche<br />
Beschaffungssysteme sind<br />
wesentliche Merkmale des PBC. Er bildet<br />
damit das Kernstück einer E-Procurement-Lösung.<br />
Auf Basis der Sun Fire-Server mit Ultra-Sparc-III-Architektur<br />
und Solaris 8<br />
wurden in umfangreichen <strong>Test</strong>läufen<br />
sowohl die Stärke der Sun-Technik als<br />
auch die hohe Qualität der Heiler-<br />
Software in Verbindung mit Oracle 9i<br />
als Datenbankmanagementsystem<br />
und BEA Weblogic als Applikationsserver-Infrastruktur<br />
untersucht.<br />
Das Anforderungsszenario des Application<br />
Benchmarks geht von einem<br />
internationalen Großunternehmen<br />
mit rund 25.000 Named Usern aus.<br />
Sie wickeln gemeinsam <strong>im</strong> indirekten<br />
Bereich ein Beschaffungsvolumen von<br />
mehr als 1 Mrd. € pro Jahr über die<br />
Katalogplattform ab. Dies entspricht<br />
etwa 100.000 Bestellvorgängen pro<br />
Monat und ca. 50 parallelen Bestellvorgängen.<br />
Aufgrund der globalen<br />
Ausrichtung des potentiellen Anwenders<br />
wird ein „internationaler“ Arbeitstag<br />
von 18 h vorausgesetzt (Zeitzonen<br />
Nordamerika bis Europa).<br />
Die <strong>Test</strong>s bestanden aus komplexen<br />
Abläufen, wie sie heute in produktiven<br />
Beschaffungssystemen vom<br />
Frontend bis zur Datenbank realisiert<br />
sind. Die Antwortzeiten zwischen<br />
dem Auslösen einer Aktion am Frontend<br />
(Webbrowser) und der Präsentation<br />
des entsprechenden Ergebnisses<br />
durfte durchschnittlich 2 s nicht über-<br />
Bild 1: Einzelne Komponenten des Anwendungsszenarios<br />
wie Datenbank und Web-Applikationsserver<br />
wurden auf mehrere Systeme<br />
verteilt<br />
schreiten. Als Datenbasis wurde ein<br />
Katalog mit 5 Mio. Produkteinträgen<br />
gewählt. Dieses Sort<strong>im</strong>ent entspricht<br />
dem Beschaffungsvolumen eines international<br />
tätigen Konzerns. Da Kataloglösungen<br />
in der Regel hochverfügbar<br />
sein müssen, wurden Messungen<br />
mit gleichmäßiger Lastverteilung<br />
über einen Zeitraum von mindestens<br />
12 h durchgeführt.<br />
Die S<strong>im</strong>ulation des realistischen Szenarios<br />
basiert auf dem PBC von Heiler<br />
Software in der Version 2.5.2. Auf Basis<br />
der Messungen lassen sich auch<br />
Empfehlungen für ein richtiges Sizing<br />
ableiten, die jedoch <strong>im</strong> einzelnen Fall<br />
je nach Datenqualität und bei jeder<br />
Abweichung durch individuelle Anpassungen<br />
genauestens geprüft werden<br />
müssen. Anders als bei einem<br />
Feature-Benchmark, der insbesondere<br />
während der Produktentwicklung genutzt<br />
wird, überprüft ein Applications-<strong>Test</strong><br />
ein System hinsichtlich der<br />
Kriterien Performance, Skalierbarkeit,<br />
Durchsatz, Antwortzeitverhalten und<br />
Verhalten unter hoher Last.<br />
Entsprechend den Einsatzmöglichkeiten<br />
und Anforderungen wurden verschiedene<br />
Installationsszenarien geprüft.<br />
Hierfür waren als wesentliche<br />
Komponenten der Lösung zu berücksichtigen:<br />
Datenbank sowie Webserver/Webadapter-Lastverteilung<br />
für die<br />
HTTP-Zugriffe und für die Abarbeitung<br />
der Business-Objekte.<br />
Diese Komponenten können auf ein<br />
einzelnes Serversystem oder auf mehrere<br />
Systeme verteilt sein. Teile des<br />
Szenarios führten zu einer sehr hohen<br />
Belastung auf dem Datenbankserver<br />
(Suchanfragen), andere auf den Applikationsservern<br />
(Auswählen von Artikeln,<br />
Warenkorbaktionen).<br />
Durchführung des<br />
Applikationstests<br />
Für die Definition entsprechender Benutzertypen,<br />
die Zusammensetzung<br />
einzelner Transaktionen, die Lastgenerierung<br />
und für die Zeitmessungen<br />
kam ein marktüblicher Lastgenerator<br />
zum Einsatz. Die einzelnen PBC-Komponenten<br />
wurden auf insgesamt drei<br />
Sun Fire-Server installiert. Das auf Dialogschritten<br />
basierende Lastszenario<br />
lief auf bis zu drei Web- und Applikationsservern.<br />
Der <strong>Test</strong> s<strong>im</strong>ulierte ein Userload zwischen<br />
100 und 600 parallelen Benutzern<br />
auf ein bis drei Applikationsservern.<br />
Variiert wurde darüber hinaus<br />
die Anzahl der Prozessoren des Datenbank-<br />
und der Applikationsserver.<br />
Teile des Szenarios erzeugten eine<br />
sehr hohe Belastung auf dem Datenbankserver<br />
(Suchanfragen), andere<br />
auf den Applikationsservern (Auswählen<br />
von Artikeln, Warenkorbaktionen).<br />
Um eine praxisnahe max<strong>im</strong>ale<br />
Auslastung zu s<strong>im</strong>ulieren, wurde eine<br />
<strong>Test</strong>reihe mit drei Applikationsservern<br />
und mit 500 aktiven Usern durchgeführt.<br />
In diesem Härtetest waren die<br />
Applikationsserver <strong>im</strong> Durchschnitt zu<br />
90 % ausgelastet; es kam dabei zu<br />
keinen Verbindungsfehlern. Die Last<br />
der Datenbank betrug <strong>im</strong> Durchschnitt<br />
60 %; bei einer großen Anzahl<br />
von Anfragen lag sie sogar bei nahe<br />
100 %.<br />
Skalierbarkeit des<br />
Katalogsystems<br />
Beginnend mit einem und einer<br />
schrittweisen Erhöhung auf drei Applikationsserver<br />
wurde die Leistungsfähigkeit<br />
des PBC <strong>im</strong> Detail untersucht.<br />
Bereits auf der ersten Stufe verarbeitete<br />
der PBC 340.000 Warenkörbe<br />
pro Monat. Hierbei wird eine nahezu<br />
lineare Skalierung erreicht. Die Per-<br />
16 NET 12/03
formance ist einzig durch den Umfang<br />
der eingesetzten Hardware begrenzt,<br />
eine Steigerung durch weitere<br />
Server ist möglich.<br />
Durch eine Skalierung auf drei Applikationsserver<br />
und 500 parallele User<br />
werden rund 1,1 Mio. Warenkörbe<br />
pro Monat erreicht; dies entspricht bei<br />
etwa 25.000 Named Usern einer Bestellrate<br />
von ca. 44 Bestellungen mit<br />
352 Produkten pro Monat und jedem<br />
einzelnen Benutzer. Insgesamt werden<br />
dabei rund 44,3 Mio. Dialogschritte<br />
pro Monat erreicht; dies entspricht<br />
bei 25.000 Named Usern etwa<br />
1.770 Dialogen pro User und Monat.<br />
Damit verbringt jeder der 25.000 Benutzer<br />
pro Arbeitstag bis zu einer halben<br />
Stunde <strong>im</strong> Katalog und setzt dabei<br />
etwa 2,1 Bestellungen mit insgesamt<br />
17 Produkten ab.<br />
Ableitungen aus den<br />
<strong>Test</strong>ergebnissen<br />
Auf Basis der Benchmark-Messungen<br />
lassen sich auch Empfehlungen für ein<br />
richtiges Sizing ableiten, die <strong>im</strong> Einzelfall<br />
nach Datenqualität und bei Abweichungen<br />
der Konfiguration <strong>im</strong><br />
Vorfeld geprüft werden müssen. Die<br />
wichtigsten Regeln lauten:<br />
Pro Applikationsserver-Instanz können<br />
etwa 150 bis 200 parallele Benutzer<br />
bedient werden.<br />
Die Applikation skaliert nahezu linear<br />
über mehrere Applikationsserver.<br />
Be<strong>im</strong> Hinzufügen von Applikationsservern<br />
muß parallel dazu der Datenbankserver<br />
weiter ausgebaut<br />
werden.<br />
Die Applikation reagiert sensitiv auf<br />
unterschiedliche Prozessortaktraten.<br />
Eine Steigerung der Taktrate beispielsweise<br />
von 400 auf 480 MHz<br />
führt zu einer 20prozentigen Leistungssteigerung.<br />
Das Hinzufügen von Prozessoren <strong>im</strong><br />
Datenbankserver bringt sehr gute,<br />
nahezu lineare Performance-Zuwächse.<br />
Somit kann der Datenbankserver<br />
bei steigenden Benutzerzahlen<br />
mitwachsen.<br />
Ein schnelles Plattensystem beschleunigt<br />
die Suchvorgänge um bis<br />
zu 20 % bei Verteilung der Datenbank-Logdateien<br />
und Datenbankdateien.<br />
NET 12/03<br />
Bild 2: Die Hardwarekonfiguration<br />
des Applikationstests:<br />
ein Datenbankserver Sun<br />
Fire mit 8 x 900 MHz<br />
Ultra Sparc III mit je<br />
8 Mbyte Level-2-Cache<br />
und 16 Gbyte RAM, Stor-<br />
Edge A5200 und Stor-<br />
Edge T3 sowie drei Applikationsserver<br />
Sun Enterprise<br />
mit Ultra-Sparc-Prozessoren<br />
und jeweils<br />
4 Gbyte RAM<br />
Resümee<br />
S<strong>im</strong>uliert wurde eine Benutzerlast zwischen<br />
100 und 500 parallel arbeitenden<br />
Anwendern. Dabei entsprechen<br />
500 aktive Benutzer in einem internationalen<br />
Großunternehmen rund<br />
25.000 Named Usern. Die Vorgabe<br />
war, mehr als 100.000 Bestellvorgänge<br />
pro Monat auszulösen. In der Sum-<br />
me ergibt dies ein indirektes Beschaffungsvolumen<br />
von mehr als 1 Mrd. €<br />
pro Jahr, das über die Katalogplattform<br />
abgewickelt wird.<br />
Die S<strong>im</strong>ulation erfolgte auf Basis eines<br />
realistischen Benutzerszenarios, basierend<br />
auf dem Heiler Premium Business<br />
Catalog in der aktuell verfügbaren<br />
Version 2.5.2. Die Antwortzeiten zwischen<br />
dem Auslösen einer Aktion am<br />
Webbrowser und der Präsentation des<br />
<strong>Katalogsysteme</strong> <strong>im</strong> <strong>Test</strong><br />
entsprechenden Ergebnisses durften<br />
hierbei <strong>im</strong> Schnitt 2 s nicht überschreiten.<br />
Als Datenbasis wurde ein Katalog<br />
mit 5 Mio. Produkteinträgen gewählt,<br />
die in dem komplexen relationalen<br />
Datenbankmodell des PBC mit 119<br />
Entitäten abgelegt wurden. Dieses Beschaffungssort<strong>im</strong>ent<br />
entspricht dem<br />
Beschaffungsvolumen eines internationalen<br />
Großkonzerns.<br />
Die <strong>Test</strong>ergebnisse – bei der Berechnung der Anzahl paralleler User werden etwa 2 % bezogen auf<br />
die Named User unterstellt; die Zeitumrechnung berücksichtigt das internationale Anforderungsszenario<br />
Von den umfangreichen Ergebnissen<br />
sind folgende Resultate besonders zu<br />
erwähnen:<br />
mehr als 44,3 Mio. Dialogschritte/Monat;<br />
mehr als 8,8 Mio. bestellte Produkte/Monat;<br />
mehr als 1,1 Mio. OCI-Warenkörbe/Monat;<br />
nahezu lineare Skalierung auf Sun<br />
Fire-Server. (we)<br />
17