Метафора файловой системы - PullRequest
1 голос
/ 21 апреля 2011

Мне интересно, как представить метафору файловой системы (ntfs основана на btree, верно?) Внутри базы данных SQL. Очевидно, что данные хранятся в виде строк в таблицах и не используют метод хранения NTFS; Итак, как логически работает NTFS (и другие FS) для представления иерархии файлов / папок? Любой совет или ссылки?

Спасибо за поддержку.

1 Ответ

1 голос
/ 21 апреля 2011

Если вы хотите иметь какую-то базу данных, хранящуюся в СУБД, просто создайте таблицу со следующими полями:

  • ID
  • ID родителя
  • Имя
  • Тип (каталог или файл)
  • Дата изменения (дата создания и дата последнего доступа необязательны)
  • Данные (BLOB)

и все. ID / ParentID позволит вам построить иерархию, а остальное - детали.

Большинство файловых систем имеют инвертированную структуру ID / ChildrenIDList вместо ID / ParentID, но это вызвано особенностями дизайна файловой системы. Если файловая система поддерживается некоторой реляционной СУБД, то для поиска может быть более подходящим иметь родительский идентификатор.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...