How to tell if you`re heading for The Wall

Download Report

Transcript How to tell if you`re heading for The Wall

DB-13: Database Health Checks
How to tell if you’re heading for The Wall
Richard Shulman
Principal Support Engineer
If this was about the song…

Outside the Wall (Waters) 1:42
All alone, or in two's,
The ones who really love you
Walk up and down outside the wall.
Some hand in hand
And some gathered together in bands.
The bleeding hearts and artists
Make their stand.
And when they've given you their all
Some stagger and fall, after all it's not easy
Banging your heart against some mad bugger's wall.
“Isn't this where...."
DB-13: Database Health Checks
2
© 2006 Progress Software Corporation
Introduction
How to tell if you’re heading for The Wall
 Introduction
• What is the “Wall”?
• Business interest in Enterprise Databases
• How OpenEdge® fits the bill
 There are real life constraints
 We call these constraints (The Walls)
DB-13: Database Health Checks
3
© 2006 Progress Software Corporation
Agenda
How to tell if you’re heading for The Wall




What is the Wall?
Business Focused Metrics
• If you can’t measure – you won’t improve
FURPS model for evaluation
We call these constraints (The Walls)
• Different kinds of Wall?
• What tools can help to see The Wall?
• What steps to take to avoid The Wall?
• What else can you do with the data?
DB-13: Database Health Checks
4
© 2006 Progress Software Corporation
What is the “Wall”?
The “Wall” is anything that
can cause a database
or application slowdown
or outage for a reason
which could have been
proactively avoided.
Image from www.havingasoftware.nl
DB-13: Database Health Checks
5
© 2006 Progress Software Corporation
Agenda
How to tell if you’re heading for The Wall




What is the Wall?
Business Focused Metrics
• If you can’t measure – you won’t improve
FURPS model for evaluation
We call these constraints (The Walls)
• Different kinds of Wall?
• What tools can help to see The Wall?
• What steps to take to avoid The Wall?
• What else can you do with the data?
DB-13: Database Health Checks
6
© 2006 Progress Software Corporation
Business Focused Metrics
If you can’t measure – you won’t improve

What do you measure?

When should you measure?

Whose time is your money measured by
(customer time or company time)?
DB-13: Database Health Checks
7
© 2006 Progress Software Corporation
Agenda
How to tell if you’re heading for The Wall




What is the Wall?
Business Focused Metrics
• If you can’t measure – you won’t improve
FURPS model for evaluation
We call these constraints (The Walls)
• Different kinds of Wall?
• What tools can help to see The Wall?
• What steps to take to avoid The Wall?
• What else can you do with the data?
DB-13: Database Health Checks
8
© 2006 Progress Software Corporation
Pick a Metric
(if you don’t like this one find a metric you like)
 FURPS
•
•
•
•
•
Functionality
Usability
Reliability
Performance
Supportability
DB-13: Database Health Checks
9
© 2006 Progress Software Corporation
Agenda
How to tell if you’re heading for The Wall




What is the Wall?
Business Focused Metrics
• If you can’t measure – you won’t improve
FURPS model for evaluation
We call these constraints (The Walls)
• Different kinds of Wall?
• What tools can help to see The Wall?
• What steps to take to avoid The Wall?
• What else can you do with the data?
DB-13: Database Health Checks
10 © 2006 Progress Software Corporation
Constraints – AKA The Walls
 2 billion recid limit - depends on how you slice




and dice it
File system limits
Memory limits
User load
Inefficient code
DB-13: Database Health Checks
11 © 2006 Progress Software Corporation
How soon will you hit the 2 billion record limit
-- depends on how you slice and dice it.
I have seen the writing on the Wall




2 billion recids / 256 (records per block)
= 8192000 blocks
2 billion recids / 4 (records per block)
= 524288 blocks
2 billion recids / 1 (record per block)
= 2 billion blocks
VST’s _areastatus._areastatus-rmnum
DB-13: Database Health Checks
12 © 2006 Progress Software Corporation
2 Billion Record limit continued
Fragmentation is a Killer – AKA Another Brick in the Wall Part 1
 Fragments use record slots too.
 Small records + time + updates to records
= larger records (maybe fragmented records)
 Records > database blocksize
= fragmented records
DB-13: Database Health Checks
13 © 2006 Progress Software Corporation
2 Billion Record limit continued
 ( Blob or Clob) / 32K = # of recids used
 Can use large numbers of recids quickly
DB-13: Database Health Checks
14 © 2006 Progress Software Corporation
File System
Another Brick in the Wall Part II
 OS Support + File System Format + Progress



EnableLargeFiles = Large File Support
If you share space with others will they play
nice with you?
Only Enterprise license allows large file
support
File Descriptors
DB-13: Database Health Checks
15 © 2006 Progress Software Corporation
Memory
Another Brick in the Wall Part III



