В рамках проекта Opendedup (http://www.opendedup.org/) ведется работа по созданию новой распределенной файловой системы SDFS (http://code.google.com/p/opendedup/), специально оптимизированной для использования в качестве хранилища для виртуальных окружений, подобных XEN, KVM или VMware. Главная особенность новой системы заключается в поддержке автоматического объединения дубликатов - для одинаковых блоков данных сохраняется только одна копия, что значительно повышает вместимость файловой системы при хранении похожих по базовой начинке виртуальных окружений.
Максимальный размер общей файловой системы на базе SDFS ограничен 8 Петабайтами, максимальный размер одного файла - 250 Гб, предусмотрена возможность подключения в единый пулл до 256 разных хранилищ, по 32 Терабайта в каждом. Исходные тексты SDFS написаны на языке Java и доступны в рамках лицензии GPLv2. Файловая система реализована через FUSE-модуль и не привязана к конкретной программной платформе (в настоящее время доступен ...URL: http://www.cio.com.au/article/340870/open_source_deduplicati...
Новость: http://www.opennet.me/opennews/art.shtml?num=25983
Ява через фузи... Куда катится мир... Или я упустил новость, где интел выпустил процессор Intel Sixty-Four-Core с частотой каждого ядра по 20 GHz и L2 кэшем 128 Mb по цене 5$ за камень?
Не, вы упустили новости о выходе java после версии 1.2
О jit-компиляторах, hotspot vm...
Вместе с same page merge (или как его там назвали) еще больше возможностей для оверселлинга :(
KSM - Kernel Same Page.
Тока надо чтоб все софтины умели делать: madvise(new_block->host, size, MADV_MERGEABLE);
Уже давно есть lessfs (http://www.lessfs.com/)
Это бы очень интересно смотрелось в качестве фичи файловой системы, но делать отдельную ФС под одну такую фичу...
>Файловая система реализована через FUSE-модульИ без этого в Xen диски тормозят, они еще и через fuse и на java :(
Жесть вообще какая-то :(З.Ы. сама и идея и фича очень полезная, особенно если интегрировать ее с, например, централизованной установкой темплейтов, почти с десяток лет применяется многими на проприетарной Virtuozzo(vzfs)
Как всегда, вместо того, чтобы осуждать как оно работает, все обсуждают на чем оно написано. Просто установите и посмотрите, будет оно тормозить или нет в вашем конкретном случае.
Тормозит, на элементарных workload'ах. И жрет немерянно памяти. Вы хотели чуда?
> Производительность выполнения операции поиска и объединения дубликатов составляет около 150 Мб/сек.Интересно, как они её рассчитали.
Может мне потестировать её на моем ноуте с винтами на 5400 об/с ? =)> Исходные тексты SDFS написаны на языке Java и доступны в рамках лицензии GPLv2.
Наверное тут нужно возрадоваться, что не на JavaScript.
P.S.
Одно радует - в ядро не возьмут.
> максимальный размер одного файла - 250 ГбНахрена в наше время нужна ФС с такими ограничениями?
>> максимальный размер одного файла - 250 Гб
>
>Нахрена в наше время нужна ФС с такими ограничениями?практически для всего
позвольте уточнить, на каких задачах в наше время такого ограничения не достаточно?
Дедубликация - приятная фича ФС. Если это самоцель, продукт можно сразу выкинуть, потому что сразу понятно, кто его писал. Не дает линуксоидам покоя мощь ZFS.
линуксоид никогда бы не писал подобную хрень на java.
вы что-то явно путаете.
на каком-нибудь питоне, перле,.. да и то, в пьяном угаре. и назвал бы типа похмелфс.
да и в zfs есть гораздо более интересные вещи, чем эта дедупликация.
ой, мощь ZFS таковой является только на бумаге, при практическом использовании этой мощи неожиданно натыкаешся на моменты которые часть этой мощи делают бесполезной.
Какие-такие моменты?Нельзя ли аргументировать свои утверждения?
Для линукса ее нет )), что автоматически делает бесполезными все ее фичи
ой, кончайте свистеть или аргументируйте
> особенность новой системы заключается в поддержке автоматического объединения
> дубликатов - для одинаковых блоков данных сохраняется только одна копия,Ага....
Имеем, последовательность байт - ABCDE, и два R/W процесса X и Y :
1-ая итерация:
[X]: read() --> [ ABCDE ]
[Y]: read() --> [ ABCDE ]X обновил C
[X]: write() -> [ ABSDE ]
[Y]: write() -> [ ABS... опа, а должна быть CФайловая сиcтема: Мля, блоки не равны, надо делать двойника, но с измененной S на C
повтор:
[Y]: write() -> [ ABCDM ] # обновили E2-ая итерация:
X вернул C, на место S[X]: write() -> [ ABCDM ... опа, а должна быть E
Файловая сиcтема: Мля, блоки не равны, надо делать двойника, но с измененной M на E
[Y]: read() -> [ ABCDM ]Файловая сиcтема: Опа, а они равны, надо объединять?!
Итого: имеем 4 блочных клона вместо двух разных файлов.
Аппроксимируя по времени, эти 4 клона превратятся в 4 полных файла.А 100 процессов, а 1000, а 10000 ???
Вы какой-то странный COW придумали ;)
гораздо более интересно глянуть на поведение системы, когда на забитом под завязку разделе, с кучей объединенных блоков потребутся внести изменения в один из общих блоков
И что же там "гораздо более интересно"-го? COW придумали лет 40 назад, под него даже есть железная формальная математика (насколько помню MIT-овцы делали). Вот всё тоже, но с блоками памяти (RAM) ядро проделывает и это ни кого не удивляет ...
Читайте паря книжки - оне рулез!(С)FIDO
У меня была аналогичная ситуация, но когда 4 qemu работали с одним мастер образом.
Даже периодически делая commit-all, в итоге, через неделю на дисках были полные копии образов.С точки зрения пользователя, даже с точки зрения операционной системы, они равны,
а вот на блочном уровне вообще различны.
Математически, существует такой закон распределения, который удовлетворяет
распределению блоков в этих 4 образах. Но сколько нужно ресурсов, что его найти.
Я так понимаю, эта ФС будет заниматься не поиском закономерностей, а линейным
по блочным сравнением.В конце-концов, у них хранилища мета-данных, карты имеющихся дубликатов и хэш-таблицы,
займут столько же места, сколько и сами данные :)Вижу :) прибавление около 20% к объёму, но сколько это потребует усилий и средств.
А дисковая память нынче практически ничего не стоит.
всё это верно, но и дедупликации есть вполне оправданное применение.
и ты сам даже догадаешься где, если подумаешь - там где дупликатов много и они редко (или никогда) не обновляются.
например почтовые ящики. ни разу не встречал, когда рассылается "всем" одно и тоже?
Кстати, в русском языке в корне дубль пишется Б
думаешь это кстати?
но всё равно приятно, что современная молодёжь интересуется русским.
> Кстати, в русском языке в корне дубль пишется БРусский язык богат и разнообразен. Что, в слове "дуплет" тоже Б писать прикажете?
>> Кстати, в русском языке в корне дубль пишется Б
>
>Русский язык богат и разнообразен. Что, в слове "дуплет" тоже Б писать
>прикажете?Что интересно, получится "дублет" - тоже существующее слово, но совсем с другим значением.
Пошел посмотрел у Даля - смысл даже тот же самый может бытьВек живи, век учись - все равно дураком помрешь :-)
> ... там где дупликатов много и они редко (или никогда) не обновляются.
>например почтовые ящики. ни разу не встречал, когда рассылается "всем" одно и тоже?Тьфу блин! Даже Exchange 2000 хранил одну тушку мессэджа и столько линков сколько надо. Опенсорсные почтовики такое тоже давно могут. Если вы до сих пользуете старьё - это только ваши проблемы.
именно. это только мои проблемы.
если я хочу юзать мэйлбокс и дедупликацию то это ничем не хуже твоего эксченча, который кстати изрядно крошил при сбое хранилище и на восстановление уходил рабочий день.
>А дисковая память нынче практически ничего не стоит.SSD? Вот она основная цель этой ФС
Чувак, видмо, просто не вкурсе сколько стоит дисковая память на каком-нибудь среднеуровневом массиве от HP или EMC.
Про массивы hi-end уровня и упоминать даже не стоит.
Вы же явно в курсе с тем, как соотносится пропускная способность hi-end массивов с (кажущейся среднепотолочной) цифрой "150Мб/сек"...PS: спасибо за ссылку на lessfs.
>Чувак, видмо, просто не вкурсе сколько стоит дисковая память на каком-нибудь среднеуровневом массиве от HP или EMC.
>Про массивы hi-end уровня и упоминать даже не стоит.Приятно познакомится, меня звать Сертифицированный специалист EMC BURA (EMC Backup, Recovery and Archiving)
Думаш у них у всех EMC Symmetrix_ы стоят...
Хотя если они нашли бабла на Симетриксы найдут и на EMC DiskXtender, и ещё кучу гораздо интересно от EMC
А цену на процессоры и ОЗУ для серваков такого уровня не подскажете заодно?
Не думаю что они отличаются от обычных серверов 8)
>А цену на процессоры и ОЗУ для серваков такого уровня не подскажете
>заодно?Какого-такого?
Cерийные в районе 15 стоят.
Блэд корзина ~ 5.000$ + 1.500-2000$ за блейд, домой можно купить.
А заказные,типа 32 процессорной матери, с 2Тб ОЗУ, на то они и заказные.Ну а к примеру, блэйд забитый под завязку, - 10 лезвий c 20 штуками Opteron 2439,
примерно по 64Gb ОЗУ стоит в районе 60.000$
Ну и диск EMC CLARiiON CX4-120 в районе 8500-9000$ (расширяемый до 351 Терабайта)Всё удовольствие, за 70000$.
И можно избавится от трёх админов, которые будут трахать Linux и mdadm.
>>А цену на процессоры и ОЗУ для серваков такого уровня не подскажете
>>заодно?
>
>Какого-такого?
>Такого, к которым обычно присобачивают вышеописанные hiend-массивы. Для сравнения, так сказать.