Assignment 2 – Query Optimisation
Query Optimisation代写 This part of the assignment will develop your skills in the area of Query Optimisation. This will involveidentification
Due: Friday 4th October 4:00 pm
Weighting: 20% of final grade
This part of the assignment will develop your skills in the area of Query Optimisation. Query Optimisation代写
This willinvolveidentificationof thebestmethodsforstructuringthedataandwritingthequery.
You will need to start by creating a query on some unstructured data in 3 tables. Unstructureddata can be thought of in this context as a table which does not contain any indexes, and is not clusteredorhashed.Thequerycanbeanequi-joinorasub-query.Yourqueryshouldaim to retrieve 10-15% of the rows in the tables.
The time a query with unstructured data takes to execute will be used as the baseline.Query Optimisation代写
Next, plan how to set up indexes, clusters, andhashclustersforthe same query.
You should then run the query and note the execution times for each of these structures. Recordtheresults. Whendoingthisyoucouldalterthe wayyou setup some ofthese structuresby,forinstance, altering the hash key or what you clustertogetherand note any differences in execution time.Query Optimisation代写
You should by now have determined the optimal data structure in terms of performance. To be confident that your data will make things difficult for Oracle, ensure that:
- thedata is as unordered as possible
- youretrieve a number of rows
Younowhavesomechoices abouthow youmight improvetheSQL statement.Takethe bestoptimisation and try to improve it by inserting hints and swapping the order of the tables in the ‘from’ clause of your query.
The best of these ‘improved’ statements then needs to be tried out using Oracle’s Parallel Query Option.Query Optimisation代写
Don’t overlook explanations of what’s happening at each stage of your experimentation. Justhanding in a listing of a TRACE file without saying what it all means will leave the markerfeelingignored and incapable of awarding marks. An accurate briefcommenton each event is as important as the experiment itself.Query Optimisation代写
The last section of your submission will consist of a short reflective report (maxlength: 300 words) that discusses the effectiveness of Oracle’s query optimizer.
Points to note when designing the experiments
- Thebaseline query must take a sufficiently long time to allow improvements to occur later when tuned.
- Thequery will need to involve a join(s) of tables sothat all data structures canbe used.
- Youmust rebuild the tables and reload the data between tests when altering the data structures.
- Thedata must stay the same for all the test sor
- Youmay need to make designchanges to your tables before all the tests will
- Ifyouleave the assignment to thelast minute you will find the server responses slow because of all the other students also completing assignments at this time
Useful References: Oracle Administrator’s Guide Chapters 16, 18 & 19.Query Optimisation代写
Oracle Performance Tuning Guide Chapters 13, 15 & 16.
Assignment 2 Marking ScheduleQuery Optimisation代写
Name: | |||
Item | Max Mark | Your Mark | Comments |
Preliminary work: | |||
SQL statement complexity | 10 | ||
tables populated properly | 5 | ||
No structures (eg.indexes) in data | |||
Data unordered, data volume | |||
Query Optimisation代写 | |||
Structure: | |||
nil setup | 4 | ||
Design of experiment | |||
observations/conclusions | |||
indexed setup | 10 | ||
Design of experiment | |||
observations/conclusions | |||
clustered setup | 12 | ||
Design of experiment | |||
observations/conclusions | |||
hash cluster setup | 12 | Query Optimisation代写 | |
Design of experiment | |||
observations/conclusions | |||
Statement Tuning: | |||
Hints | 9 | ||
Design of experiment | |||
observations/conclusions | |||
Table Order | 9 | ||
Design of experiment | |||
observations/conclusions | |||
Parallel Query Option | 9 | ||
Setup/ Design of experiment | |||
observations/conclusions | |||
Overall Reflection on Oracle’s Query Optimiser | 12 | ||
General Documentation | 8 | ||
Query Optimisation代写 | |||
Total | 100 |