32-bit OS’s limit 32-bitly
64-bit OS’s don’t
(but Progress picked an arbitrary limit)
More users = more memory either by client or by
server
DB-13: Database Health Checks
16 © 2006 Progress Software Corporation
User Load
Another Brick in the Wall Part IV





More requests for data
More CPU load
More disks or different arrangement
More memory
More semaphores
DB-13: Database Health Checks
17 © 2006 Progress Software Corporation
Inefficient Code
Another Brick in the Wall Part V
How easy is it to overwhelm your system with bad
code? So easy it will make you cry.
Any database (Progress or otherwise) can be
overwhelmed with bad code.

More records

More disk and CPU time

More network bandwidth
DB-13: Database Health Checks
18 © 2006 Progress Software Corporation
Agenda
How to tell if you’re heading for The Wall




What is the Wall?
Business Focused Metrics
• If you can’t measure – you won’t improve
FURPS model for evaluation
We call these constraints (The Walls)
• Different kinds of Wall?
• What tools can help to see The Wall?
• What steps to take to avoid The Wall?
• What else can you do with the data?
DB-13: Database Health Checks
19 © 2006 Progress Software Corporation
What tools can help to see The Progress Wall?
Tools to help see the wall
Tool
Frequency
 Prostrct statistics (monthly)
 Prostrct list
(as needed)
 Proutil dbanalys
(weekly)
 statParse.p
(monthly)
 VST’s
(program dictated)
 Top
 Your favorite OS tool
DB-13: Database Health Checks
20 © 2006 Progress Software Corporation
Prostrct Statistics & Prostrct List

Prostrct Statistics
• To see high water mark of area

Prostrct List
• To see records per block
• To see area extent information
• Visible output is better than file output
DB-13: Database Health Checks
21 © 2006 Progress Software Corporation
Proutil dbanalys
 Number of records
 Mean Size of records
 Scatter Factor
 Fragment Factor
 Number of Index blocks
 Utilization of Index blocks
DB-13: Database Health Checks
22 © 2006 Progress Software Corporation
statParse.p
 Per Area listing of highwater mark and

maximum block number based on RPB
Notification if area is close to block limit
based on high water mark
DB-13: Database Health Checks
23 © 2006 Progress Software Corporation
VST’s
 _area and _areastatus VST can provide live
monitoring of some of the important data
related to Maximum size of each area
 _areaextent can show the per file listing of
size
DB-13: Database Health Checks
24 © 2006 Progress Software Corporation
Agenda
How to tell if you’re heading for The Wall



Business Focused Metrics
• If you can’t measure – you won’t improve
FURPS model for evaluation
We call these constraints (The Walls)
• What is the Wall?
• What tools can help to see The Wall?
• What steps to take to avoid The Wall?
• What else can you do with the data?
DB-13: Database Health Checks
25 © 2006 Progress Software Corporation
What steps to take to avoid The Wall?


An ounce of
prevention….
A pound of cure…
Early versus Late Which price do you want to pay?
DB-13: Database Health Checks
26 © 2006 Progress Software Corporation
If only I had….
 Correct choice of records per block can:
• Improve performance
• Improve space utilization on disk
• Improve memory utilization in the buffer pool
 Compaction of indices can save space
 Proutil –C MvSch
DB-13: Database Health Checks
27 © 2006 Progress Software Corporation
Proper Planning
Avoiding the wall
Things to “Plan For”:
 New user load
 Batch job duration
 Maintenance windows duration
 Backup and Restore times
No tool can totally replace proper planning!
DB-13: Database Health Checks
28 © 2006 Progress Software Corporation
Agenda
How to tell if you’re heading for The Wall



Business Focused Metrics
• If you can’t measure – you won’t improve
FURPS model for evaluation
We call these constraints (The Walls)
• What is the Wall?
• What tools can help to see The Wall?
• What steps to take to avoid The Wall?
• What else can you do with the data?
DB-13: Database Health Checks
29 © 2006 Progress Software Corporation
What else can you do with the data?
Preventing the foundation for the wall
 Growth trending
 Monitor high scatter per table
 Monitor high fragmentation per table
 When is a variable extent growing
DB-13: Database Health Checks
30 © 2006 Progress Software Corporation
Demonstration
 Small demonstration of some Progress®
scripts and code
 Sample output generated by our Reports
DB-13: Database Health Checks
31 © 2006 Progress Software Corporation
Questions?
DB-13: Database Health Checks
32 © 2006 Progress Software Corporation
Where to find more information
Progress Tech Support Solution Center
Progress Technical Support
DB-13: Database Health Checks
33 © 2006 Progress Software Corporation
Thank you for
your time
DB-13: Database Health Checks
34 © 2006 Progress Software Corporation
DB-13: Database Health Checks
35 © 2006 Progress Software Corporation