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

The locking protocol, The Locking Protocol: To manage concurrency related ...

The Locking Protocol: To manage concurrency related problems we use locking. A lock is mainly a variable that is associated with a data item in the database. A lock can be located

What is the used of specifying alias, What is the used of specifying alias?...

What is the used of specifying alias? Specifying alias: is used to rename column or attribute in a table.

Finkelstein methodology, PART MARKING: For this section, we will use part m...

PART MARKING: For this section, we will use part marking. This means we will supply model answers to all questions but we will only mark six questions. We will choose these randoml

Mr.dattu, Define a job scheduling strategy that will meet business requirem...

Define a job scheduling strategy that will meet business requirement of reporting availability by 6am CST for the following cubes? Show the job scheduling dependencies in a pictori

Discuss the concept of data independence, Question: a) Discuss the conc...

Question: a) Discuss the concept of data independence, explaining its importance in a database environment. b) To address the issue of data independence, the ANSI-SPARC t

Load - unload utilities, These permit the user to unload a database or part...

These permit the user to unload a database or parts of a database and reload the data on the similar machine, or on another machine in a dissimilar location. This can be useful in

Whta is the advantage of the database management approach, Whta is the adva...

Whta is the advantage of the database management approach? The advantage of the database management approach is data is integrated and can be accessed by multiple programs.

aggregate functions-data manipulation language, Aggregate functions ...

Aggregate functions Some of these functions are min, count, max, and avg. These functions help in getting consolidated information from a set of tuples. Example:

Ans the following, discuss the array implementation of a stack.

discuss the array implementation of a stack.

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