TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

How does a relational database work?

377 pointsby mgachkaalmost 10 years ago

18 comments

why-elalmost 10 years ago
Good write up. Another excellent resource straight out of the UC Berkeley Database Group that I keep close by is &quot;Architecture of a Database System&quot;[1] by three researchers in the field. It is very readable.<p>[1] <a href="http:&#x2F;&#x2F;db.cs.berkeley.edu&#x2F;papers&#x2F;fntdb07-architecture.pdf" rel="nofollow">http:&#x2F;&#x2F;db.cs.berkeley.edu&#x2F;papers&#x2F;fntdb07-architecture.pdf</a>
评论 #10091761 未加载
jandrewrogersalmost 10 years ago
Good overview of traditional OLTP architectures. As complicated as they look from the article, it is just scratching the surface of a sophisticated implementation. There are many internals common to more advanced designs that are not even mentioned, and the article is already quite long!<p>The thing I love most about database engines is that there is probably more hardcore computer science per line of code than any other software system of similar scope. It is a very rich ecosystem for an algorithms and data structures geek.
faragonalmost 10 years ago
Be careful with theoretical asymptotic complexity (big O) related to execution time. E.g. if your algorithm time complexity is O(1), but internally calls a higher complexity function, e.g. malloc(), implemented with higher complexity, e.g. O(log n), your algorithm time complexity would be O(log n) and not O(1). It could be even worse: <i>on average</i> or <i>typical</i> constant time algorithm could be in reality an O(n) one: e.g. case of hash table reindexation (that&#x27;s the reason of why many big data structures, including most SQL databases, requiring real time behavior, are implemented as trees, tree hierarchies&#x2F;division&#x2F;clustering, instead of big hash tables).
评论 #10090024 未加载
评论 #10090528 未加载
brudgersalmost 10 years ago
Because I am interested in databases, I found the Se-radio&#x27;s 2013 interview with Michael Stonebreaker [1] interesting, particularly in regard to traditional database design and more recent ideas:<p><a href="http:&#x2F;&#x2F;www.se-radio.net&#x2F;2013&#x2F;12&#x2F;episode-199-michael-stonebraker&#x2F;" rel="nofollow">http:&#x2F;&#x2F;www.se-radio.net&#x2F;2013&#x2F;12&#x2F;episode-199-michael-stonebra...</a><p>[1]: <a href="http:&#x2F;&#x2F;www.theregister.co.uk&#x2F;2015&#x2F;03&#x2F;25&#x2F;mike_stonebraker_wins_turing_award&#x2F;" rel="nofollow">http:&#x2F;&#x2F;www.theregister.co.uk&#x2F;2015&#x2F;03&#x2F;25&#x2F;mike_stonebraker_win...</a>
otis_infalmost 10 years ago
&gt; When it comes to relational databases, I can’t help thinking that something is missing. They’re used everywhere. There are many different databases: from the small and useful SQLite to the powerful Teradata. But, there are only a few articles that explain how a database works.<p>That&#x27;s because the inner workings are really old, as in: emerged before blogging etc. was popular, hell before the internet was invented.<p>In the &#x27;before&#x2F;early internet days&#x27;, we read books like &#x27;An introduction to Database Systems&#x27; by C.J. Date. (I had to blow the dust off my copy to read the exact title ;)), which are more in depth than this article, but I like the article better, because it&#x27;s more to the point and easier to understand. Well done!
评论 #10088144 未加载
mgrennanalmost 10 years ago
Not that Cassandra and Hadoop don&#x27;t have a place. But because NO-SQL is hot I see lots of young coders (I&#x27;m and old DBA) try to turn document store systems into relational databases. They should all be made to read this post.
评论 #10087146 未加载
n0usalmost 10 years ago
Actually this is the best post I have ever seen on this website.
jleesalmost 10 years ago
This is also a pretty accessible quick intro to complexity and data structures, nicely done. Definitely the sort of thing I would include as further reading in a beginner course -- some beginners love to understand &quot;why&quot; and this post answers pretty much all the &quot;why&quot; possible.
codezeroover 9 years ago
I decided to spend some time digging into SQLite. I highly recommend the overviews of their architecture and the details about each part of the puzzle.<p>It&#x27;s really understandable, very straight forward, even if a lot of it refers to SQLite v2, it still seems very relevant.<p><a href="http:&#x2F;&#x2F;www.sqlite.org&#x2F;arch.html" rel="nofollow">http:&#x2F;&#x2F;www.sqlite.org&#x2F;arch.html</a>
emehrkayalmost 10 years ago
I&#x27;m I crazy for wanting to write a database after reading this? Noting too serious, just to flex that dev muscle
评论 #10090567 未加载
评论 #10088694 未加载
aikahalmost 10 years ago
Great Article , I wish a book was written where a simple database with a query language was implemented from start to finish , even a nosql one, I always wanted to implement my own.
buckbovaalmost 10 years ago
I&#x27;ve read sql server internals cover to cover and in many respects this is a much better read. Thank you.
Cakez0ralmost 10 years ago
&gt; Nowadays, many developers don’t care about time complexity … and they’re right!<p>That&#x27;s a pretty bold statement...<p>Very thorough explanations though!
评论 #10089630 未加载
njharmanalmost 10 years ago
I believe that to be the best technical document I&#x27;ve ever read. Surely biased as I learned so much.
评论 #10092475 未加载
0xCMPalmost 10 years ago
Wow, I wanted this recently. Anyone know stuff related to graph databases and how those work?
评论 #10089400 未加载
mgrennanalmost 10 years ago
Good read. How long do your keep your transactions logs and how often do you make backups?
0xCMPalmost 10 years ago
Anyone know of any rust based databases being worked on? Relational or otherwise...
评论 #10089831 未加载
beenpooralmost 10 years ago
Great article!