Overview:
Layout of Database:
graph TD;
1[Query Planning]
2[Operator Execution]
3[Access Methods]
4[Buffer Pool Manager]
5[Disk Manager]
1 --> 2
2 --> 3
3 --> 4
4 --> 5
We will go through these different layers bottom-up.
Remembering that in the storage hierarchy, layers above DRAM are volatile, random access and byte-addressable, and the layers underneath SSD are non-volatile, sequential access and block-addressable.
We now care about moving data that is non-volatile into layers that data that is volatile.
In this course, we will call DRAM memory, and any layer below SSD Disk.
We want to create an illusion to the applications that we have enough memory to store their entire database in the memory. We want to allow the DBMS to manage databases that exceed that amount of memory available.