开发者

Lossless Join Property

开发者 https://www.devze.com 2023-02-28 16:03 出处:网络
What is meant by the lossless join property in a relation schema? Is it the ability to maintain the semantics of information/data during the decomposition 开发者_JS百科of relations whilst normalising?

What is meant by the lossless join property in a relation schema?

Is it the ability to maintain the semantics of information/data during the decomposition 开发者_JS百科of relations whilst normalising?


The lossless join property is a feature of decomposition supported by normalisation. It is the ability to ensure that any instance of the original relation can be identified from corresponding instances in the smaller relations.


The word loss in lossless refers to loss of information, not to loss of tuples

This ppt presentation might be helpful.


R1, ... is a lossless decomposition of R when they join back to it.

(R1, ... being a lossless decomposition of R under a set of FDs (functional dependencies) F is a different property. That is when R1, ... is a lossless decomposition of R and satisfies the FDs in F.)


Lossless means functioning without a loss. In other words, retain everything.

Important for databases to have this feature.

Formal Definition

  • Let R be a relation schema.
  • Let F be a set of functional dependencies on R.
  • Let R1 and R2 form a decomposition of R.

The decomposition is a lossless-join decomposition of R if at least one of the following functional dependencies are in F+

1) R1 ∩ R2 -> R1
2) R1 ∩ R2 -> R2  

In Simpler Terms…

R1 ∩ R2 -> R1
R1 ∩ R2 -> R2

If R is split into R1 and R2, for the decomposition to be lossless then at least one of the two should hold true.

Projecting on R1 and R2, and joining back, results in the relation you started with.

Source: https://en.wikipedia.org/wiki/Lossless-Join_Decomposition

0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号