Другие языки программирования и технологии

Почему файловая система не может в полной мере заменить БД?

Хотя бы потому, что в файловой системе нет механизмов быстрой выборки файлов по их содержимому.

В обычной файловой системе нет очень многого из того, что есть в базах данных. Так что это не файловые системы пытаются использовать в качестве баз данных, а базы данных в качестве файловых систем. Но пока что файловые системы, построенные по принципам баз данных, широкого распространения не получили.
Павел Выдрич
Павел Выдрич
58 877
Лучший ответ
Сергей Елизаров Кстати да, это хорошее решение. И ещё поиск оп меткам добавить.
Задачи субд (которые к тому же внутри себя делятся на кучу разнотипных решений) слишком специфичны и обширны чтобы тянуть их функционал на уровень файловой системы.
Это разные уровни абстракции - файловая система абстрагируется от физического хранилища, субд в свою очередь использует объектный доступ, пользуется ФС/памятью в качестве бекенда для конечного хранения своих данных.
Тем не менее использование ФС в качестве "БД" достаточно распространенное решение во всяких системах с не типовыми задачами по хранению данных - там роль "субд" выполняет само приложение. Это связано с тем что чем более "высокоуровневая" субд тем менее она гибкая в плане управления физическим хранением своих данных на диске и серверах. Так на пример задача хранения сообщений у мессенджеров в принципе адекватно не решается никакими другими способами как использовать субд работающие на SSTable и им подобные либо городить прямой файловый доступ (как делает Вконтакте).
К тому же есть задачи когда еще неясно как мы будем читать данные (все горизонтально масштабируемые бд проектируются под конкретные выборки) а уже нужно начинать их складывать - в таком случае идеально просто складывать все в файлы опционально можно еще сжимать