Ask DBMS Expert


Home >> DBMS

Objectives
- To understand physical database design as a critical element in achieving overall database objectives.
- To have a sound understanding of the use of indexes and the trade-offs that must be considered in their use.
- To understand the concepts of database query optimization.
- To tune database queries using Oracle facilities such as hint and autotrace for better performance

The assignment will be assessed as two parts:

1. Development of Oracle Database and queries
- Implementation of the SQL scripts - part one
Do the database tables have appropriate data & data type?
- Queries Design and Structure
Do the SQL queries conform to the specifications?
Do the SQL queries answer the questions correctly and in a well-designed manner?
Do the queries get an optimized execution plan?
Note: You will demonstrate your program during your lab class in Week 11-12.

2. Database tuning analysis
- The executions of spool files
Provide the spool files including all queries and the execution plans to demonstrate your execution of queries.

- Documentation of Analysis & comparison

5. The Database Description

Chemist Warehouse Group

Chemist Warehouse is the Australia's largest pharmacy retailer. It has over 1000 retail stores nationally and been growing at a rapid rate. Chemist Warehouse Groupemploys over 20,000 staff members including certified pharmacists and front selling clerks. Each store sells over 65,000 productsof healthy related products coming from different suppliers. The products are managed by related departments such as Vitamins; Beauty; Fragrances; Baby Care; Dental; Household; Hair Care; Protein etc.The prescribed medicines must be prepared by registered pharmacists.

Chemist Warehouse Group has got a distributed database systems to manage the operational business within the company. The database records all products, inventory, stores, suppliers, employees and sales information. To help the organization drives sales, marketing, loyalty, and service effectiveness, they also award customers with a VIP program. To ensure high customer numbers, management needs to carefully consider its pricing and VIP discounts. The VIP can be classified into 5 levels: 1: 2% discount for blue member; 2: 4% discount for silver member; 3: 6% discount for gold member; 4: 8% discount for diamond member; 5: 10% discount for platinum member.

The following tables are the partial Database schemaof Chemist Warehouse group.

1521_Figure.jpg

6. The Assignment Description

Phase 2: Tuning queryfor efficient database queries

You answer the following queries. You are studying the impact of different queries. You need to write two or more queries for each question in order to find a better solution. You can use the following different techniques to tune your queries.
- Check the exaction plan to see the impact of different queries you have done. You may have used unnecessary distinct, unnecessary nested sub-queries and unnecessary join or set operators.
- Check if you should define appropriate indexes (bitmap, secondary indexes or a function based indexetc).
- When you are tuning queries, you mayuse Hints. The hints may be used after you have collected statistics on the relevant tables and evaluated the optimizer plan. Monitoring query performance enhancements to see whether any significant impact on queries by hints.
- You need to spool each query execution for the EXPLAIN PLAN of both original queries and optimized/modified queries (if there are any) to learn how the optimizer is executing a query.You understand the optimizer decisions and analyse the EXPLAINPLANand AUTOTRACE results by looking into the execution plans of one query question.
Notice: EXPLAIN PLAN is to get a planbefore the query execution.AUTOTRACEis for actual execution of query
Queries:
1. Find the total sold price for the most expensive Fragrance (category name,the highest unit price) between 01/03/2015 to 31/03/2017 at stores in suburb Bundoora. Write two different queries and find the best performance query.
(Notice: first part of the query is to get the max Product_UnitPriceof Category Fragrance; then write a subquery to get a list of the product_ids whose unit prices are the same as the max Product_UnitPrice at thestoreBundoora.
Hint: Use date function to tell your date format TO_DATE('31/03/2017', 'DD/MM/yyyy'. Using function upper(..) for string comparison)
2. Retrieve the names of Employees who have the same E_level values as Jorge Peres and also are living at the same suburb as Jorge Peres. Write two different queries with nested queries. (hint: you can get the "Jorge Peres-level table" in your FROM clause of SQL query.)
Eg.,
SELECT E.E_fname, E.E_lname
FROM Employ E
(SELCT J.E_level
FROM employ J
WHERE UPPER(J.E_lname) = 'PERES'
AND UPPER(J.E_fname) = 'JORGE') Jlevel, /Jlevel is a table/

WHERE E.E_level = Jlevel.E_level
AND UPPER(E.E_lname) != 'PERES'
AND UPPER(E.E_fname) != 'JORGE';
3. Find the list of stores in Melbourne where those stores' total salesare greater thanthose stores with the lowest total salesin the database. Write two different queries: one has a better performance. (Hint: get the lowest total sales for the store among all stores, then rest stores should be in the list for the answer. Few ways to do it)
An example for a nested subquery in FROM clause:
SELECT Store_IDMIN(ST.sum_column1)
FROM (SELECT store_ID, SUM(sale_price) AS sum_column1
FROM Sale_transct GROUP BY store_ID) ST
)
WHERE ...;
4. Find Melbourne VIP level 4customers' first name, last name who have bought the product named as"Vitamin D " at least 2 times in database. You writethreedifferent queries: one is using operator EXISTS and the other one is using operator IN. The third query with the main filter criteria in FROM clause of the main query. Find one with the better performance.
5. Display the names of products that bought by Female VIPs who are in level 3, level 4, and level 5 (not level 1 or 2) and a list of all products supplied by supplier's postcode 3083. Write two queries.


