Andrew Holdsworth Director, Real World Performance Oracle Corporation Aris Prassinos Distinguished...

17

Transcript of Andrew Holdsworth Director, Real World Performance Oracle Corporation Aris Prassinos Distinguished...

Page 1: Andrew Holdsworth Director, Real World Performance Oracle Corporation Aris Prassinos Distinguished Member of Technical Staff Motorola James Haluska Systems.
Page 2: Andrew Holdsworth Director, Real World Performance Oracle Corporation Aris Prassinos Distinguished Member of Technical Staff Motorola James Haluska Systems.

Andrew HoldsworthDirector, Real World PerformanceOracle Corporation

Aris PrassinosDistinguished Member of Technical StaffMotorola

James HaluskaSystems Engineering ManagerMotorola

Page 3: Andrew Holdsworth Director, Real World Performance Oracle Corporation Aris Prassinos Distinguished Member of Technical Staff Motorola James Haluska Systems.

High Performance with Oracle Database on Linux10g on Linux at Motorola Biometrics Business Unit

Page 4: Andrew Holdsworth Director, Real World Performance Oracle Corporation Aris Prassinos Distinguished Member of Technical Staff Motorola James Haluska Systems.

Topics

• Introduction to Motorola’s application• Application and database metrics• Software stack• Server and storage choices• Standardizing on 10g: features of interest to

Motorola• Best practices for high performance with 10g

on Linux

Page 5: Andrew Holdsworth Director, Real World Performance Oracle Corporation Aris Prassinos Distinguished Member of Technical Staff Motorola James Haluska Systems.

Motorola Printrak BIS

• The Printrak Biometrics Identification Solution (BIS) is an integrated suite of applications implemented by the Motorola Biometrics Business Unit that allow for the capture, processing, search and storage of fingerprints, palmprints, facial images and other biometric data.

• Motorola develops and remotely manages Biometrics Identification Systems for its customers.

Page 6: Andrew Holdsworth Director, Real World Performance Oracle Corporation Aris Prassinos Distinguished Member of Technical Staff Motorola James Haluska Systems.

Motorola Printrak BIS Data

• BIS databases store a variety of data• Fingerprints, palmprints, facial images• Signatures• Text descriptions of persons fingerprinted• Customer business process workflows• Also support storing documents such as job

applications and criminal investigation reports

Page 7: Andrew Holdsworth Director, Real World Performance Oracle Corporation Aris Prassinos Distinguished Member of Technical Staff Motorola James Haluska Systems.

Motorola Printrak BIS Sample Screen

Page 8: Andrew Holdsworth Director, Real World Performance Oracle Corporation Aris Prassinos Distinguished Member of Technical Staff Motorola James Haluska Systems.

Example BIS Deployment

• Used by a foreign country to provide biometric identification supporting:

• production of new civilian identification documents for all citizens • identification of criminals by law enforcement agencies

• System stores two types of biometric data: • Civil: index fingerprints and one front facial image• Criminal: tenprint, palm, latent (crime scene) and up to ten facial images

• Biometric data is submitted for a one-to-many search where the images are compared against some or all of the existing images in the database.

• 1500 remote fingerprint and mugshot capture stations.

Page 9: Andrew Holdsworth Director, Real World Performance Oracle Corporation Aris Prassinos Distinguished Member of Technical Staff Motorola James Haluska Systems.

Application Metrics

Hourly Throughput

Submission Type Submissions / hr Image Size

Tenprint + 4-Finger / Thumb slaps 187 700K (WSQ)

Latent 19 307K (PGM)

2-Finger 1875 2 X 45K (WSQ)

Palm 187 620K (WSQ)

Latent Palm 19 307K (PGM)

Facial 300 59K (JPEG)

Database size: 6TB

Page 10: Andrew Holdsworth Director, Real World Performance Oracle Corporation Aris Prassinos Distinguished Member of Technical Staff Motorola James Haluska Systems.

BIS Software Stack

• J2EE Architecture• Developed on Oracle8i on HP Tru64• Now standardized on Oracle Database 10g on Red

