О, да. Я тоже когда-то думал, что найду время на это и, как настоящий Плюшкин, сделал запас из ссылок на этот случай. Кстати, подобный вопрос уже был на Тостере (даже не один), только не java-специфичный. Вообще, имхо, на чём вы будете писать не так важно же, более того, даже интереснее смотреть на код на другом языке и переиначивать его на своём. Короче, вот, что у меня есть:
1.
Как написать свою программу базы данных?
2.
shop.oreilly.com/product/9780596009571.do
3.
www.williamspublishing.com/Books/5-8459-0384-X.html
4.
lib.mexmat.ru/books/34950
5.
Куда копать(что читать), дабы написать свою СУБД?
6.
https://www.books.ru/books/lokalnaya-subd-svoimi-r...
7.
https://cstack.github.io/db_tutorial/
Ещё можно посмотреть на код открытых СУБД. Например, SqlLite (если ничего не путаю, то проект покрыт тестами с ног до головы, что жирный +). А если именно на Java, то есть h2, правда она in-memory. Да не учебные, зато реальные.
Удачи :)