DBMS Benchmarks

Download Report

Transcript DBMS Benchmarks

An Intro. to Database Benchmarks
June 2001
Prof. Sang Ho Lee
Soongsil University
[email protected]
1
Benchmarks: What and Why
 To measure the performance of a hardware and software
system in a controlled environment using a standard
methodology
 Performance tests by which different database
hardware/software platforms are compared in terms of
price and performance
 Motivated and driven by database customer demand
(usually, to make acquisition decisions easy)
2
Performance Assurance
 Once you build the system you must do
 Quality assurance: Functionality validation
 Performance assurance: benchmark
• find the performance bugs
• looking for bottlenecks (queues)
 When performance assurance is complete, model can be
used to predict performance on higher loads, new hardware.
This is called “capacity planning”
3
Custom Benchmark vs. Generic Benchmark
 Custom benchmark
 Created by a particular customer based on a specific application
 Can measure precisely capabilities that the customer wants
 Very cost and hard to maintain
 Generic benchmark
 Created to be generally useful for a large group of potential
customers with relatively standard applications across an
application domain
 Also known as domain-specific benchmark
 Hybrid benchmark
 generic benchmark + custom benchmark
4
Popular Benchmarks














Wisconsin benchmark (1983)
TP1/DebitCredit benchmark (1985)
Transaction Processing Council formed (Aug. 1988)
TPC-A (Nov. 1989)
TPC-B (Aug. 1990)
AS3AP (1991)
SUN benchmark (001, object operations version benchmark) (1992)
TPC-C (Jul. 1992)
007 Benchmark (1993)
Sequoia 2000 Storage Benchmark (1993)
TPC-D (Apr. 1995)
BUCKY (1997)
TPC-W (1998)
BORD (2000)
5
How to Normalize Results
 Difficult to compare the performance of the wide variety of
database software/hardware platforms (from IBM
mainframe to PC)
 Current practice
 Requires domain-specific qualifications that must be met
• Example: ACID properties of transaction for OLTP
benchmarks
 Reports two specific measures
• a measure of peak performance, say transactions per second
(tps)
• a measure of price/performance, say dollars per tps
6
Scalar measures vs. Vector measures
 Vector measures allow users to distinguish different
performance effects in terms of functional origins, namely
separability
 Think about pros and cons !
7
Key criteria for domain-specific benchmarks
 Relevance: performs typical operations within the problem
domain
 Portability: easy to implement on many different systems
and architectures
 Scalability: applicable small and large computer systems
 Simplicity: easily understandable otherwise it would lack
credibility
 Vendor neutrality: must not be biased in favor of a
particular implementation
8
Brief history on OLTP benchmarks
 DebitCredit benchmark (1985)
 Anon. et al., “A Measure of Transaction Processing Power”, Datamation
 TP1 benchmark
 an implementation by vendors that typically departs from the DebitCredit
specifications one way or another
 Aug. 1988: Transaction Processing Council formed
 Originally eight vendors, currently 35 vendors joined





Nov. 1989: TPC-A, OLTP with LAN or WAN
Aug. 1990: TPC-B, OLTP with no network
Jul. 1992: TPC-C, On-Line Business Transaction Processing
Jun. 1995: TPC-A/B are frozen
Feb. 2001: TPC-C version 5.0 release
9
Decision support system (DSS) benchmarks
 Decision support system
 relatively small number of users
 mostly read-only queries, seldom update operation
 Queries involve a great many data and indexes, thus use
significantly more resources than OLTP transactions
 data warehouse application
 Wisconsin
 AS3AP
 Set Query
 TPC-D benchmark – obsolete as of June. 1999.
 Separated into TPC-R benchmark and TPC-H benchmark
10
Engineering database benchmarks
 Sun benchmark (001 benchmark)
 W. Rubenstein, M. Kubicar and R. Cattle (ACM SIGMOD 1987)
 R. Cattle, J. Skeen (ACM TODS 1992)
 HyperModel Benchmark
 T. Anderson, et al. (EDBT 1990)
 007 Benchmark
 M. Carley, D. DeWitt, J. Naughton (ACM SIGMOD 1993)
 A Complex Object Benchmark (ACOB)
 D. DeWitt, P. Futtersack, D. Maier and F. Velez
 VLDB conf. 1990
11
How benchmarks are used: Good stories
 Benchmark defines the fields
 Accelerates progress
• Designer can compare approaches
• Users can compare approaches
 Give performance agenda
• Measures release-to-release progress
• Set goals
• Something managers can understand
 Benchmark definition forms a community/vocabulary
 Cross fertilization of people and ideas
 Sharing of knowledge
12
Research issues
 What are good criteria for domain-specific benchmarks
 Currently, relevance, portability, scalability, simplicity
 What about scalar versus vector measures
 How to incorporate actual costs of system ownership
 Multi-user benchmark
 How to achieve saparability of performance effects
 How to develop an analytic framework
 New applications or models
 BLOBs, GIS, IR, Object-relational data model, etc.