Hat Enterprise Linux 3.0 (i.e., Advanced Server) on Intel (Itanium or Xeon)

• Database editions used:• Standard Edition One (SE 1) for most deployments• Enterprise Edition (EE), no Partitioning, when EE features

required, e.g., Advanced Replication• EE with Partitioning when necessary for performance

Page 11: Andrew Holdsworth Director, Real World Performance Oracle Corporation Aris Prassinos Distinguished Member of Technical Staff Motorola James Haluska Systems.

BIS Deployments: Current Server Choices

•Large Systems (> 4 TB)•HP Integrity rx2600•Dual Itanium 2 1.4 GHz•1.5 MB L3 cache•3 GB RAM

•Medium Systems (1-4 TB)•HP Integrity rx2600•Single Itanium 2 1.4 GHz •1.5 MB L3 cache•3 GB RAM

•Small Systems (< 1 TB)•HP Proliant DL380 G4•Single Xeon 3.4 GHz•1 MB L3 cache•3 GB RAM

Page 12: Andrew Holdsworth Director, Real World Performance Oracle Corporation Aris Prassinos Distinguished Member of Technical Staff Motorola James Haluska Systems.

BIS Deployments: Storage

• Direct attached PCI-SCSI RAID with HP SmartArray 5304 Controller

• 256 MB battery backed write back cache• ext3 file system• RAID5 for datafiles• Three dedicated RAID1 arrays for redo logs 1 and 2

as well as archived logs• 128 MB stripe size• Stripe and Mirror Everything (SAME) not used;

workload is read intensive and the chosen configuration gave good performance at a lower price

Page 13: Andrew Holdsworth Director, Real World Performance Oracle Corporation Aris Prassinos Distinguished Member of Technical Staff Motorola James Haluska Systems.

10g Features Critical to BIS

• LOBs: primary data storage technology• Java Stored Procedures: for enhancing the

capabilities of Motorola’s workflow engine• Text: for searching inside documents• XDB: for managing XML data• Advanced Replication: for redundancy

Page 14: Andrew Holdsworth Director, Real World Performance Oracle Corporation Aris Prassinos Distinguished Member of Technical Staff Motorola James Haluska Systems.

Database Configuration for BIS

• Locally managed tablespaces with automatic segment space management

• Multiple block sizes (16K for LOB tablespaces, 8K for others)

• Automatic undo management• Automatic shared memory management• Automatic PGA memory management• Fast start checkpointing• Automatic statistics collection• Async I/O with one DBWR per CPU and no I/O slaves• Hash partitioning for high throughput

Page 15: Andrew Holdsworth Director, Real World Performance Oracle Corporation Aris Prassinos Distinguished Member of Technical Staff Motorola James Haluska Systems.

Lessons Learned

• Participation in the 10g Beta Program gave a head-start in incorporating new features

• 10.1.0.2 was very high quality; didn’t have to wait for a patchset

• Self-managing features allowed for high performance on low-end servers without excessive tuning

• Very happy with performance improvements in LOBs in 10g

• Only wish Itanium releases didn’t lag other releases• Overall: moving to Linux went very smoothly!

Page 16: Andrew Holdsworth Director, Real World Performance Oracle Corporation Aris Prassinos Distinguished Member of Technical Staff Motorola James Haluska Systems.

Best Practices for 10g on Linux

• Run RHEL 3.0, SuSE 8 or equivalent, or higher• Scales better for SMPs

• I/O scaling much improved

• Fewer limitations on number of I/O devices

• Configure I/O appropriately• Ensure HBAs, switches and arrays are in balance with CPUs

• For DSS applications, have at least 2 GB/s of I/O bandwidth for every 4 Intel (Xeon or Itanium) CPUs

• Turn on Async I/O• Be aware of backplane limitations on cheap servers• 64-bit is not always better; analyze the pros and cons of 32-bit

Page 17: Andrew Holdsworth Director, Real World Performance Oracle Corporation Aris Prassinos Distinguished Member of Technical Staff Motorola James Haluska Systems.