Как работают моментальные снимки BTRFS и ZFS?

Точнее, как они умудряются смотреть на весь подобъем и помнить о нем все (файлы, размеры файлов, структуру папок), вписываясь в такой небольшой объем данных.


person XQLRSZ    schedule 15.01.2015    source источник
comment
деревья Меркла, совместное использование узлов   -  person sehe    schedule 20.01.2015
comment
@sehe Не могли бы вы уточнить?   -  person XQLRSZ    schedule 20.01.2015
comment
Я считаю, что есть лучшая документация в целом об этих концепциях (просто wikipedia Merkle Tree, COW, ZFS и даже Git), чем кто-либо может написать для вас здесь. Если вам нужен коучинг, я уверен, что для этого тоже есть сайты.   -  person sehe    schedule 20.01.2015


Ответы (1)


Предположим, у меня есть список имен:

Joe
Bob
Fred

Ты говоришь мне запомнить этот список. Итак, я иду, хорошо:

Joe
Bob
Fred
(as of 06/01/15)

На следующий день ты говоришь мне добавить имя "Джон" в конец списка. Затем я копирую список, чтобы получить:

Joe
Bob
Fred
(as of 06/01/15)

Joe
Bob
Fred
John
(current)

Это очень простое описание того, как работает моментальный снимок. Файловая система оставляет себе запись о том, когда был сделан снимок, а затем, когда вносятся изменения, она делает новую копию снимка и вместо этого записывает в нее.

Конечно, снимок делается по запросу. Будут скопированы только те части файлов, в которые вы записываете. Чистый эффект с точки зрения высокого уровня заключается в том, что BTRFS «замораживает» файлы, а затем записывает будущие изменения в виде дельт относительно замороженных данных. Конечно, дельты могут быть сложенными, разветвленными и т. д.

Чтобы ответить на ваш вопрос, произнесите «Примечание для себя: не трогайте эти файлы!» совсем не занимает много времени.

person PythonNut    schedule 01.06.2015