PL/SQL PL/SQL stands for Procedural Language/SQL. PL/SQL extends SQL by adding constructs found…
SQL Database Optimization Justin Kovacich
description
Transcript of SQL Database Optimization Justin Kovacich
Sizing the SQL Server Hardware Table Design Index Design Query Design
Available memory on the server Number of CPUs Desired processor utilization % Clustering Average growth % per year
Data Storage Capacity (Now and Future) Speed of Hard Drives Number of Physical Hard Drives RAID array
Normalization is the concept of abstracting data out of a table and having a pointer to that shared value
Assume everyone has collateral of a car and a house for their loan. Instead of each record carrying car and house, there is a pointer to those names. If “car” changes to “automobile”, it is a simple matter of changing one column in one row, rather than one column in thousands of rows
Bad Solutions◦ Large rows with many columns
Good Solutions◦ Greater number of tables with fewer columns
•Wide tables•Predetermined maximums
•Physically Separated Tables•Logically Combined Data
SELECT b.CustomerID, n.LoanNumber, n.TotalCommitment, c.collat_id
FROM customer b, loan n, collateral cWHERE b.date = '02-28-2007' and b.date = n.dateand b.date = c.dateand b.customerid = n.customeridand b.customerid = c.customeridand n.loannumber = c.loannumberorder by b.customerid, n.loannumber,
n.totalcommitment
Speeds access when joining tables Speeds sort operations Slows INSERTs and DELETEs Indexes are easily added and removed
without impacting the data itself
How frequently will the fields be referenced:◦ WHERE clause◦ ORDER BY clause
Are these tables used more frequently for READs than INSERTs?
Try to join tables on indexed fields Try to join as few tables as possible Try to join on numeric values (Instead of
text) The more specific a WHERE clause, the
quicker your search will be. Never SELECT * from a table, always specify
the desired columns
http://www.sql-server-performance.com http://www.webopedia.com/term/r/raid.html
- Information on RAID hard drives http://technet.microsoft.com/en-us/
magazine/cc165445.aspx - Information on query optimization http://www.edbarlow.com/document/
optimize.html - Information on normalization
What are two benefits of indexes? T/F: Adding indexes changes the data.