
Ask HN: Books about database implementation (relational algebra, etc.)? - atombender
I&#x27;m looking for a book on the computer science involved in <i>implementing</i> a database:<p>* Relational algebra<p>* Logical vs. physical planning stages<p>* Optimization (cost-based, etc.)<p>* Indexing algorithms<p>* Physical layouts<p>* Concurrency control<p>* Parsing<p>* Distribution<p>* OLTP vs. OLAP<p>* etc.<p>I&#x27;m <i>not</i> looking for books about how to write database apps or to manage them, nor books about modeling data or explaining SQL.<p>Thanks!
======
manigandham
The Carnegie Mellon University (CMU) Database Group with Andy Pavlo [1] puts
out a ton of content, including lectures on architecture, and interviews and
presentations with various database companies. Check out the seminar playlists
for video series and notes. [2] They also have research projects like Peloton.
[3]

[1] [https://db.cs.cmu.edu/](https://db.cs.cmu.edu/)

[2]
[https://www.youtube.com/channel/UCHnBsf2rH-K7pn09rb3qvkA/fea...](https://www.youtube.com/channel/UCHnBsf2rH-K7pn09rb3qvkA/featured)

[3] [https://github.com/cmu-db](https://github.com/cmu-db)

------
bradstewart
[https://www.amazon.com/Transaction-Processing-Concepts-
Techn...](https://www.amazon.com/Transaction-Processing-Concepts-Techniques-
Management-ebook/dp/B016W7HLX8) is pretty solid.

~~~
atombender
That looks great, though it seems to be focused on the transaction processing
part, and misses the big chunk that concerns querying (e.g. planning).

~~~
bradstewart
Very true. It touches a bit on the retrieval side with some discussion of
keys, hashing, B-trees, etc in the "Access Paths" chapter, but primarily from
the perspective of making the system robust and consistent. Definitely does
not cover the full space of database design (no mention of query planning at
all).

------
ryanworl
[https://www.amazon.com/Database-Management-Systems-Raghu-
Ram...](https://www.amazon.com/Database-Management-Systems-Raghu-
Ramakrishnan/dp/0072465638)

~~~
harlanji
I used this in a grad class. It was a progression from intuition to theory to
implementation. I already had DB exp, and it aligned with the operators and
index types that we found in PG 9 for the class project including batch and
streaming implementations as discussed. No point of comparison to other works.

------
saketuec
[https://www.amazon.com/Database-Systems-Complete-
Book-2nd/dp...](https://www.amazon.com/Database-Systems-Complete-
Book-2nd/dp/0131873253)

------
johnsonjo
Fundamentals of Database Systems by Ramez Elmasri and Shamkant B. Navathe [1]
is what I used in my undergraduate course in computer science. I would take a
look at the table of contents to see if it has most of what you want. I know
it at least has relational algebra and indexing data structures and
algorithms.

[1]: Fundamentals of Database Systems (7th Edition)
[https://www.amazon.com/dp/0133970779/ref=cm_sw_r_cp_api_i1r5...](https://www.amazon.com/dp/0133970779/ref=cm_sw_r_cp_api_i1r5BbQ04NDKG)

------
millrawr
Building Query Compilers: [http://pi3.informatik.uni-
mannheim.de/~moer/querycompiler.pd...](http://pi3.informatik.uni-
mannheim.de/~moer/querycompiler.pdf)

Is the closest to what you actually want that I've ever been able to find, but
it is unfinished.

------
tjr
Some helpful information here, I would think:
[http://www.redbook.io/](http://www.redbook.io/)

