Tematykę implementowania systemów baz danych można z grubsza podzielić na trzy części: zarządzanie pamięcią: w jaki sposób efektywnie korzystać z pamięci drugiego poziomu przy przechowywaniu danych, a także by umożliwić ich szybkie wyszukiwanie, przetwarzanie zapytań: w jaki sposób wykonywać zapytania zapisane w języku bardzo wysokiego poziomu, takim jak SQL, zarządzanie transakcjami: w jaki sposób zapewnić transakcjom właściwości ACID.