Benchmark Ueberblick OLTP

Werbung
Version 2.2
Oktober 2003
Benchmark-Überblick
OLTP
Seiten
6
Abstract
In diesem Dokument wird der Fujitsu Technology Solutions interne Datenbank-Benchmark OLTP vorgestellt.
Insbesondere werden Gemeinsamkeiten und Unterschiede zum TPC-C Benchmark und daraus
resultierende Implikationen bezüglich der Verwendbarkeit von OLTP-Benchmark-Ergebnissen herausgestellt.
Ein Vergleich von OLTP- mit TPC-C-Ergebnissen ist weder erlaubt noch sinnvoll. Beide Benchmarks
basieren zwar auf einem ähnlichen Anwender-Szenario. Während TPC-C jedoch für den Vergleich von
Systemkonfigurationen verschiedener Hersteller geeignet ist, liegt der Fokus des OLTP-Benchmarks auf
Aussagen zur Skalierung und zu relativen Performance-Vergleichen innerhalb der PRIMERGY Serverfamilie.
Inhalt
Der OLTP-Benchmark – Ein Überblick................................................................................................... 2
Das Benchmark-Modell .......................................................................................................................... 2
Performance Metrik ................................................................................................................................ 2
Die OLTP-Datenbank und ihre Transaktionen ....................................................................................... 3
Unterschiede zwischen OLTP und TPC-C ............................................................................................. 4
Schlussbetrachtung ................................................................................................................................ 4
Literatur................................................................................................................................................... 6
Kontakt.................................................................................................................................................... 6
White Paper ⏐Benchmark Ueberblick OLTP
Version: 2.2, Oktober 2003
Der OLTP-Benchmark – Ein Überblick
Der OLTP-Benchmark misst – ähnlich wie TPC-C (siehe Literatur Benchmark Überblick TPC-C) - die
Performance online transaktionsverarbeitender Systeme (Online Transaction Processing oder OLTP). Da
der mit TPC-C-Messungen verbundene Aufwand hardware– und zeitbedingt nur eine Vermessung speziell
ausgewählter Systemkonfigurationen ermöglicht, wurde von Fujitsu Technology Solutions ein Messverfahren
entwickelt, mit dem eine wesentlich höhere Anzahl Messungen durchgeführt werden kann. So basiert der
OLTP-Benchmark auf der gleichen komplexen Datenbank und den gleichen Transaktionstypen wie TPC-C.
Performance-bestimmend sind dabei hier wie dort das User Interface, die Netzwerk-Kommunikation und
Disk I/O. Anders als TPC-C beschränkt sich der OLTP-Benchmark jedoch auf reine PerformanceMessungen, die nach einem weniger rigiden Regelwerk und ohne Auditierung durch ein unabhängiges
Gremium durchgeführt werden. Ein Vergleich zwischen OLTP- und TPC-C-Ergebnissen ist dadurch zwar
nicht möglich. Dafür hilft der OLTP-Benchmark aber, Erkenntnisse über die Skalierungseigenschaften der
PRIMERGY-Modelle in einem komplexen OLTP-Umfeld zu gewinnen.
Das Benchmark-Modell
Der OLTP-Benchmark simuliert eine Umgebung, in der Benutzer diverse Transaktionen auf einer Datenbank
ausführen. Zentraler Bestandteil des Benchmarks sind hierbei die typischerweise mit Auftragseingängen
verbundenen Transaktionen in einem Großhandelsunternehmen (Auftragsannahme, Lieferung,
Zahlungseingang, Überprüfung des Auftragsstatus, Überwachung der Lagerhaltung). Das simulierte
Unternehmen verfügt über Warenhäuser, denen Bezirke zugeordnet sind. Der OLTP-Benchmark ist so
angelegt, dass die Größe des Unternehmens (i.e. die Anzahl seiner Warenhäuser) variabel einstellbar ist.
Fest vorgegeben ist eine Anzahl von 100000 Artikeln sowie von zehn Verkaufsbezirken pro Warenhaus und
3000 Kunden pro Bezirk. Jeder Benutzer kann jederzeit eine von fünf Transaktionen auf dem Warenbestellsystem des Unternehmens durchführen. Sowohl die Transaktionen als auch deren Häufigkeit lehnen sich an
ein realistisches Szenario an.
Unternehmen
Warenhaus 1
Bezirk 1
Kunde 1
...
...
Kunde 3000
...
Bezirk 10
Kunde 30000
Warenhaus n
...
Bezirk nx10
Kunde nx30000
Die häufigste Transaktion ist der Auftragseingang (new order). Sie umfasst im Schnitt 10 unterschiedliche
Artikel. Jedes Warenhaus versucht, wenn möglich, die Lieferung aus eigener Warenhaltung zu bestreiten.
Da dies bei einer so hohen Anzahl von Artikeln kaum realistisch ist, erfolgt die Lieferung in nahezu 10% aller
Fälle über andere Warenhäuser des Unternehmens. Eine weitere häufige Transaktion ist der Erhalt eines
Zahlungseingangs (payment). Seltener sind Abfragen bezüglich des Auftragsstatus (order status), die
Bearbeitung von Lieferaufträgen (delivery) und die Überprüfung des lokalen Lagerbestandes auf etwaige
Lieferengpässe (stock level). Über diese insgesamt fünf Transaktionen wird der gesamte Geschäftsablauf
modelliert. Um den OLTP-Benchmark auf Systemen unterschiedlichster Leistungsfähigkeit ausführbar zu
halten, ist bei dessen Durchführung die Größe der Datenbank der Leistung des zu vermessenden Systems
anzupassen.
Performance Metrik
Die im OLTP-Benchmark zur Messung der Performance verwendete Maßeinheit gibt die Anzahl bearbeiteter
new-order-Transaktionen pro Minute an und heißt tpm.
OLTP Metrik
Durchsatz (Throughput)
tpm
© Fujitsu Technology Solutions 2009
Seite 2 (6)
White Paper ⏐Benchmark Ueberblick OLTP
Version: 2.2, Oktober 2003
Die OLTP-Datenbank und ihre Transaktionen
Die Definitionen von Datenbank und Transaktionen sind identisch zu denen bei TPC-C. Unterschiede
existieren bei der Generierung der Last für das zu vermessende System.
Die Datenbank enthält neun unterschiedlich strukturierte Tabellen und damit auch Datensatztypen. Je nach
Tabelle variieren Größe und Anzahl der Datensätze. Auf der Datenbank wird ein Mix aus fünf
konkurrierenden Transaktionen unterschiedlichen Typs und Komplexität ausgeführt. Dies geschieht
hauptsächlich online, teilweise aber auch nach Einreihung für eine spätere Bearbeitung in eine
Warteschlange im Batch. Durch deren Wettbewerb um die begrenzten Systemressourcen werden viele
Systemkomponenten belastet und in sehr vielfältiger Weise Datenänderungen durchgeführt.
Aufbau der OLTP-Datenbank
Tabelle
Anzahl Einträge
warehouse
n (wird bei einer Messung vorgegeben)
item
100.000
stock
n x 100.000
district
n x 10
customer
3.000 je Bezirk, 30.000 je Warenhaus
order
Anzahl Kunden (Initialwert)
new-order
30% der Aufträge (Initialwert)
order-line
ca. 10 pro Auftrag
history
Anzahl Kunden (Initialwert)
Die Art und Weise wie beim TPC-C Benchmark Daten von Benutzern eingegebenen werden, ist den
grundlegendsten Charakteristiken reeller Dateneingabesituationen nachempfunden. Es können
beispielsweise falsche Artikelnummern eingegeben werden, was dann zu einem Abbruch der Transaktion
führen würde. Um ein möglichst realistisches Szenario zu modellieren, wurde, anders als bei vielen anderen
Benchmarks, auf künstliche Vereinfachungen weitgehend verzichtet. So müssen beispielsweise alle
Terminaleingaben prinzipiell auch von echten Benutzern vorgenommen werden können. Zu diesem Zweck
müssen alle Eingabemasken vorgegebene Felddefinitionen sowie beschriftete Ein- und Ausgabefelder
enthalten und auch die üblichen Cursorbewegungs- und Feldkorrekturmechanismen aufweisen.
Der TPC-C-Durchsatz ist ein direktes Ergebnis der Terminalaktivitäten. Jedes Warenhaus besitzt 10
Terminals. Auf jedem dieser Terminals sind alle fünf Transaktionstypen ausführbar. Für die
Aufrechterhaltung des benötigten Transaktionsmixes während des Messzeitraums werden bei TPC-CMessungen Terminalemulatoren (remote terminal emulator oder RTE) verwendet. Beim OLTP-Benchmark
wird stattdessen die Last auf den Clients im Batch generiert. Der Transaktionsmix repräsentiert den
gesamten mit einer Bestellung verbundenen Geschäftsablauf von der Erfassung bis zur Auslieferung. Im
Detail sieht das so aus, dass pro new-order-Transaktion eine payment-Transaktion und für zehn new-orderTransaktionen jeweils eine delivery-, eine order-status- und eine stock-level-Transaktion generiert wird.
OLTP-Transaktionen und geforderte Verteilung
Name der Transaktion Anteil an allen Transaktionen
New Order
≤ 45%
Payment
≥ 43%
Order-Status
≥ 4%
Delivery
≥ 4% (Batch-Transaktion)
Stock Level
≥ 4%
Mit dem RTE bzw. dem beim OLTP-Benchmark analogen Lastgenerierungsprogramm werden auch die
Antwortzeiten der Transaktionen gemessen. Beim OLTP-Benchmark erfolgt jedoch keine Simulation von
Eingabe- und Reaktionszeiten des Benutzers.
Alle möglichen performance-relevanten Datenbankdesigntechniken, wie beispielsweise Partitionierung oder
Replikation, sind erlaubt. Unrealistisch große Performance-Vorteile sind wegen der Art und Weise, wie die
Verwendung von Datensätzen durch die Transaktionen definiert ist, nicht zu erwarten.
© Fujitsu Technology Solutions 2009
Seite 3 (6)
White Paper ⏐Benchmark Ueberblick OLTP
Version: 2.2, Oktober 2003
Unterschiede zwischen OLTP und TPC-C
Der OLTP-Benchmark ist im Gegensatz zu TPC-C kein Standard-Benchmark. Die Einhaltung des
Reglements wird von keinem unabhängigen Gremium überwacht.
Eine TPC-C-Messung kann von der Vorbereitung bis zur offiziellen Abnahme durch das TPC-Gremium bis
zu 3 Monate Zeit in Anspruch nehmen. TPC-C ist somit ungeeignet, alle für ein OLTP-Szenario geeignete
PRIMERGY Systeme in allen ihren möglichen CPU-Variationen und Speicherausbauten zu vermessen. Um
dennoch ein Vergleichsmaß ähnlich zum TPC-C Benchmark zu haben, wurde der OLTP Benchmark
entwickelt, der mit akzeptablem Kostenaufwand und in vertretbarer Zeit eine Vermessung vieler PRIMERGY
Systemkonfigurationen und damit eine Einstufung ihrer Leistungsfähigkeit ermöglicht.
Ein Ziel von OLTP-Messungen ist es, Erkenntnisse über die Skalierung der PRIMERGY-Systeme innerhalb
einer Systemfamilie zu gewinnen. So kann durch Messungen mit unterschiedlichen Prozessor- und
Speicherausbauten die erreichte Leistungssteigerung bezüglich einer Systemkomponente quantifiziert
werden. Des Weiteren ermöglichen OLTP-Messungen einen Leistungsvergleich zwischen aufeinander
folgenden PRIMERGY-Generationen. Selbstverständlich kann sich hierbei ein Vergleich nur auf die
Gesamtsysteme und nicht auf einzelne Komponenten beziehen, da sowohl die eingesetzte Hardware
(Chipsatz, Controller etc.) als auch Software (OS, Datenbank etc.) ständig weiterentwickelt werden. Eine mit
dem OLTP-Benchmark vermessene Systemkonfiguration muss nicht zwangsläufig bestellbar sein.
Insbesondere 2-Prozessor- und flache Rack-Systeme sind nicht unbedingt als Server für große
Datenbanken geeignet. Bei der Entwicklung neuer PRIMERGY-Systeme helfen OLTP-Messungen, etwaige
Mängel in der Systemkonfiguration aufzuzeigen. Erkenntnisse darüber, ob bestimmte Komponenten noch
nicht ausgereift sind oder Engpässe verursachen, helfen der Entwicklung, ein neues System zur Marktreife
zu führen. Darüber hinaus sind auch in der Vorbereitungsphase zu den aufwendigen TPC-C-Messungen
OLTP-Messungen ein geeignetes Verfahren, ein System und seine Umgebung zu optimieren.
Der OLTP Benchmark gibt keine Auskunft über die Kosten der Testkonfiguration. Anders als bei TPC-C ist
damit auch keine Kosten/Nutzen-Relation (Preis pro tpmC) möglich. Des Weiteren sind auch Aspekte der
Ausfallsicherheit wegen des hiermit verbundenen Hardware- und Zeitaufwands anders als bei TPC-C nicht
Bestandteil des OLTP-Benchmarks. Die hierfür notwendigen Hardware-Aufwendungen beeinflussen primär
die Kosten des Systems. Soweit die bezüglich Ausfallsicherheit notwendigen Hardware-Komponenten für
das jeweilige PRIMERGY-System bestellbar sind, ist also grundsätzlich eine ähnliche Ausfallsicherheit wie
bei TPC-C erwartbar.
Das Messumfeld bei TPC-C stellt sich als 3-tier Umgebung bestehend aus Server, Clients und RTEs zur
Simulation der Benutzerlast und Netzwerktopologie dar. Bei OLTP-Messungen handelt es sich um eine 2-tier
Umgebung, bei der die Lastgenerierung durch die RTEs von den Clients im Batchmodus übernommen wird.
Hier existiert also keine Terminalemulation.
Nach dem Reglement des TPC-Konsortiums darf man keine Messung, die nicht gemäß TPC-C-Regeln
auditiert wurde, zu einem TPC-C-Ergebnis in Bezug setzen. Zwar liefern beide Benchmarks eine Anzahl
Transaktionen pro Minute und typischerweise wird bei den Messungen die gleiche Applikations-Software
verwendet, jedoch nutzen beide Benchmarks unterschiedliche Methoden zur Simulation der Benutzerlast. So
entstehen ähnliche Messergebnisse, die erfahrungsgemäß auch nur wenig voneinander abweichen. TPC-C
Werte müssen immer zusammen mit der Preis Performance Angabe (Preis pro tpmC) verwendet werden.
Die Ergebnisse des OLTP-Benchmarks enthalten keine Preisangabe. Sie werden lediglich dazu verwendet,
die Skalierung innerhalb der PRIMERGY-Familie zu bewerten.
Schlussbetrachtung
Betrachtet man die große Komplexität der Datenbank und des Transaktionsmixes, so kommt man mit den
erzielten Messwerten Durchsatzwerten aus echten Geschäftsabläufen recht nahe. Die im OLTP-Benchmark
verwendete Maßeinheit ist daher nicht synthetisch, sondern durchaus repräsentativ für die reale
Geschäftswelt. Es ist jedoch zu beachten, dass dies für viele, jedoch nicht alle OLTP-Umgebungen gilt. Bis
zu welchem Grade Kunden OLTP-Benchmark-typische Durchsatzwerte erreichen können, hängt in hohem
Maße davon ab, wie ähnlich sich Datenbank und Applikation eines Kunden im Vergleich zu denen des
OLTP-Benchmarks tatsächlich sind. OLTP-Ergebnisse bieten daher zwar einen Anhaltspunkt für in
Kundenumgebungen erreichbare Durchsatzwerte. Einfache Extrapolierungen auf diese können aber nicht
empfohlen werden. Systemperformance und damit auch Benchmark-Ergebnisse sind extrem abhängig von
Systemauslastung, applikationsspezifischen Anforderungen, Systemdesign und –implementation. Der OLTPBenchmark kann daher das Benchmarken einer Kundenapplikation nicht ersetzen.
TPC-C ist ein idealer Benchmark zum Vergleich von OLTP-Systemkonfigurationen verschiedener Hersteller.
Wegen des hohen Messaufwandes bei TPC-C existiert jedoch nur eine relativ geringe Zahl von TPC-CErgebnissen. Die hierbei vermessenen Systemkonfigurationen sind im Allgemeinen High-End-
© Fujitsu Technology Solutions 2009
Seite 4 (6)
White Paper ⏐Benchmark Ueberblick OLTP
Version: 2.2, Oktober 2003
Konfigurationen, die Bedürfnisse von Kunden oft weit übertreffen. Daher bietet TPC-C keine guten
Grundlagen für stichhaltige Aussagen zur Skalierung von Systemen. Dieser systemimmanente Mangel wird
durch den OLTP-Benchmark mit seiner stark vereinfachten Messmethodik behoben. OLTP-Ergebnisse
ermöglichen damit sowohl ein Fine-Tuning auf der Systemkomponentenebene als auch fundierte Aussagen
über den Performance-Gewinn neuer Modelle der PRIMERGY Server-Familie.
© Fujitsu Technology Solutions 2009
Seite 5 (6)
White Paper ⏐Benchmark Ueberblick OLTP
Version: 2.2, Oktober 2003
Literatur
PRIMERGY Systems
http://de.ts.fujitsu.com/primergy
PRIMERGY Performance
http://de.ts.fujitsu.com/products/standard_servers/primergy_bov.html
TPC-C
http://www.tpc.org/tpcc
Benchmark Überblick TPC-C
http://docs.ts.fujitsu.com/dl.aspx?id=8d633e1e-8b44-4c5a-800f-7a1319649081
OLTP
Benchmark Überblick OLTP
http://docs.ts.fujitsu.com/dl.aspx?id=d1a1f3ac-f54f-4135-8a37-f312e598ac03
TPC-E
http://www.tpc.org/tpce
Benchmark Überblick TPC-E
http://docs.ts.fujitsu.com/dl.aspx?id=08c95eef-5f18-4453-bed6-cbf9363f4e2f
OLTP-2
Benchmark Überblick OLTP-2
http://docs.ts.fujitsu.com/dl.aspx?id=743d7d46-56e8-41d2-9d50-9ab29ccf4d18
Kontakt
PRIMERGY Hardware
PRIMERGY Product Marketing
mailto:[email protected]
PRIMERGY Performance und Benchmarks
PRIMERGY Performance und Benchmarks
mailto:[email protected]
Lieferung vorbehaltlich Verfügbarkeit, technische Änderungen ohne
Vorankündigung möglich, Korrektur von Irrtümern und Auslassungen
vorbehalten.
Alle angegebenen Konditionen (TCs) sind empfohlene Einstandspreise in
Euro ohne MwSt. (sofern im Text nicht anderweitig angegeben). Sämtliche
verwendete Hardware- und Software- Namen sind Handelsnamen und/oder
Warenzeichen ihrer jeweiligen Hersteller.
Copyright © Fujitsu Technology Solutions GmbH 2009
Herausgegeben durch:
Internet:
http://ts.fujitsu.com/primergy
Enterprise Products
PRIMERGY Server
PRIMERGY Performance Lab
mailto:[email protected]
Extranet:
http://partners.ts.fujitsu.com/com/products/serv
ers/primergy
Herunterladen