Dbms 3 sem
-
Upload
anusha-adhikar -
Category
Business
-
view
151 -
download
3
description
Transcript of Dbms 3 sem
Prepared by: Anusha Adhikar BBA Sem 3
Prepared by: Anusha Adhikar BBA Sem 3
AMITY GLOBAL BUSINESS SCHOOL
2
Goal of database performance is to execute queries as fast as possible
Database performance tuningSet of activities and procedures designed to
reduce response time of database system
3
Database performance-tuning activities can be divided into:Client side
Objective is to generate SQL query that returns correct answer in least amount of time, using minimum amount of resources at server end
SQL performance tuning
4
Database performance-tuning activities can be divided into (continued):Server side
DBMS environment must be properly configured to respond to clients’ requests in fastest way possible, while making optimum use of existing resources
DBMS performance tuning
5
All data in database are stored in data files
Data filesAutomatically expand in predefined
increments known as extendsGenerally grouped in file groups of table
spaces Table space or file group is logical
grouping of several data files that store data with similar characteristics
6
DBMS retrieve data from permanent storage and place it in RAM
Data cache or buffer cache is shared, reserved memory area that stores most recently accessed data blocks in RAM
SQL cache or procedure cache is shared, reserved memory area that stores most recently executed SQL statements or PL/SQL procedures, including triggers and functions
7
An input/output request is low-level (read or write) data access operation to/from computer devices
Working with data in data cache is many times faster than working with data in data files because DBMS doesn’t have to wait for hard disk to retrieve data
Majority of performance-tuning activities focus on minimizing number of I/O operations
8
Listener User Scheduler Lock manager Optimizer
9
Refers to number of measurements about database objects and available resourcesTables IndexesNumber of processors usedProcessor speedTemporary space available
10
Make critical decisions about improving query processing efficiency
Can be gathered manually by DBA or automatically by DBMS
11
DBMS processes queries in three phasesParsingExecutionFetching
12
13
Query optimizer analyzes SQL query and finds most efficient way to access data
Access plans are DBMS-specific and translate client’s SQL query into series of complex I/O operations required to read the data from the physical data files and generate result set
14
Rows of resulting query result set are returned to client
DBMS may use temporary table space to store temporary data
15
IndexesCrucial in speeding up data accessFacilitate searching, sorting, and using
aggregate functions as well as join operations
Ordered set of values that contains index key and pointers
More efficient to use index to access table than to scan all rows in table sequentially
16
Rule-based optimizerUses set of preset rules and points to
determine best approach to execute query Cost-based optimizer
Uses sophisticated algorithms based on statistics about objects being accessed to determine best approach to execute query
17
Evaluated from client perspectiveMost current-generation relational DBMSs
perform automatic query optimization at the server end
Most SQL performance optimization techniques are DBMS-specific and are rarely portable
18
Indexes are likely used when: Indexed column appears by itself in search
criteria of WHERE or HAVING clause Indexed column appears by itself in GROUP
BY or ORDER BY clauseMAX or MIN function is applied to indexed
columnData sparsity on indexed column is high
Measure of how likely an index will be used
19
General guidelines for creating and using indexes:Create indexes for each attribute in WHERE,
HAVING, ORDER BY, or GROUP BY clauseDo not use in small tables or tables with low
sparsityDeclare primary and foreign keys so optimizer
can use indexes in join operationsDeclare indexes in join columns other than
PK/FK
20
Normally expressed within WHERE or HAVING clauses of SQL statement
Restricts output of query to only rows matching conditional criteria
21
22
Identify what columns and computations are required
Identify source tables Determine how to join tables Determine what selection criteria is
needed Determine in what order to display
output
23
Includes global tasks such as managing DBMS processes in primary memory and structures in physical storage
Includes applying several practices examined in previous section
24
DBMS performance tuning at server end focuses on setting parameters used for:Data cacheSQL cacheSort cacheOptimizer mode
25
Some general recommendations for creation of databases:Use RAID (Redundant Array of Independent
Disks) to provide balance between performance and fault tolerance
Minimize disk contentionPut high-usage tables in their own table
spaces
26
Some general recommendations for creation of databases (continued):Assign separate data files in separate
storage volumes for indexes, system, and high-usage tables
Partition tables based on usageUse denormalized tables where appropriateStore computed and aggregate attributes in
tables
27