Query optimization in database system, Database Management System

Assignment Help:

Problem :

AirwaysCentre, an international airline booking company currently uses a relational database system for their operations, which includes the following relations:

PASSENGER(p_no, p_name, p_address, p_phone)
FLIGHT(flight_code, airline_name, from_airport, to_airport, depart_time, arrive_time)
BOOKING(booking_no, p_no, invoice_total, payment_made)
FLIGHT_BOOKING(booking_no, flight_code, flight_date, price)

The following assumptions are made:

  • The flight code is unique, which includes information on an airline and its flight number, for example „BA300?
  • For each flight code, there is only one associated flight on any particular day
  • A passenger may purchase tickets for several different flights under one booking number
  • However, a passenger may not purchase more than one ticket for the same flight under the same booking number
  • The PASSENGER relation contains 2000 records
  • The FLIGHT relation contains 500 records
  • The BOOKING relation contains 5000 records
  • The FLIGHT-BOOKING relation contains 10000 records 
  • Each flight has a maximum of 200 bookable tickets (seats)

(a) Query optimization in database system aims to improve efficiency in query evaluation. One of the stages involved in the query optimization is to convert some internal form of the query representation into its equivalent but more efficient canonical form using the transformation rules.

Demonstrate, by using two query examples based on the above given relations, how appropriate transformation rules can be applied to carry out such a conversion.

(b) Consider the following query based on the above relations and formulate it using correct SQL syntax:

"Find the names and numbers of all passenger who have booked the Air Mauritius flight MK356 for 2nd December 2010".

(c) Specify two possible options to evaluate the query in (b). Express each of these options firstly in relational algebra and secondly in a query tree. Clearly show all the steps required in the evaluation of the query.

(d) For each option identified above, calculate the size (number of records) for each of the immediate relations to be produced at each steps. Recommend the best option based on the results of your calculations.


Related Discussions:- Query optimization in database system

Storage of database on hard disks, Storage Of Database On Hard Disks At...

Storage Of Database On Hard Disks At this point, it is worthwhile to note the difference among the terms file Organisation and the access method. A file organisation shows to t

Prepare a site map and submit it in bing and google, Project Description: ...

Project Description: I am updating my Javascript + HTML website with five domains for the same website I would like to know if I want to create site map and submit it in all the

Define forms based interfaces, Define Forms Based Interfaces? Forms-Bas...

Define Forms Based Interfaces? Forms-Based Interfaces - A forms-based interface display a form to each user. Forms are commonly designed and programmed for naive users and inte

Define the normalisation form, Define in which normalisation form if an att...

Define in which normalisation form if an attribute of a composite key is dependent on an attribute of other composite key. Ans: 3NF A relation is in 3 NF if an attribute of

Which is a valid sql type, Which is a valid SQL type? A valid SQL Shoul...

Which is a valid SQL type? A valid SQL Should be in CHARACTER it is should be NUMERIC and FLOAT.

What is the use of with clause in sql, What is the use of with clause in SQ...

What is the use of with clause in SQL? The with clause gives a way of defining a temporary view whose explanation is available only to the query in which the with clause occurs

What are the desirable properties of a decomposition, Define What are the d...

Define What are the desirable properties of a decomposition Ans: What are the desirable properties of decomposition - dependency preserving.  Because Lossless join and dependen

What is a foreign key, What is a foreign key, and what is it used for? ...

What is a foreign key, and what is it used for? A foreign key is used to establish relationships between relations in the relational model. Technically, a foreign key is a colu

What is called block-level striping, What is called block-level striping? ...

What is called block-level striping? Block level striping stripes blocks across many disks. It treats the array of disks as a large disk, and provides blocks logical numbers

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd