Internal Database Works

Can anyone recommend me a clear introductory article about the inner workings of each element that makes up the database system:

  • file against server (sqlite vs mysql)
  • how the database engine integrates with the system (MyISAM, InnoDB) and how MySql allows you to choose between 2
  • indexing
  • how the request is processed.
  • how SQL is implemented
  • and etc.

Optional with illustrations and comparisons between MySql, PosgreSql, Oracle, Access, etc.

===

I am looking for articles with some technical details and keywords. The information I'm looking for can answer the following question: I want to program the database engine from scratch, now what? Where to begin? How to switch from reading / writing parameters in an .ini file to sending queries to an SQL server? Of course, I do not want to program the entire database system from scratch, just a guide to tasks, concepts, architecture tips, etc., in order to better use the tools that I work with. Thanks in advance.

+7
database
source share
4 answers

Here is a good course from Stanford University. You can view notes about the lecture if you want to get a lot of details:

http://infolab.stanford.edu/~hyunjung/cs346/

+2
source share

This is a good introductory article with links to more detailed information.

http://databases.about.com/od/specificproducts/a/whatisadatabase.htm

And, of course, Wikipedia always has good new technical explanations, such as this one:

http://en.wikipedia.org/wiki/Database

In essence, this google search yielded many results that contain the information you are asking about.

+1
source share

This article really helped me understand indexes. I would highly recommend reading it.

+1
source share

Clear? Not. All this is material for several books in different areas of CS. But here are the answers to some of the points:

file against server (sqlite vs mysql)

There is no significant difference. In the end, both engines use files. The only difference is that for MySQL (usually) any request should be sent to the server through some communication channel (whether it be a real network or only a local socket), and when using Sqlite you almost completely get access to the engine directly.

how the database engine integrates with the system (MyISAM, InnoDB) and how MySql allows you to choose between 2

Good (sufficient) abstraction.

0
source share

All Articles