The OpenNET Project / Index page

[ новости/++ | форум | wiki | теги | ]

28.03.2010 18:22  Opendedup - файловая система с автоматическим объединением дубликатов данных

В рамках проекта Opendedup ведется работа по созданию новой распределенной файловой системы SDFS, специально оптимизированной для использования в качестве хранилища для виртуальных окружений, подобных XEN, KVM или VMware. Главная особенность новой системы заключается в поддержке автоматического объединения дубликатов - для одинаковых блоков данных сохраняется только одна копия, что значительно повышает вместимость файловой системы при хранении похожих по базовой начинке виртуальных окружений.

Максимальный размер общей файловой системы на базе SDFS ограничен 8 Петабайтами, максимальный размер одного файла - 250 Гб, предусмотрена возможность подключения в единый пул до 256 разных хранилищ, по 32 Терабайта в каждом. Исходные тексты SDFS написаны на языке Java и доступны в рамках лицензии GPLv2. Файловая система реализована через FUSE-модуль и не привязана к конкретной программной платформе (в настоящее время доступен модуль для Linux, но планируется поддержка других операционных систем).

Для хранения данных в SDFS используется любая стандартная файловая система или cloud-хранилище Amazon S3, при этом SDFS выступает в роли прослойки, выполняющей функции выявления и объединения дубликатов. Данные о позиционировании дубликатов могут храниться локально или могут быть распределены на несколько узлов в сети, объединенных в рамках общего распределенного хранилища. Производительность выполнения операции поиска и объединения дубликатов составляет около 150 Мб/сек. Кроме выявления дубликатов налету предусмотрен режим периодического фонового выявления дубликатов, который запускается в промежутки наименьшей активности и не сказывается на производительности online-операций. Имеется поддержка снапшотов на уровне файлов и директорий. Вычисление дубликатов производится путем использования единой глобальной хэш-таблицы для всех присутствующих в ФС блоков данных.

