On keys, essences and performance

Lobsters Hottest Tools

Summary

A blog post defending the necessity of keys and normalization in the relational model, arguing that they reflect ontological requirements for coherent discourse about reality, countering criticisms about practical difficulties in defining keys and domains.

<p><a href="https://lobste.rs/s/kry4v6/on_keys_essences_performance">Comments</a></p>
Original Article
View Cached Full Text

Cached at: 07/14/26, 08:20 PM

# On keys, essences and performance Source: [https://ebellani.github.io/blog/2026/on-keys-essences-and-performance/](https://ebellani.github.io/blog/2026/on-keys-essences-and-performance/) ## On keys, essences and performanceJuly 14, 2026by Eduardo Bellani A[recent exchange on linkedin](https://www.linkedin.com/feed/update/urn:li:activity:7482151625499820033?commentUrn=urn%3Ali%3Acomment%3A%28activity%3A7482151625499820033%2C7482168072209092608%29&replyUrn=urn%3Ali%3Acomment%3A%28activity%3A7482151625499820033%2C7482487327894765568%29&dashCommentUrn=urn%3Ali%3Afsd_comment%3A%287482168072209092608%2Curn%3Ali%3Aactivity%3A7482151625499820033%29&dashReplyUrn=urn%3Ali%3Afsd_comment%3A%287482487327894765568%2Curn%3Ali%3Aactivity%3A7482151625499820033%29)about what data is and how to store it prompted me to write this small piece, since I consider the issue at hand quite fundamental to developing systems that reflect reality and therefore help people\. Here is what the author of the quote said: > I mean that actual data, as observed in the world around us \- may not have natural keys as required by the model\. Nor are data domains clearly definable\. We can’t even agree what a country is \- nor figure out how to properly track human languages or lock down standards for how the semantics of programming language are supposed to work\. And what key can we even use to uniquely identify an individual \- when legislation often forbids the storage of any keys? Normalisation is also a very poor way to organise data that needs to be analysed at speed \(which is why almost no analytical systems use normalised models\) I’ll break down the argument into its propositions and my answer to each is below\. 1. `data as observed may not have natural keys as required by the \(relational\) model \(RM\)` I would define a key in the RM as`a part of the proposition denoted that allows for it to be uniquely referred to in the given Domain of Discourse`\. If one accepts that definition, how can something denoted not have a key? If one is denoting it, one needs to refer to it somehow unambiguously\. Any system that deals with the data would do that, be it in the application layer or the DBMS layer\. 2. `data domains are not clearly definable` This is the same issue as above, but on the predicate level instead of the proposition level\. If we can refer to a proposition \(e\.g\. Bob’s salary is 100\) we can certainly refer to its predicate \(E’s salary is X\)\. And if we can’t, we cannot process it in any given system\. 3. `legislation would disallow keys` Then such legislation would force the predicate to change \(maybe to aggregates only?\)\. In other words, the legislation constrains the Domain of Discourse, but all the properties of such remain\. 4. `normalization makes systems performs badly` Normalization means that a given encoded relation refers to a single logical predicate\. That bears no significance, at least in principle, to performance\. ## Conclusion The necessity of keys and normalization is not a quirk of the relational model\. It reflects something deeper about the world we are modeling \(our Universe of Discourse\)\. We must refer to things unambiguously, and for that things must possess stable, distinguishing essences\. The difficulty of identifying what a country is, or what constitutes an individual, is not evidence that essences do not exist\. It is evidence that discovering them is hard\. That is an epistemological challenge, not an ontological absence\. The relational model, far from imposing an artificial structure on formless data, simply makes explicit what any coherent discourse about reality already presupposes: that the world is composed of things with essences, and that we can know them ![Figure 1: Defacement of the church of Saint-Martin by the French revolutionaries](https://ebellani.github.io/ox-hugo/Temple_de_la_raison,_St_Martin,_Ivry-la-Bataille.jpg)Figure 1:Defacement of the church of Saint\-Martin by the French revolutionaries

Similar Articles

What ORMs have taught me: just learn SQL (2014)

Hacker News Top

The author argues that ORMs are more detrimental than beneficial and that developers should focus on learning SQL directly to avoid issues like attribute creep and inefficient queries.

Structured Primary Keys

Lobsters Hottest

This article discusses how traditional primary key designs can isolate tables, and introduces structured primary keys as an alternative approach to improve SQL query performance and maintain relational integrity.

Relational modeling and APL

Lobsters Hottest

The author explores combining relational modeling with APL-style array languages using constraint logic and equational rewrite rules, discussing how properties can be defined as bidirectional deductions rather than simple assignments.