Relational Database Design

6 important questions on Relational Database Design

Consider the following statement:
"Let R be a relation schema, and let α ⊆ R and β ⊆ R."
What does ⊆ mean and what is the connection of α and β to R?

  • Subset of.
    • ⊆ Means that the variable on the left is a subset of the variable on the right.
  • Subsets α and β.
    • α and β are both sets of attributes that belong to the same relation R.
    • R is a relation schema, and therefore represents a set of all attributes.
      • α and β are subsets of R and have some of the attributes of R.
      • I.e., all attributes in α and β always have to be in R as well.

You have a set of functional dependencies that we call F.
What is its closure ( F+ ) would contain?

  • Closure.
    • All functional dependencies that can be logically derived from the FD set F, without being explicitly stated.
    • When you have a set of FDs, they can imply other dependencies that you could logically derive from F.
    • E.g., F contains A → B and B → C.
      • We can logically infer that this means that A → C.
      • This FD would be part of F+.

What is a canonical cover?

  • 'Cleaned-Up' F.
    • A canonical cover ( Fc ) is a simplified version of a set of functional dependencies ( F ).
    • It differs from 'F' in that all redundant information is removed.
      • Every FD in 'Fc' and every attribute in it is necessary to preserve the same meaning as the original 'F'.
  • F+ = Fc+.
    • The closure of Fc is equal to the closure of F.
  • 3NF.
    • Canonical covers are used in the 3NF decomposition algorithm.
  • Higher grades + faster learning
  • Never study anything twice
  • 100% sure, 100% understanding
Discover Study Smart

How do BCNF and 3NF differ on the following features:
Redundancy.Lossless-Join.Dependency Preservation.Practical Choice.

  • Redundancy.
    • BCNF.
      • Eliminates all redundancy discoverable via FDs.
    • 3NF.
      • Allows some redundancy if a non-key attributes determines a prime attribute.
  • Lossless-Join.
    • Both BCNF and 3NF decompositions are always lossless-join.
  • Dependency Preservation.
    • BCNF.
      • Decomposition may not be dependency-preserving.
    • 3NF.
      • Decomposition is always dependency-preserving.
  • Practical choice.
    • BCNF.
      • Often preffered: Because SQL doesn't easily enforce FDs that are not keys, dependency preservation is less valuable in practice.
    • 3NF.
      • Chosen when efficient checking of all FDs without joins is a critical requirement.

Sometimes, a schema can be in BCNF but still contain redundancy. Can you describe such a situation in which BCNF still contains redundancy.

BCNF can still contain redundancy when attribute relationships are independent but are forced into a single table.
  • E.g., an 'instructor_info' relation schema with attributes (ID, child-name, phone_number.
    • An instructor can have multiple children and multiple phone numbers.
    • These 2 sets of values are also independent.
    • To represent the data correctly in BCNF,

Normalisation of a a database design gives you clean, redundancy-free data. However, in some cases, normalisation rules are intentionally
violated by introducing redundancy — a process called denormalisation.
Can you explain why database designers would do this?

  • Slow joins.
    • Normalisation may give you many small tables that must be joined together to answer common queries.
    • These joins can be slow when you work with large databases.
    • E.g., To show all student grades you need to join relations:
      • Students, course, Enrolment, Instructor, and Department.
  • Creating Redundancy.
    • You combine relation tables or store repeated information.
    • This makes those queries a lot faster but because of the redundancy updates become risky.
      • E.g., if a course's name is altered, you must update it in multiple rows.

The question on the page originate from the summary of the following study material:

  • A unique study and practice tool
  • Never study anything twice again
  • Get the grades you hope for
  • 100% sure, 100% understanding
Remember faster, study better. Scientifically proven.
Trustpilot Logo