Van Roy&#x27;s book is an awesome way to explain computer languages and computing itself.  I&#x27;m not sure there&#x27;s anything so approachable yet mind blowing for DBs.<p>I think Foundation of Databases, &quot;The Alice Book&quot;, lays out the mathematical basis well.  The relational algebra might be the kernel language.  I think Ullman&#x27;s books on databases provide more implementation details.  Caveat: I haven&#x27;t finished either. The Alice book is pretty dense.<p>I&#x27;d describe it this way myself:<p>A database is a persistent repository of facts about some domain.<p>The simplest set of facts might be a set of values.  You can&#x27;t do much interesting with that.  This might be main memory or a hard disk.<p>Beyond that, the facts might be tuples (K, V) where K is some name or key and V is some unstructured value. Key value stores and filesystems are like this.  You can index K and provide fast lookups<p>If the tuple has more structure, it might be a relation.  Relations might be described as an ordered tuple of values where each value is selected from some domain.  (Name, Age, HourlyWage) might be a relation where Name comes from Strings, Age comes from Ints and HourlyWage comes from Floats.<p>So, we might have a couple facts like:
(Bob, 45, 14.50)
(Jill, 19, 112.95)
(Jim, 7, 1337.0)<p>Now, the repository of facts can provide a solver that answers questions.  You define some constraints like HourlyWage &gt; 100.0 AND Age &lt; 10 and it finds the facts that match the constraints.  It&#x27;s more complicated than that and the Alice book explains the mathematical foundations well.<p>And the database remains a repository.  You can add data to it.  The repository may enforce the relations and reject facts that don&#x27;t fit the domain of their values.  Maybe it has uniqueness constraints on certain fields, etc. etc.<p>Beyond that it&#x27;s mostly additional features.  More complicated relational operators.  Better query abstraction.  Optimizations to solve queries more efficiently (query planning, etc.) Atomicity, Consistency, Isolation and Durability guarantees.  Clustering and networked operations. So on and so forth in the spirit of CTM.<p>My intuition is that the mathematical foundation is fairly pure.  So even &quot;non-relational databases&quot; could be viewed as implementing some non-standard form of the relational model.