Superchaging big production systems on Firebird: transactions, garbage, maintenance
Upcoming SlideShare
Loading in...5
×
 

Superchaging big production systems on Firebird: transactions, garbage, maintenance

on

  • 1,644 views

Firebird performance optimization

Firebird performance optimization

Statistics

Views

Total Views
1,644
Views on SlideShare
1,639
Embed Views
5

Actions

Likes
0
Downloads
24
Comments
0

1 Embed 5

https://eagle.cc.kuleuven.be 5

Accessibility

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Superchaging big production systems on Firebird: transactions, garbage, maintenance Superchaging big production systems on Firebird: transactions, garbage, maintenance Presentation Transcript

  • © IBSurgeon 2011SUPERCHARGING BIGPRODUCTION SYSTEMS ONFIREBIRD:TRANSACTIONS, GARBAGE, MAINTENANCEDmitry Kuzmenko, IBSurgeon
  • © IBSurgeon 2011What is big?• 10 users, 1gb database?• 100 users, 1gb database?• 5 users, 100gb database?• Any system, that have performanceproblems
  • © IBSurgeon 2011Steps to tune performance1. Hardware 1. Processor, Memory, Disks 2. Virtual machines2. Transactions3. Versioning4. Queries• Everything need to be able logged and monitored
  • © IBSurgeon 2011Transactions• What is happening in the system• What about transaction control in applications (good/bad)• Are there unnecessary active transactions
  • © IBSurgeon 2011IBTM: Transactions monitoring
  • © IBSurgeon 2011Active transactions
  • © IBSurgeon 2011Versioning• Do we need to set sweep interval to 0?• If yes, when it’s better to run gfix –sweep ?• Where versions are, and how much• What is garbage?• What is the cause of versions?
  • © IBSurgeon 2011IBAnalyst
  • © IBSurgeon 2011
  • © IBSurgeon 2011
  • © IBSurgeon 2011What business logic causes versionsgrow?• Understandable via special UDFs • Udf writes some parameters to some file • Udfs are called in INSERT/UPDATE/DELETE triggers on tables, that we want to monitor. • UDFs can be called from procedures to understand begin/end of logic block • Intensity can be analyzed by file size • Timestamps and blocks can help to understand logic• Trace API
  • © IBSurgeon 2011Queries• How many queries my application produce?• Does all queries correct and even necessary (obsolete/wrong functionality)?• Which queries take too much time?• How query execution time degrades (if yes)?
  • © IBSurgeon 2011FBScanner
  • © IBSurgeon 20111 day, 84 computers, up to 1350 transactions per minute, up to3200 statements per minute, longest query - 50 seconds
  • © IBSurgeon 20111 application/user monitoredup to 85 transactions per minute (?), up to 4200 sql-operatorsper minute (???)
  • © IBSurgeon 2011What observer can discover?• Users use not only one instance of application• Application runs unnecessary queries• Application use wrong transaction control• Users use application not the way it was designed by developers
  • © IBSurgeon 2011
  • © IBSurgeon 2011What to do next• Ajust (fix) transaction management in applications • Remove unnecessary write transactions • Fix duration of transactions • Legacy applications, lazy users• Garbage • Drop unnecessary indices • If source is available - fix business logic • Closed source and legacy applications – require special maintenance schedule• Queries • Fix plans or change queries • create/drop indices • Try to use stored aggregates
  • © IBSurgeon 2011Summary• IBSurgeon’s supercharge service is based on IBTM, IBAnalyst and FBScanner, to identify and fix problems with transactions, garbage and maintenance• Tools are available to be adopted by any experienced Firebird professionalSpecial offer:–25% for conference attendees till December 31support@ib-aid.comwww.ib-aid.com