Performance tests
It is possible to
achieve accurate performance prediction results by building a real environment
with the expected number of users processing real applications using real data.
In the event of
the non-availability of the production environment replica, a set of vertical/horizontal scalability tests will be carried out on a
given application to determine the CPU/memory trends and this will not be
linear. It has been proven that the polynomial/model can determined reliably if
the environment can be mimicked up to 50%
When performance environment <50% of
production
Linear Projection
A linear projection is anything from
simple diagrams made with spreadsheets to more sophisticated methods. The
accuracy bandwidth of projection tools is about 20% for utilization
CPU
·
CPU
seconds per transaction =Number of CPU’s * CPU Utilization *
3600/Users*Transactions-per-hour-per-user
·
Estimated
CPU Power = Users * Transactions-per-hour-per-user * CPU seconds per
transaction/3600
Memory Sizing
·
Core
system
o
AIX,
daemons, and basic file systems
o
Uses
a standard number
·
Per
user memory
o
To
run processes for users or batch tasks
o
Needs
to be multiplied by the number of users in the system
o
Is
best measured but can be guessed based on experience
·
Disks
Cache
o
For
database-like applications
o
Can
be recommended by the vendor based on data volumes
o
Measured
on other systems of similar data volumes
o
Estimated
as a proportion of the data volumes
·
Application
binary size
o
Should
be measured
Disk Sizing
If
disk I/O rates for the transaction are measured (either physical or logical),
then the disk recommendation can be based on operations per second rather than
purely on disk size. Disks have a known maximum operations per second value.
This allows you to calculate the number of disks for a given workload.
Keep
in mind that a bottleneck is not necessarily bad. While you will always have
bottlenecks, and removing one creates another, removing a bottleneck improves
performance. Other factors provide additional cushion.
Non-linear models
Analytic Models
Based on
mathematical methods, such as the queuing theory, analytic
methods can
provide insight into forecasting CPU utilization, response time evaluation,
capture ratios, effect of buffering, effect of queuing, and so forth. Based on
measured data from today’s environment, various configurations and growth
scenarios are studied and documented. Generally, analytic tools have an
accuracy bandwidth between 8% to 15%
for utilization. This depends on the scenario, level of detail, and provided
data.
Discrete Models
A discrete
method is
an application of discrete simulation. Unlike analytic simulation, discrete
simulation is not based on mathematical formulas. Using discrete capacity
planning methods, dissimilar workloads and their effect on each other are
modeled. Discrete simulation tools usually have an accuracy bandwidth of 5% to 10% for utilization. However, the
accuracy may be more or less than 30% for response time. This depends on the
scenario complexity and level of detail.
Must a model be
perfectly accurate to be effective? Given the nature of modeling, the answer is
No. The true value of modeling lies in its ability to
effectively set expectations with the user community and management. It must
explain what happened if there is a discrepancy between expectations and actual
results. When planning decisions (selecting a new platform, acquiring more
hardware, performance management and tuning decisions, etc.) are based on
intuition, there is a high risk of performance surprises. Modeling helps to
mitigate that risk.
Even when the
results are not 100% accurate, the benefits of modeling are still tremendous:
- Modeling
can help you identify potential bottlenecks, evaluate different performance
management and capacity planning alternatives, justify recommendations, and set
realistic expectations.
- Modeling
reflects how sensitive performance is to proposed or expected workload and
database size growth, scheduling changes, database and application tuning, or
hardware configuration upgrades.
- Performance
prediction results provide a baseline for setting realistic expectations and
improving the quality and effectiveness of proactive performance management.
- Analysis of the trade-off and different alternatives presented are never perfect. However, models improve the level of understanding and communication between database administrators (DBAs), performance analysts, management, and users.
- Models help to plan, manage, and control performance more effectively than intuition alone.
The following list classifies the good, bad and the ugly conditions from the utilization perspective
No comments:
Post a Comment