Improve efficiency in query evaluation, Database Management System

Assignment Help:

Question:

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 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)above. 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:- Improve efficiency in query evaluation

Deadlock and its prevention, Deadlock And Its Prevention: As seen earlier,...

Deadlock And Its Prevention: As seen earlier, though two phase locking protocol handles the trouble of serialisability, but it causes some troubles also. For instance, consider th

Can you delete data element, Can we delete data element, which is being use...

Can we delete data element, which is being used by table fields. No we cant delete data element.

Explain data abstraction, Explain data abstraction? Data abstraction Da...

Explain data abstraction? Data abstraction Data abstraction is a methodology in which enables us to isolate how a compound data object is utilized from the details of how it is

Create table statements for original database, MySQL statements for extendi...

MySQL statements for extending the database to incorporate new facilities Deliverables for submission You must submit the following deliverables in the Assignment Dropbox in

Explain candidate key and super key, Explain Candidate Key and Super Key ...

Explain Candidate Key and Super Key A super key is a set of one or more than attributes that, taken collectively, permits us to identify uniquely a tuple in the relation. Wher

Give two profit of reuse of code, Give two profit of Reuse of Code. Re...

Give two profit of Reuse of Code. Reusing the implementation . Place existing class directly inside a new class. The new class can be made up of any number and type of the oth

What is a data warehouse, Problem 1 What is a Data Warehouse? Mention i...

Problem 1 What is a Data Warehouse? Mention its advantages 2 Explain the Top-Down and Bottom-up Data Warehouse development Methodologies 3 What is Data Transformation? Ex

Timestamp type, Do NOT use the timestamp type.  Use separate date and time ...

Do NOT use the timestamp type.  Use separate date and time data types only.  Figure out how to define an SQL insert statement that uses built-in SQL (or MySQL) functions to define

Attribute, a set of possible data value of an attribute is called??

a set of possible data value of an attribute is called??

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