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

What is a data dictionary, What is a data dictionary?  A data dictionar...

What is a data dictionary?  A data dictionary is a data structure which keeps Meta data about the structure of the database i.e.  the schema of the database.

Determine the Disadvantages of file based systems, Determine the Disadvanta...

Determine the Disadvantages of file based systems Some of the disadvantages of file based systems are like this: Data redundancy and inconsistency: the dissimilar applic

Define what Immediate database modification technique uses, Define what Imm...

Define what Immediate database modification technique uses?  Ans: Both undo and redo.

Relation and relational schema, A relation has: Relational Schema ...

A relation has: Relational Schema Relation instance Relational Schema: A relational schema shows the relation's name, its attributes and the domain of every a

Using column aliases-data manipulation language, Using Column aliases E...

Using Column aliases Example: To print column names as NAME and ANNUAL SALARY SELECT ENAME "NAME", SAL*12 "ANNUAL SALARY" FROM EMP;

Transaction, .#question. Discuss the problem which may arise during concurr...

.#question. Discuss the problem which may arise during concurrency control and recovery in distributed database which are not encountered in controlized database environment.

What is data defination language, What is DDL? Make a list of commands with...

What is DDL? Make a list of commands with short description used in DDL Ans: Data Definition Language that is abbreviated as DDL is a computer language for defining data struct

Serialisable schedules, Serialisable Schedules: If the processes of two tra...

Serialisable Schedules: If the processes of two transactions conflict with each other, how to verify that no concurrency related problems have happened? For this, serialisability t

Explain the timestamps for read operations, Timestamps For Read operations:...

Timestamps For Read operations: If TS (T) If TS (T) >= W-timestamp (Q), then the transaction T is trying to read a value of data item Q which has been written and committed

Self-join, Self-Join:   In a self join a table is joined with itself.  Let ...

Self-Join:   In a self join a table is joined with itself.  Let consider the following sample partial data of EMP table EMPNO ENAME MGRID

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