Lossless-join decomposition, Database Management System

Assignment Help:

Lossless-Join Decomposition

 

Let us show an intuitive decomposition of a relation. We require a better basis for deciding decompositions since intuition may not always be right. We show how a careless decomposition may lead to problems containing loss of information.

Consider the following relation

ENROL (stno, cno, date-enrolled, room-no, instructor)

Suppose we decompose the above relation into two relations enrol and enrol2 as follows:

ENROL1 (stno, cno, date-enrolled)

ENROL2 (date-enrolled, room-no, instructor)

There are troubles with this decomposition but we do not wish to focus on this aspect at the moment. Let a case of the relation ENROL be:

St no

cno

Date-enrolled

Room-no

Instructor

1123

MCS-011

20-06-2004

1

Navyug

1123

MCS-012

26-09-2004

2

Anurag Sharma

1259

MCS-011

26-09-2003

1

Preeti Anand

1134

MCS-015

30-10-2005

5

Preeti Anand

2223

MCS-016

05-02-2004

6

Shashi Bhushan

                                                              Figure:  A sample relation for decomposition

Then on decomposition the relations ENROL1 and ENROL2 would be:

St no

Cno

Date-enrolled

1123

MCS-011

20-06-2004

1123

MCS-012

26-09-2004

1259

MCS-011

26-09-2003

1134

MCS-015

30-10-2005

2223

MCS-016

05-02-2004

 

 

ENROL1

ENROL2

Date-enrolled

Room-no

Instructor

20-06-2004

1

Navyug

26-09-2004

2

Anurag Sharma

26-09-2003

1

Preeti Anand

30-10-2005

5

Preeti Anand

05-02-2004

6

Shashi Bhushan

All the information that was in the relation ENROL appears to be still existing in ENROL1 and ENROL2 but this is not so. Assume, we wanted to retrieve the student numbers of all students taking a course from Preeti Anand, we would require to join ENROL1 and ENROL2. For joining the only general attribute is Date-enrolled. Therefore, the resulting relation obtained will not be the similar as that of Figure. (Please do the verify and join the resulting relation).

The join will have a number of spurious tuples that were not in the unique relation. Because of these additional tuples, we have lost the correct information about which students take courses from Preeti Anand. (Yes, we have many tuples but less information because we are not capable to say with certainty who is taking courses from Preeti Anand). Such decompositions are known as lossy decompositions. Lossless or nonloss decomposition is that which surety that the join will result in exactly the similar relation as was decomposed. One might think that there may be other ways of recovering the unique relation from the decomposed relations but, sadly, no other operators can recover the unique relation if the join does not (why?).

We require to analyse why the decomposition is lossy. The general attribute in the above decompositions was Date-enrolled. The general attribute is the glue that provides us the ability to find the relationships among different relations by joining the relations simultaneously. If the general attribute have been the primary key of at least one of the two decomposed relations, the trouble of losing information would not have existed. The trouble arises because various enrolments may take place on the similar date.


Related Discussions:- Lossless-join decomposition

Linear commit protocol, With the linear commit protocol, sites are connecte...

With the linear commit protocol, sites are connected in a chain, and the subtransaction at the left-hand end of the chain initiates the protocol. Propose a crash recovery protocol

How many types of users works on database, How many types of users works on...

How many types of users works on database? Users are differentiated through the way they expect to interact along with the system (i) Application programmers-interact with

Which component is not included in database environment, Which component is...

Which component is not included in database environment ? A users component is not included in database environment.

Query by example, Illustrate how you can use QBE to perform logical AND and...

Illustrate how you can use QBE to perform logical AND and OR operation

HYRISE, how to implement hyrise in C plus plus

how to implement hyrise in C plus plus

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;

What is the function of sql server agent windows service, What is the funct...

What is the function of SQL Server Agent Windows service? - It's a Windows service that handles tasks scheduled within SQL Server environment. These tasks are also known as job

Er diatgrams, Ask q“A database will be made to store information about pati...

Ask q“A database will be made to store information about patients in a hospital. On arrival, each patient’s personal details (name, address, and telephone number) are recorded wher

Domains, A domain is a set of permissible values that can be given to an at...

A domain is a set of permissible values that can be given to an attribute. So each attribute in a table has a definite domain. Values to these attributes cannot be assigned outside

Er-diagram, courier company er-diagram

courier company er-diagram

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