Базовые компоненты SDFS:

  • SDFS-раздел (SDFS Volume) - доступная для монтирования конечным пользователем дедуплицированная файловая система, которая может быть экспортирована на другие машины посредством NFS или CIFS;
  • SDFS-сервис (SDFS file-system service) - управляющий работой файловой системы сервис, организующий хранение мета-данных (размер, путь и другая информация за исключением непосредственно данных) и карты имеющихся дубликатов, связанных с находящимися внутри SDFS-раздела файлами и директориями. Каждый SDFS-раздел обслуживается своим SDFS-сервисом;
  • Движок дедупликации (Deduplication Storage Engine, DSE) - механизм для сохранения, извлечения и удаления повторяющихся блоков данных (размер блока 4 Кб). Блоки данных сохраняются на диске и индексируются с помощью хранимой в памяти хэш-таблицы. DSE может быть как привязан к SDFS-разделу, так и выступать в роли отдельного сетевого сервиса, обслуживающего несколько SDFS-разделов.


  1. Главная ссылка к новости (http://www.cio.com.au/article/...)
  2. OpenNews: В ZFS появилась поддержка исключения дубликатов
  3. PDF-документ с описанием архитектуры SDFS
Лицензия: CC-BY
Тип: К сведению
Ключевые слова: opendedup, sdfs, fs, linux, fuse
При перепечатке указание ссылки на opennet.ru обязательно
Обсуждение Ajax/Линейный | Раскрыть все сообщения | RSS
 
  • 1.1, RapteR (ok), 21:41, 28/03/2010 [ответить] [показать ветку] [···]    [к модератору]
  • +4 +/
    Ява через фузи... Куда катится мир... Или я упустил новость, где интел выпустил процессор Intel Sixty-Four-Core с частотой каждого ядра по 20 GHz и L2 кэшем 128 Mb по цене 5$ за камень?
     
     
  • 2.29, Stocker (?), 12:14, 29/03/2010 [^] [ответить]    [к модератору]
  • +1 +/
    Не, вы упустили новости о выходе java после версии 1.2
    О jit-компиляторах, hotspot vm...
     
  • 1.3, anonymous (??), 21:42, 28/03/2010 [ответить] [показать ветку] [···]    [к модератору]
  • +/
    Вместе с same page merge (или как его там назвали) еще больше возможностей для оверселлинга :(
     
     
  • 2.16, pavlinux (ok), 03:30, 29/03/2010 [^] [ответить]    [к модератору]
  • +/
    KSM - Kernel Same Page.
    Тока надо чтоб все софтины умели делать: madvise(new_block->host, size, MADV_MERGEABLE);
     
  • 1.5, devl547 (?), 21:47, 28/03/2010 [ответить] [показать ветку] [···]    [к модератору]
  • +/
    Уже давно есть lessfs (http://www.lessfs.com/)
     
  • 1.7, Онаним (?), 22:24, 28/03/2010 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    Это бы очень интересно смотрелось в качестве фичи файловой системы, но делать отдельную ФС под одну такую фичу...
     
  • 1.8, sHaggY_caT (ok), 22:31, 28/03/2010 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    >Файловая система реализована через FUSE-модуль

    И без этого в Xen диски тормозят, они еще и через fuse и на java :(
    Жесть вообще какая-то :(

    З.Ы. сама и идея и фича очень полезная, особенно если интегрировать ее с, например, централизованной установкой темплейтов, почти с десяток лет применяется многими на проприетарной Virtuozzo(vzfs)

     
  • 1.9, Tav (ok), 00:06, 29/03/2010 [ответить] [показать ветку] [···]    [к модератору]  
  • –3 +/
    Как всегда, вместо того, чтобы осуждать как оно работает, все обсуждают на чем оно написано. Просто установите и посмотрите, будет оно тормозить или нет в вашем конкретном случае.
     
     
  • 2.15, аноним (?), 03:17, 29/03/2010 [^] [ответить]    [к модератору]  
  • +3 +/
    Тормозит, на элементарных workload'ах. И жрет немерянно памяти. Вы хотели чуда?
     
  • 1.10, XoRe (ok), 01:04, 29/03/2010 [ответить] [показать ветку] [···]    [к модератору]  
  • +2 +/
    > Производительность выполнения операции поиска и объединения дубликатов составляет около 150 Мб/сек.

    Интересно, как они её рассчитали.
    Может мне потестировать её на моем ноуте с винтами на 5400 об/с ? =)

    > Исходные тексты SDFS написаны на языке Java и доступны в рамках лицензии GPLv2.

    Наверное тут нужно возрадоваться, что не на JavaScript.

    P.S.
    Одно радует - в ядро не возьмут.

     
  • 1.11, аноним (?), 01:45, 29/03/2010 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    > максимальный размер одного файла - 250 Гб

    Нахрена в наше время нужна ФС с такими ограничениями?

     
     
  • 2.19, аноним (?), 06:45, 29/03/2010 [^] [ответить]    [к модератору]  
  • +1 +/
    >> максимальный размер одного файла - 250 Гб
    >
    >Нахрена в наше время нужна ФС с такими ограничениями?

    практически для всего

     
  • 2.31, ig0r (??), 13:30, 29/03/2010 [^] [ответить]    [к модератору]  
  • +/
    позвольте уточнить, на каких задачах в наше время такого ограничения не достаточно?
     
  • 1.12, аноним (?), 01:46, 29/03/2010 [ответить] [показать ветку] [···]    [к модератору]  
  • –1 +/
    Дедубликация - приятная фича ФС. Если это самоцель, продукт можно сразу выкинуть, потому что сразу понятно, кто его писал. Не дает линуксоидам покоя мощь ZFS.
     
     
  • 2.17, минона (?), 05:18, 29/03/2010 [^] [ответить]     [к модератору]  
  • +1 +/
    линуксоид никогда бы не писал подобную хрень на java вы что-то явно путаете на... весь текст скрыт [показать]
     
  • 2.20, mma (?), 07:05, 29/03/2010 [^] [ответить]    [к модератору]  
  • –1 +/
    ой, мощь ZFS  таковой является только на бумаге, при практическом использовании этой мощи неожиданно натыкаешся на моменты которые часть этой мощи делают бесполезной.
     
     
  • 3.27, Andrew Kolchoogin (?), 11:46, 29/03/2010 [^] [ответить]    [к модератору]  
  • +/
    Какие-такие моменты?

    Нельзя ли аргументировать свои утверждения?

     
     
  • 4.46, Anonim (??), 00:14, 30/04/2012 [^] [ответить]    [к модератору]  
  • +/
    Для линукса ее нет )), что автоматически делает бесполезными все ее фичи
     
  • 3.34, аноним (?), 17:56, 29/03/2010 [^] [ответить]    [к модератору]  
  • +/
    ой, кончайте свистеть или аргументируйте
     
  • 1.13, pavlinux (ok), 02:59, 29/03/2010 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    > особенность новой системы заключается в поддержке автоматического объединения
    > дубликатов - для одинаковых блоков данных сохраняется только одна копия,

    Ага....

    Имеем, последовательность байт - 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 ] # обновили E

    2-ая итерация:

    X вернул C, на место S

    [X]: write() -> [ ABCDM ... опа, а должна быть E
    Файловая сиcтема: Мля, блоки не равны, надо делать двойника, но с измененной M на E
    [Y]: read()  -> [ ABCDM ]

    Файловая сиcтема: Опа, а они равны, надо объединять?!

    Итого: имеем 4 блочных клона вместо двух разных файлов.
    Аппроксимируя по времени, эти 4 клона превратятся в 4 полных файла.

    А 100 процессов, а 1000, а 10000 ???

     
     
  • 2.22, edo (ok), 08:36, 29/03/2010 [^] [ответить]    [к модератору]  
  • +/
    Вы какой-то странный COW придумали ;)
     
  • 2.32, анонимный аналитик (??), 14:22, 29/03/2010 [^] [ответить]    [к модератору]  
  • +1 +/
    гораздо более интересно глянуть на поведение системы, когда на забитом под завязку разделе, с кучей объединенных блоков потребутся внести изменения в один из общих блоков
     
     
  • 3.38, Warhead Wardick (?), 18:42, 29/03/2010 [^] [ответить]     [к модератору]  
  • +/
    И что же там гораздо более интересно -го COW придумали лет 40 назад, под него ... весь текст скрыт [показать]
     
  • 1.14, pavlinux (ok), 03:15, 29/03/2010 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    У меня была аналогичная ситуация, но когда 4 qemu работали с одним мастер образом.
    Даже периодически делая commit-all, в итоге, через неделю на дисках были полные копии образов.

    С точки зрения пользователя, даже с точки зрения операционной системы, они равны,
    а вот на блочном уровне вообще различны.
    Математически, существует такой закон распределения, который удовлетворяет
    распределению блоков в этих 4 образах. Но сколько нужно ресурсов, что его найти.
    Я так понимаю,  эта ФС будет заниматься не поиском закономерностей, а линейным
    по блочным сравнением.

    В конце-концов, у них хранилища мета-данных, карты имеющихся дубликатов и хэш-таблицы,
    займут столько же места, сколько и сами данные :)

    Вижу :) прибавление около 20% к объёму, но сколько это потребует усилий и средств.
    А дисковая память нынче практически ничего не стоит.

     
     
  • 2.18, минона (?), 05:29, 29/03/2010 [^] [ответить]     [к модератору]  
  • +/
    всё это верно, но и дедупликации есть вполне оправданное применение и ты сам да... весь текст скрыт [показать]
     
     
  • 3.26, Поросеночек (?), 11:37, 29/03/2010 [^] [ответить]    [к модератору]  
  • +/
    Кстати, в русском языке в корне дубль пишется Б
     
     
  • 4.33, минона (?), 14:48, 29/03/2010 [^] [ответить]    [к модератору]  
  • +/
    думаешь это кстати?
    но всё равно приятно, что современная молодёжь интересуется русским.
     
  • 4.35, Anon Y Mous (?), 18:34, 29/03/2010 [^] [ответить]    [к модератору]  
  • +/
    > Кстати, в русском языке в корне дубль пишется Б

    Русский язык богат и разнообразен. Что, в слове "дуплет" тоже Б писать прикажете?

     
     
  • 5.39, Михаил (??), 18:51, 29/03/2010 [^] [ответить]    [к модератору]  
  • +/
    >> Кстати, в русском языке в корне дубль пишется Б
    >
    >Русский язык богат и разнообразен. Что, в слове "дуплет" тоже Б писать
    >прикажете?

    Что интересно, получится "дублет" - тоже существующее слово, но совсем с другим значением.

     
     
  • 6.41, Anon Y Mous (?), 19:09, 29/03/2010 [^] [ответить]    [к модератору]  
  • +/
    Пошел посмотрел у Даля - смысл даже тот же самый может быть

    Век живи, век учись - все равно дураком помрешь :-)

     
  • 3.40, Warhead Wardick (?), 18:54, 29/03/2010 [^] [ответить]    [к модератору]  
  • +/
    > ... там где дупликатов много и они редко (или никогда) не обновляются.
    >например почтовые ящики. ни разу не встречал, когда рассылается "всем" одно и тоже?

    Тьфу блин! Даже Exchange 2000 хранил одну тушку мессэджа и столько линков сколько надо. Опенсорсные почтовики такое тоже давно могут. Если вы до сих пользуете старьё - это только ваши проблемы.

     
     
  • 4.42, минона (?), 21:06, 29/03/2010 [^] [ответить]    [к модератору]  
  • +/
    именно. это только мои проблемы.
    если я хочу юзать мэйлбокс и дедупликацию то это ничем не хуже твоего эксченча, который кстати изрядно крошил при сбое хранилище и на восстановление уходил рабочий день.
     
  • 2.21, mma (?), 07:11, 29/03/2010 [^] [ответить]    [к модератору]  
  • +/
    >А дисковая память нынче практически ничего не стоит.

    SSD?  Вот она основная цель этой ФС

     
  • 2.23, x (?), 08:45, 29/03/2010 [^] [ответить]    [к модератору]  
  • +/
    Чувак, видмо, просто не вкурсе сколько стоит дисковая память на каком-нибудь среднеуровневом массиве от HP или EMC.
    Про массивы hi-end уровня и упоминать даже не стоит.
     
     
  • 3.24, Michael Shigorin (ok), 10:59, 29/03/2010 [^] [ответить]    [к модератору]  
  • +1 +/
    Вы же явно в курсе с тем, как соотносится пропускная способность hi-end массивов с (кажущейся среднепотолочной) цифрой "150Мб/сек"...

    PS: спасибо за ссылку на lessfs.

     
  • 3.25, pavlinux (ok), 11:21, 29/03/2010 [^] [ответить]    [к модератору]  
  • +/
    >Чувак, видмо, просто не вкурсе сколько стоит дисковая память на каком-нибудь среднеуровневом массиве от HP или EMC.
    >Про массивы hi-end уровня и упоминать даже не стоит.

    Приятно познакомится, меня звать Сертифицированный специалист EMC BURA (EMC Backup, Recovery and Archiving)

    Думаш у них у всех EMC Symmetrix_ы стоят...
    Хотя если они нашли бабла на Симетриксы найдут и на EMC DiskXtender, и ещё кучу гораздо интересно от EMC

     
  • 3.28, zazik (ok), 11:48, 29/03/2010 [^] [ответить]    [к модератору]  
  • +/
    А цену на процессоры и ОЗУ для серваков такого уровня не подскажете заодно?
     
     
  • 4.36, otaku (??), 18:35, 29/03/2010 [^] [ответить]    [к модератору]  
  • +/
    Не думаю что они отличаются от обычных серверов 8)
     
  • 4.37, pavlinux (ok), 18:37, 29/03/2010 [^] [ответить]    [к модератору]  
  • +/
    >А цену на процессоры и ОЗУ для серваков такого уровня не подскажете
    >заодно?

    Какого-такого?

    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.  

     
     
  • 5.43, zazik (ok), 23:48, 29/03/2010 [^] [ответить]    [к модератору]  
  • +/
    >>А цену на процессоры и ОЗУ для серваков такого уровня не подскажете
    >>заодно?
    >
    >Какого-такого?
    >

    Такого, к которым обычно присобачивают вышеописанные hiend-массивы. Для сравнения, так сказать.


     

     Добавить комментарий
    Имя:
    E-Mail:
    Заголовок:
    Текст:


      Закладки на сайте
      Проследить за страницей
    Created 1996-2018 by Maxim Chirkov  
    ДобавитьПоддержатьВебмастеруГИД  
    Hosting by Ihor