Letting keys and functional dependencies out of the bag

  • Authors:
  • Sebastian Link;Mozhgan Memari

  • Affiliations:
  • The University of Auckland, Auckland, New Zealand;The University of Auckland, Auckland, New Zealand

  • Venue:
  • APCCM '13 Proceedings of the Ninth Asia-Pacific Conference on Conceptual Modelling - Volume 143
  • Year:
  • 2013

Quantified Score

Hi-index 0.00

Visualization

Abstract

Classical database theory is largely a theory of relations. Relations are sets of tuples in which no duplicate tuples occur. In practice, duplicate elimination is an operation that is considered to be too expensive in many situations. Fundamental classes of integrity constraints interact differently over bags than they do over relations. This holds for keys and functional dependencies, for example. In this paper, we establish algorithms that compute Armstrong bags for any given set of keys and functional dependencies. These are bags which satisfy the given set of keys and functional dependencies, but violate all keys and functional dependencies not implied by the given set. Armstrong bags perfectly visualize abstract sets of constraints, and can be used by database designers to effectively communicate perceptions or states of a database. Subsequently, we show how existing algorithms to discover functional dependencies in relations can be adapted to discover keys and functional dependencies in bags.