19
Бинарные (файловые) хранилища Даниил Подольский Git in Sky

Бинарные (файловые) хранилища: страшная сказка с мрачным концом / Даниил Подольский (Qmobi.Com)

  • Upload
    ontico

  • View
    7.782

  • Download
    2

Embed Size (px)

Citation preview

Page 1: Бинарные (файловые) хранилища: страшная сказка с мрачным концом / Даниил Подольский  (Qmobi.Com)

Бинарные (файловые) хранилища Даниил Подольский Git in Sky

Page 2: Бинарные (файловые) хранилища: страшная сказка с мрачным концом / Даниил Подольский  (Qmobi.Com)

страшная сказка с мрачным концом

Page 3: Бинарные (файловые) хранилища: страшная сказка с мрачным концом / Даниил Подольский  (Qmobi.Com)

Немного теории •  Файл (англ. file) — именованная область

данных на носителе информации

–  Слишком большая, чтобы обращаться с ней как с единой сущностью

•  Краеугольный камень современного массового обмена данными

–  Наследие мрачных времен медленных каналов

Page 4: Бинарные (файловые) хранилища: страшная сказка с мрачным концом / Даниил Подольский  (Qmobi.Com)

Файловые хранилища Сегодня следует переименовать в «отдавалища» •  В бизнес-требованиях не написано

«хранить файлы»

–  Даже когда написано – это ошибка

•  В бизнес требованиях написано «отдавать файлы»

•  Но отдать можно лишь то, что имеешь

Page 5: Бинарные (файловые) хранилища: страшная сказка с мрачным концом / Даниил Подольский  (Qmobi.Com)

Еще чуть-чуть теории: файловые системы •  винтажные и журналируемые •  плоские и иерархические •  контроль доступа и расширенные атрибуты

Page 6: Бинарные (файловые) хранилища: страшная сказка с мрачным концом / Даниил Подольский  (Qmobi.Com)

И еще: POSIX •  Стандарт на интерфейс файловой системы

–  Open

–  Read

–  Write

–  seek, который мы ненавидим

•  Случайное (не последовательное) чтение

•  Случайная (не последовательная) запись

•  Операции атомарные и нет

Page 7: Бинарные (файловые) хранилища: страшная сказка с мрачным концом / Даниил Подольский  (Qmobi.Com)

И последнее: bells and whistles •  сжатие, шифрование, дедупликация

•  snapshots

Page 8: Бинарные (файловые) хранилища: страшная сказка с мрачным концом / Даниил Подольский  (Qmobi.Com)

Самое последнее •  Кеширование чтения •  Кеширование записи

Page 9: Бинарные (файловые) хранилища: страшная сказка с мрачным концом / Даниил Подольский  (Qmobi.Com)

HighLoad – это сеть •  Протоколы доступа

–  stateless

–  statefull

•  двуличная bitch отказоустойчивость

–  целостность данных –  бесперебойные запись и чтение

•  consistency-availability-partition

Page 10: Бинарные (файловые) хранилища: страшная сказка с мрачным концом / Даниил Подольский  (Qmobi.Com)

Так в чем проблема?

Page 11: Бинарные (файловые) хранилища: страшная сказка с мрачным концом / Даниил Подольский  (Qmobi.Com)

Берем большую-пребольшую СХД и… •  локальный кеш?!

•  конкурентная запись?!!

•  Берем OCFS2 и…

–  Как “падают виртуалки”?!

–  И почему так медленно?

•  А еще большую-пребольшую СХД довольно трудно получить в свое распоряжение

Page 12: Бинарные (файловые) хранилища: страшная сказка с мрачным концом / Даниил Подольский  (Qmobi.Com)

Берем CEPH/Lustre/LeoFS и… •  Почему так медленно?! •  Что значит “ребалансинг”?! •  И вообще – атомарные операции такие атомарные

Page 13: Бинарные (файловые) хранилища: страшная сказка с мрачным концом / Даниил Подольский  (Qmobi.Com)

А СУБД? Нельзя просто так взять и сложить все файлы в базу

Page 14: Бинарные (файловые) хранилища: страшная сказка с мрачным концом / Даниил Подольский  (Qmobi.Com)

Резервное копирование •  Не, не слышал •  Резервное копирование – это НЕ отказоустойчивость

Page 15: Бинарные (файловые) хранилища: страшная сказка с мрачным концом / Даниил Подольский  (Qmobi.Com)

Что же делать?

Page 16: Бинарные (файловые) хранилища: страшная сказка с мрачным концом / Даниил Подольский  (Qmobi.Com)

А какова задача? •  А надо ли экономить?

•  POSIX - нужен ли он?

•  Большие файлы - нужны ли они?

•  Атомарные операции - нужны ли они?

•  Версионирование - нужно ли версионирование?

•  Насколько большим должно быть наше хранилище?

•  И собираемся ли мы удалять файлы?

•  И каков будет профиль нагрузки?

Page 17: Бинарные (файловые) хранилища: страшная сказка с мрачным концом / Даниил Подольский  (Qmobi.Com)

I’m feeling lucky •  для некоторых сочетаний требований решение есть!

•  А для остальных - решения нет.

Page 18: Бинарные (файловые) хранилища: страшная сказка с мрачным концом / Даниил Подольский  (Qmobi.Com)

Так что же все-таки делать? •  искать бюджет

•  все-таки сложить все файлы в базу

–  личное мнение докладчика

•  написать свое

–  не так это и сложно!

–  но все же довольно сложно

Page 19: Бинарные (файловые) хранилища: страшная сказка с мрачным концом / Даниил Подольский  (Qmobi.Com)

Вопросы?