The Oracle Tuning Methodology consists of 10 ordered steps. Tune the:
- Business Rules
- Data Design
- Application Design
- Database Logical Design
- Database Operations
- Access Paths
- Memory
- Physical Database Implementation
- Resource Contention
- Platform
Broadly, the steps divide into Application Tuning and Database Tuning. Divide them more specifically into:
Application Tuning = steps 1, 2, 3
Database Design Tuning = steps 4, 5, 6
Server Tuning = steps 7, 8, 9, 10
To tune you must:
- Establish a benchmark (initial performance profile prior to tuning)
- Define specific tuning goals
- Measure progress towards those goals
- Keep statistics (to create the benchmark & measure improvements on it)
- Tuning measurements:
- Throughput – A measurement of how much work the system performs over a time period
- Response Time – How long it takes for a user to get a response from the system
- There are three key hardware resources to optimize:
- CPU
- Disk
- Memory
- There are three kinds of systems or applications:
Transactional - Many users, short DML transactions. Usually short rows favoring small block sizes. Values maximum throughput. Examples: inventory management or order taking. Aka (Also known as) Online Transaction Processing or OLTP.
- Decision Support - Few to no updates (all updates are done during mass insertion or batch update in off-hours). Big read-only queries do full table scans (FTS). Favors large block size and tuning for scans. Might benefit from such features as bitmapped indexes and materialized views. Values response time. Examples: management information systems. Aka Decision Support Systems (DSS) or Data Warehouses (DW).
- Hybrid - A mixture of OLTP and DSS/DW systems. Hard to tune since the goals and tuning parameters (parms) of the two basic types of systems conflict. If you can separate OLTP and DSS/DW and put them on different platforms, your tuning task is way easier.
To collect timing statistics, set TIMED_STATISTICS=TRUE in the init.ora (default is FALSE). This requires recycling the instance. Or you can dynamically issue:
ALTER SYSTEM SET TIMED_STATISTICS = TRUE ; This populates statistics into the data dictionary for the V$ views, UTLBSTAT/UTLESTAT utilities, and SQL Trace (aka TKPROF). (Use of these tools is explained below.)
Next Coming: Oracle Tuning Flow-chart
3 comments:
put some more document and usefull links which help full for database related search
Basic info. about oracle tuning is good. Put more about this.
Good one but it would be better if you could write more about each tuning steps and interrelationships between each of them.
Post a Comment