CMU 15-721: In-Memory Databases / Advanced Database Systems [video]
youtube.com
youtube.com
I've implemented an even simpler solution for my Open Source Data Store (https://sirix.io) in that each page stores a number of references, which are itself lightweight pointer objects (in Java) and it simply stores an in-memory reference as well as a pointer to the location to fetch it from disk/a flash drive. If the buffer manager has these Objects as keys on eviction we can simply null the reference to the in-memory page instance.
See https://www.youtube.com/watch?v=m72mt4VN9ik&t=781 for an example of what I mean
Nobody needs anything. You didn't need to write your comment. And neither did I have to write this one. That's terrible criteria to judge anything, if it even means anything sensible at all.
"This course video doesn't need juvenile jokes" is an expression of taste. And some people enjoy the jokes.
Here's their Youtube channel: https://www.youtube.com/channel/UCHnBsf2rH-K7pn09rb3qvkA/fea...
1. A ton of effort seems to be spent on making things run in parallel, but that introduces quite a bit of overhead too, so how well does a sequential baseline actually perform? By sequential baseline I mean a single thread that just executes all incoming transactions one by one in sequence.
2. This course seems to spend a lot of time on things that the teacher says are things you shouldn't do anyway. For instance there is an entire lecture on skip lists and Bw-trees, and at the end the teacher mentions that these are terrible. This is interesting from a historical perspective, but not only does this take a lot of time, I also lose track of which things you should and which things you shouldn't do. It'd be interesting to have a compressed course that spends less time on things you should not do, perhaps by adding annotations to the video to skip sections that are about things you should not do.
You should check out the H-Store research project[1] and its commercial successor VoltDB. They’re basically a study in how much you can win with a federation of single-threaded database systems.
Thanks