Для обслуживания миллионов файлов из одного каталога, возможности подключения к диску с сотен конечных точек и по некоторым другим причинам (чтобы избежать сетевых решений на основе gluster / nfs / all fs), я хочу оценить возможность создания файловой системы, основанной на mongodb (или любой другой).
По сути, это работает как fusefs, каждый отдельный файл хранится в mongo gridfs. Теоретически, я,
mount mongodbfs /mountPoint mongodb://localhost
тогда, когда я говорю touch /mountPoint/test.txt
, этот файл вставляется в mongodb. Эта ФС также будет хранить uid / gid и perms вместе с файлом, мы можем добавить к нему сотни серверов, и useradd
не понадобится. Я не собираюсь включать все функции FS, только те, которые нам нужны.
Мой вопрос: как мне начать поиски ресурсов, книг, ссылок, людей, разработчиков, которые помогли бы мне реализовать это? по крайней мере, доказательство концепции. Это возможно? Чего мне ожидать в качестве графика для такого мероприятия?
Пожалуйста, подумайте только о gazillion небольших файлов и папок.
пс: после нескольких дней исследований я думаю, что это направление, в котором я движусь
http://www.ibm.com/developerworks/library/l-sc12.html
http://www.flipcode.com/archives/Programming_a_Virtual_File_System-Part_I.shtml
PS2: я знаю о трудностях этого начинания. однако мы готовы выделить серьезный бюджет и сформировать серьезную команду, реализующую его, - только после того, как убедимся, что это не черная дыра (таким образом, вопрос).