Stop Thinking, Just Do!

Sungsoo Kim's Blog

TPC Benchmark

tagsTags

11 June 2014



TPC Benchmark

  • CPU : SPECint, SPECfp, SPECint_rate, SPECfp_rate
  • OLTP : TPC-C
  • Data Warehousing : TPC-H
  • Web : SPECweb96, SPECweb99, SPECweb99_SSL
  • Java : SPECjbb2000
  • Oracle : Oracle Standard Benchmark
  • SAP
  • SAP R/3 2-tier, 3-tier
  • SAP ATO (Assemble to Order) 2-tier. 3-tier

TPC-C Overview

TPC

  • 비교적 복잡한 OLTP 트랜잭션
  • TPC 조직이 2 년에 걸쳐 개발한 결과
  • 전형적인 주문입력 시스템을 기본 구조로 설정하여 벤치마크를 위한 개념 설립
  • 주문관리 도매상 어플리케이션을 모델로 설정
  • 5개 유형의 트랜잭션으로 구성된 워크로드
  • 처리량에 따른 사용자 및 Database의 증가
  • Full-Screen 사용자 인터페이스를 SPEC 정의
  • 1분 당 신규 주문 처리 건수(tpmC) 및 가격 대비 성능($/tpmC)에 대한 값을 측정
  • 1992년 7월 23일 TPC-C 테스트 승인
  • 현재 Version 5 발표

TPC-C Workload

  • OLTP Transaction 유형 (80년대말~90년대초 표준)
  • New-order : 고객으로부터 새로운 주문 입력
  • Payment : 고객의 지불 처리 및 잔고 Update
  • Delivery : 주문 처리 (Batch 작업)
  • Order-status : 고객의 가장 최근 주문 상태 확인
  • Stock-level : 창고의 재고현황을 모니터링
  • 한 개의 Database와 9개의 Table로 구성
  • Update, Insert, Delete 및 Abort Transaction으로 구성 (Primary or Secondary Key Index).
  • 응답시간 요구사항 : 90% 이상의 Transaction이 5초 이하의 응답시간, Stock-level Transaction의 경우는 20초 이하
  • 현재 1위 : IBM eServer p5 595 64p

TPC-H Overview

TPC-H Benchmark (DW, BI)

  • 의사 결정 시스템과 같은 Decision Support Benchmark Test
  • 실제 비즈니스 상황을 반영한 대용량 Database에 대한 복잡한 22개의 Ad-hoc 쿼리 및 2개의 데이터 조작 문장으로 구성

TPC-H에 사용되는 쿼리문

  • 실제 비즈니스 상황에서 필요로 하는 ad-hoc 쿼리문으로 구성
  • 일반적인 OLTP 트랜젝션에 비해 훨씬 복잡함
  • 광범위한 조작과 제약(Constraints) 포함
  • CPU 성능 외 Memory, I/O 등 데이터베이스 전반적인 부품에 대한 집중적인(intensive) 부하 발생
  • 대용량의 데이터베이스에 대한 요구

TPC-H 단위

  • QphH@Size (TPC-H Composite Query per Hour)
  • Size는 Benchmark에 사용된 데이터베이스의 크기로 1GB, 10GB, 30GB, 100GB, 300GB, 1000GB, 3000GB, 10000GB의 몇 가지 지정된 크기를 명시함. 이 Database 크기는 Scale Factor(SF)로 TPC-H 산출 공식에서 사용
  • 사용된 Database의 크기가 1GB 이면 SF=1, 3TB이면 SF=3000

TPC-H의 결과

  • TPC-H 값이 3000 QphH@300GB라면 이 수치의 의미는 300GB 용량의 Database에서 3000/300 = 10개의 Adhoc Query를 한시간에 수행할 수 있는 능력을 의미 (SF=300)
  • Database의 Size가 다른 QphH의 비교는 무의미하며 잘못된 결과를 초래할 수 있으므로 주의
  • 현재 1위 : Sun Fire[TM] E25K server

SPEC Overview

Standard Performance Evaluation Corporation

SPECcpu2000

  • Processor, Memory, Compiler 등과 같은 Unit이 얼마나 뛰어난가 측정하는 표준
  • 정수 및 실수 (부동 소수점) 에 대해 연산 위주의 작업을 수행하여 결과를 측정
  • SPECint: 하나의 정수연산을 얼마나 빠르게 수행하는가? Speed에 대한 측정
  • SPECfp: 하나의 실수연산을 얼마나 빠르게 수행하는가? Speed에 대한 측정
  • SPECint_rate: 주어진 시간동안에 얼마나 많은 정수연산 작업을 수행하는가? 대역폭에 대한 측정
  • SPECfp_rate: 주어진 시간동안에 얼마나 많은 실수연산 작업을 수행하는가? 대역폭에 대한 측정

SPECweb

  • SPECweb96: 정적 환경의 Web Server에 대한 성능 측정 (HTML, Image Downloading)
  • SPECweb99: 동적 환경의 Web Server에 대한 성능 측정 (DHTML, CGI etc)
  • SPECweb_SSL: SSL 기반의 암호화 기법이 적용된 Web Server에 대한 성능 측정

comments powered by Disqus