индексы
(поправлю ответ, с оглядкой на коллег по ответам):
чудес нет, и база это никакая не абстрактная сущность а-ля "прана, эфир, зефир" и все такое
база - это такой же файл, его также нельзя переписать не целиком (sqlite просто зеро пример, но и поврежденный файл мускуля тоже неплохой пример),
в то же время к csv нет никаких проблем поделать запросы и выборки-группировки (гуглите python Pandas),
но в базе есть ИНДЕКСЫ, и на их основе постоянное управление данными (че куда когда вставлено, че как откуда быстро запросить и т.д.)
в первую очередь - создаваемые самой СУБД (и тут даже sqlite даст фору csv), во вторую - программистом
но для простых проектов - можно обойтись и csv с сопотствующими инструментами