Beyond Relations: A Case for Elevating to the Entity-Relationship Abstraction
Amol Deshpande
TL;DR
This paper argues for elevating from the relational to an extended entity-relationship (E/R) abstraction inside DBMSs. It introduces ErbiumDB, a Python prototype layered on PostgreSQL, to study E/R-native schemas, native schema evolution, and a spectrum of physical storage representations. It systematically analyzes mappings of E/R schemas to storage layouts, and presents illustrative experiments comparing six representations to illustrate trade-offs in performance and maintenance. The work highlights potential gains in data governance, query design, and developer productivity, and outlines key research challenges in storage layouts, reversible mappings, and versioning.
Abstract
Spurred by a number of recent trends, we make the case that the relational database systems should urgently move beyond supporting the basic object-relational model and instead embrace a more abstract data model, specifically, the entity-relationship model. We argue that the current RDBMSs don't inherently support sufficient "logical" data independence, and that is relegating the database systems to the role of a backend storage system, away from where significant innovation is both happening and is still needed. We present the design of a prototype system (ErbiumDB) that we are building to explore these issues, and discuss some of the key research challenges.