In phase two, you should have the following files in your submission:
- SQL query scripts file - can be in one YourName-SQL.sql file
- Spool files for executions of queries with their execution plans from SQL*Plus - you can concatenate all spool files into one file for submission.
- The table of your comparisons on database query execution plans and your analysis with your conclusions.

DBMS, Programming

  • Category:- DBMS
  • Reference No.:- M92303225
  • Price:- $40

Priced at Now at $40, Verified Solution

Have any Question?


Related Questions in DBMS

Data mining assignment -in this assignment you are asked to

Data Mining Assignment - In this assignment you are asked to explore the use of neural networks for classification and numeric prediction. You are also asked to carry out a data mining investigation on a real-world data ...

Sql query assignment -for this assignment you are to write

SQL Query Assignment - For this assignment you are to write your answers in a word document. This assignment is in three parts: Part A (reporting queries), Part B (query performance), Part C (query design). For this assi ...

The groceries datasetimagine 10000 receipts sitting on your

The groceries Dataset Imagine 10000 receipts sitting on your table. Each receipt represents a transaction with items that were purchased. The receipt is a representation of stuff that went into a customer's basket. That ...

You are in a real estate business renting apartments to

You are in a real estate business renting apartments to customers. Your job is to define an appropriate schema using SQL DDL in MySQL. The relations are Property(Id, Address, NumberOfUnits), Unit(ApartmentNumber, Propert ...

Objectivethe objective of this lab is to be familiar with a

OBJECTIVE: The objective of this lab is to be familiar with a process in big data modeling. You're required to produce three big data models using the MS PowerPoint software. This tool is available on UMUC Virtual Deskto ...

The relation memberstudentid organizationid roleid stores

The relation Member(StudentId, OrganizationId, RoleId) stores the membership information of student joining organization. For example, ('S1', 'O2', 'R3') indicates that student with Id 'S1' joined the organization with i ...

Relational database exerciseyou have been assigned to a new

Relational Database Exercise: You have been assigned to a new development team. A client is requesting a relational database system to manage their present store with the anticipation of adding more stores in the future. ...

Relational database design a given the following business

Relational Database Design A) Given the following business rules, identify entity types, attributes (at least two attributes for each entity, including the primary key) and relationships, and then draw an Entity-Relation ...

We can represent a data set as a collection of object nodes

We can represent a data set as a collection of object nodes and a collection of attribute nodes, where there is a link between each object and each attribute, and where the weight of that link is the value of the object ...

Data model development and implementationpurpose of the

Data model development and implementation Purpose of the assessment (with ULO Mapping) The purpose of this assignment is to develop data models and map Database System into a standard development environment to gain unde ...

  • 4,153,160 Questions Asked
  • 13,132 Experts
  • 2,558,936 Questions Answered

Ask Experts for help!!

Looking for Assignment Help?

Start excelling in your Courses, Get help with Assignment

Write us your full requirement for evaluation and you will receive response within 20 minutes turnaround time.

Ask Now Help with Problems, Get a Best Answer

Why might a bank avoid the use of interest rate swaps even

Why might a bank avoid the use of interest rate swaps, even when the institution is exposed to significant interest rate

Describe the difference between zero coupon bonds and

Describe the difference between zero coupon bonds and coupon bonds. Under what conditions will a coupon bond sell at a p

Compute the present value of an annuity of 880 per year

Compute the present value of an annuity of $ 880 per year for 16 years, given a discount rate of 6 percent per annum. As

Compute the present value of an 1150 payment made in ten

Compute the present value of an $1,150 payment made in ten years when the discount rate is 12 percent. (Do not round int

Compute the present value of an annuity of 699 per year

Compute the present value of an annuity of $ 699 per year for 19 years, given a discount rate of 6 percent per annum. As