13
Comments on benchmarks (1)
 Benchmarking is hard
 Tools are a big help, but each experiment takes a day
 Always do an atomic model first, check reality against the
model
 Keep careful notes
 Change only one thing at a time (controlled experiments)
 Use all the tools you can have: Good luck!
14
Comments on benchmarks (2)
 Watch out (unauthorized) vendor’s claims
 Watch out benchmarketing
 Benchmark result is certainly one thing, but not everything
 Understanding what results say EXACTLY is very important
 Must be aware of underlying platforms, networks and hardware, even
though we are talking about DBMS (or OLTP) performance
 Remember, vendor’s technologies and benchmark specifications
continue to evolve over time
15
References (1)
 T. L. Anderson, A. J. Berre, M. Mallision, H. Poster, and B. Schneider,
The HyperModel Benchmark, Proc. of the Int. Conference on
Extending Database Technology, 1990.
 Anon, et al., A Measure of Transaction Processing Power, Datamation,
1985.
 D. Bitton, D. J. DeWitt, and C. Turbyfill, Benchmarking Database
Systems: A Systematic Approach, Proc. of the Ninth Int. Conference
on Very Large Data Bases, 1983.
 D. Bitton and C. Turbyfill, A Retrospective on The Wisconsin
Benchmark, In: Readings in Database Systems, M. Stonebraker ed.,
Morgan Kaufman, 1988.
 M. J. Carey, D. J. DeWitt, and J. F. Naughton, The OO7 Benchmark,
Proc. of the ACM SIGMOD Conference, 1993.
16
References (2)
 M. J. Carey, D. J. DeWitt, J. F. Naughton, M. Asgarian, P. Brown, J. E.
gehrke, and D. N. Shah, The BUCKY Object-Relational Benchmark,
Proc. of the ACM SIGMOD Conference, 1997.
 M. J. Carey, D. J. DeWitt, C. Kant, and J. F. Naughton, A Status Report
on the OO7 OODBMS Benchmarking Effort, Proc. of the ACM
OOPSLA Conference, 1994.
 R. G. G. Cattell, An Engineering Database Benchmark, In: The
Benchmark Handbook for Database and Transaction Processing
Systems 2nd ed., J. Gray ed., Morgan Kaufmann, 1993.
 R. G. G. Cattell and J. Skeen, Object Operations benchmark, ACM
Transactions on Database Systems, 1992.
 D. J. DeWitt, The Wisconsin Benchmark: Past, Present, and Future, In:
The Benchmark Handbook for Database and Transaction Processing
Systems 2nd ed., J. Gray ed., Morgan Kaufmann, 1993.
17
References (3)
 J. M. Hellerstein and M. Stonebraker, Predicate Migration: Optimizing
Queries with Expensive Predicates, Proc. of the ACM SIGMOD
Conference, 1993.
 W. Kim, Completeness Criteria for Object-Relational Database
Systems, UniSQL Inc, 1996.
 S. H. Lee, S. J. Kim, and W. Kim, The BORD Benchmark for ObjectRelational Databases, Springer-Verlag Lecture Notes in Computer
Science, 2000.
 P. O’Neil, The Set Query Benchmark, In: The Benchmark Handbook
for Database Transaction Processing Systems 2nd ed., J. Gray ed.,
Morgan Kaufmann, 1993.
 P. O’Neil, Database Performance Measurement, In: The Computer
Science and Engineering Handbook, A Tucker ed., CRC Press, 1997.
18
References (4)
 W. B. Rubenstein, M. S. Kubicar, and R. G. G. Cattell, Benchmarking
Simple Database Operations, Proc. of the ACM SIGMOD Conference,
1987.
 H.Schreiber, Justitia – A Generic Benchmark for the OODBMS
Selection, Proc. of the Fourth International Conference of Data and
Knowledge Systems for Manufacturing and Engineering, 1994.
 K. Shanley, History and Overview of the TPC, Tranasaction
Processing Performance Council, www.tpc.org, 1998.
 M. Stonebraker, J. Frew, K. Gardels, and J. Meredith, The SEQUOIA
2000 Storage Benchmark, Proc. of the ACM SIGMOD Conference,
1993.
 M. Stonebraker, Object-Relational DBMSs, Morgan Kaufmann, 1996.
19
References (5)
 Transaction Processing Performance Council, TPC Benchmark C
standard specification version 5.0, www.tpc.org, 2001.
 Transaction Processing Performance Council, TPC Benchmark H
standard specification version 1.3.0, www.tpc.org, 1999.
 Transaction Processing Performance Council, TPC Benchmark R
standard specification version 1.2.0, www.tpc.org, 1999.
 Transaction Processing Performance Council, TPC Benchmark W
version 1.4, www.tpc.org, 2001.
 C. Turbyfill, C. Orji, and D. Bitton, AS3AP: An ANSI SQL Standard
Scaleable and Portable Benchmark for Relational Database Systems,
In: The Benchmark Handbook second edition, J. Gray ed., Morgan
Kaufmann, 1993.
20