Live data from Hacker News

Ask HN: Resources for Learning about Databases

news.ycombinator.com

21–29 of 29 posts

Re: Ask HN: Resources for Learning about Databases

#23
Anything by Joe Celko: SQL for Smarties, Trees and Hierarchies in SQL for Smarties, Joe Celko

Also, the internals of Django ORM (https://github.com/django/django/tree/2.2.5/django/db/models) and SQLAlchemy Core (https://github.com/sqlalchemy/sqlalchemy/tree/rel_1_3_8/lib/...) and its dialects (https://github.com/sqlalchemy/sqlalchemy/tree/rel_1_3_8/lib/...) + ORM (https://github.com/sqlalchemy/sqlalchemy/tree/rel_1_3_8/lib/...)

Re: Ask HN: Resources for Learning about Databases

#25
I really suggest against building a database from scratch. It's just too annoying, and there's so much code to write (parser, storage, indexing, query planner, connections). If you're interested in internals, I'd say look at the sqlite codebase instead: https://sqlite.org/src/doc/trunk/README.md . If anything, reading code that works is probably more useful than writing code that almost certainly won't without months and possibly years of effort.

A lot of the more complex database things are only really learned by having a large database system. Performance, distributed databases, and complex schemas come to mind here. Most of the times with simple examples, you'll do something wrong performance wise, but you'll never know because of the scale (such as forgetting an index, or doing a bad join).

Many times, you don't need to know that much about database other than some basic SQL.

Re: Ask HN: Resources for Learning about Databases

#27
Great intro and overview: http://coding-geek.com/how-databases-work/

Great book: https://dataintensive.net/

Also great read and overview: http://www.redbook.io/

Great paper over-viewing the architecture of a DB: https://perspectives.mvdirona.com/content/binary/Architectur...

If you're looking into building your own database, there are some great open source projects you can reference here: https://github.com/danistefanovic/build-your-own-x#build-you...

If you want to actually dive into source code - SQLite is amazing. It has very clean and readable code, so I'd suggest using it as a reference as well: https://github.com/mackyle/sqlite

Re: Ask HN: Resources for Learning about Databases

#28
post #8

Designing Data-Intensive Applications: The Big Ideas Behind Reliable, Scalable, and Maintainable Systems https://dataintensive.net/

How dry is this? I've had hit or miss success with technical books, and found that the writing style can help dramatically to feeling engaged and not dry or boring. Thoughts?

Much better than many other technical books.
Post reply on HN