Распределенные файловые системы: обзор

31
Распределенные файловые системы: обзор Докладчик: Тюлькин Антон, кафедра СП ВМиК МГУ Доклад

Upload: violet-yang

Post on 02-Jan-2016

54 views

Category:

Documents


0 download

DESCRIPTION

Доклад. Распределенные файловые системы: обзор. Докладчик: Тюлькин Антон, кафедра СП ВМиК МГУ. Предпосылки развития. Необходимость работать с удаленными данными Совместная работа с данными. Andrew FS. Client (Venus). Server (Vice). Server (Vice). Client (Venus). Server - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Распределенные файловые системы: обзор

Распределенные файловые системы: обзор

Докладчик:Тюлькин Антон, кафедра СП ВМиК МГУ

Доклад

Page 2: Распределенные файловые системы: обзор

Предпосылки развития

• Необходимость работать с удаленными данными

• Совместная работа с данными

Page 3: Распределенные файловые системы: обзор

Andrew FS

Server (Vice)

Server (Vice)

Server (Vice)

Client (Venus)

Client (Venus)

Client (Venus)

Client (Venus)

Volume Location Database на каждом сервере

Все клиенты видят единое глобальное пространство имен

Page 4: Распределенные файловые системы: обзор

Кэширование на клиенте

• Файл целиком кэшируется на клиенте в момент открытия

• Нет обменов с сервером до закрытия файла

• Другие клиенты увидят изменения только тогда, когда файл будет закрыт

Page 5: Распределенные файловые системы: обзор

CIFS, NFS

• SMB, NFS – не распределенная файловая система, а протокол удаленного доступа к файловой системе

• Не рассматривают важные аспекты РФС

• Общего назначения

Page 6: Распределенные файловые системы: обзор

Дальнейшая эволюция

• Рост объема хранимых данных

• Необходимость выполнять операции над большими объемами данных

• Доступ к данным не смотря на географическую удаленность

Page 7: Распределенные файловые системы: обзор

Создание новых систем

• HPC (high performance computing)

• DISC (data-intensive scalable computing)

• SRB (storage resource broker)

• Отдельный интерес к системам построенным на базе стандартных машин– отказоустойчивость

Page 8: Распределенные файловые системы: обзор

Что ожидает пользователь

• Единое глобальное пространство имен

• Стабильность (надежность хранения/доступность данных)

• Производительность

• Корректность операций (выполнение гарантий)

Page 9: Распределенные файловые системы: обзор

Внутренние механизмы

• Способы хранения данных и метаданных

• Методы дублирования данных/ресурсов

• Кэширование данных, распараллеливание операций

• Методы работы с разделяемыми ресурсами

Page 10: Распределенные файловые системы: обзор

DISC

• Основные характеристики– Хранение огромных объемов данных– Выполнение длительных заданий (batch jobs)

• Часто используется MapReduce парадигма• Использование дешевого оборудования• Примеры

– Google File System– Hadoop– Amazon S3

Page 11: Распределенные файловые системы: обзор

Ослабление семантики

• Использование определяет архитектуру и гарантии

• Пример:

GFS операции записи в конец (append) может породить дубликаты записей, паддинг регионы.

Page 12: Распределенные файловые системы: обзор

Архитектура GFS

Single Master

Chunk Server

Chunk Server

Chunk Server

Chunk Server

Client

Информация о файле

Обмен данными

Реплика 1

Реплика 2

Реплика 3

Page 13: Распределенные файловые системы: обзор

Отсутствие кэширования в GFS

• Ни клиент, ни чанк-сервер не осуществляют кэширование данных– Упрощает реализацию– Не проблема при потоковой обработке

данных

Page 14: Распределенные файловые системы: обзор

HPC

• Эффективные вычисления и обработка данных для научных приложений

• Особенности – Параллельная обработка данных– Более дорогое оборудование (и соответственно более

надежное)– Часто используется MPI

• Примеры– GPFS (IBM)– PVFS– Lustre (SUN)

Page 15: Распределенные файловые системы: обзор

GPFS

SharedDisk

SharedDisk

Shared Disk

File System Node

File System Node

File System Node

SwitchingFabric

Блочный интерфейс доступа

part1 part2 part3файл

Page 16: Распределенные файловые системы: обзор

GPFS

• Один распределенный менеджер блокировок– атомарность операций чтения/записи– консистентность кэшей– исключение: atime

• Альтернативный режим – узел отвечает за блок, все запросы идут на соответствующий узел

• Используется упреждающая загрузка данных, с учетом структуры доступа (например, последовательная); можно дать подсказки

Page 17: Распределенные файловые системы: обзор

PVFS

• I/O сервера узлы используют локальную ФС для хранения частей файлов

• Нет никаких блокировок, но каждая субоперация должна быть атомарной по отношению к файловой системе

• Несколько серверов метаданных

Page 18: Распределенные файловые системы: обзор

GPFS Locking vs PVFS non-locking

• Преимущества не-блокировок– Проще реализовать– Меньше задержек (меньше обменов сообщениями)– Нет состояния (проще восстанавливать после сбоев)

• Недостатки– Не POSIX семантика– Нужно делать сборку мусора

Page 19: Распределенные файловые системы: обзор

Lustre

• POSIX семантика (c минимальными исключениями)

• В ранних версиях: один сервер метаданных (+ один запасной)

• Полагаются на надежные диски (RAID), в будущих версиях планируются разбиение данных с использованием механизмов избыточности

• Распределенные «целевые» блокировки– можно ли кэшировать операции с метаданными

Page 20: Распределенные файловые системы: обзор

CEPH

• РФС общего назначения

• Несколько серверов метаданных, учитывается популярность метаданных для динамической репликации

• Данные реплицируются на несколько OSD (object storage device)

• Поддерживает POSIX, но расширяет интерфейс

Page 21: Распределенные файловые системы: обзор

POSIX vs HPC

• POSIX разрабатывался для одномашинных систем, с единым пространством виртуальной памяти и простым периферийным устройством хранения данных

• Исследования экспертов HPC показали, что использование POSIX не позволяет эффективно использовать имеющиеся ресурсы

Page 22: Распределенные файловые системы: обзор

HPC нагрузки

• Одновременный доступ к одному файлу несколькими клиентами

• Непоследовательный доступ к файлу

• Активное использование операций с метаданными (например параллельное создание файлов в директории)

Page 23: Распределенные файловые системы: обзор

Пример расширения POSIX

• Readdirplus (nfs3)• Openg, Openfh• Statlite• Writex, Readx

Page 24: Распределенные файловые системы: обзор

SRB

• Используется в большой, разнородной среде, используемой различными комьюнити

• Стандартные задачи– Найти данные– Получить данные– Как можно больше упростить жизнь клиента

• Особенности GRID– Разные форматы данных, разные хранилища данных– Разные сетевые топологии, технологии, методы доступа

Page 25: Распределенные файловые системы: обзор

SRB

• MCAT (metadata catalog)– URL– SQL– пути к файлам– и т.д.

• Драйверы для разных хранилищ данных

• Новые задачи: – Виртуализация доступа– Доступ к физически удаленным ресурсам– Работа через файерволы и т.п.

Page 26: Распределенные файловые системы: обзор

Тенденции в РФС

• Использование более интеллектуальных единиц хранения (например, OSD)

• Разделение данных и метаданных

• Упрощение механизмов обновления, создания файловой системы

Page 27: Распределенные файловые системы: обзор

Cloud computing

• Сервисы хранения (Amazon S3)

• Создание private cloud

• WAN РФС: XtreemFS, WheelFS

Page 28: Распределенные файловые системы: обзор

Wheel FS

• Основные принципы– Децентрализация– У каждого приложения свои потребности

• Способ– Управлять семантикой доступа к файлу

• /wfs/rtm/.anyversion/data• /wfs/rtm/.latestversion/data

– Давать подсказки системе• WriteOnce

– Локальные операции записи, чтение наподобие BitTorrent

Page 29: Распределенные файловые системы: обзор

Новая РФС от Google

• Существующие недостатки– Специальное поведение

• Например, записи в конец файла могут появляться в разном порядке, что неожиданно для программистов

– Нет оптимизаций для real-time приложений

– Один мастер• Проблема с большим количеством файлов• Неприемлемый простой в результате сбоя

– Большой размер чанка• Не эффективно работать с маленькими файлами

Page 30: Распределенные файловые системы: обзор

Много других задач

• Создание снапшотов

• Права доступа

• Оптимизация операций (например, collective IO)

• Синхронизация реплик

Page 31: Распределенные файловые системы: обзор

Конец

Спасибо за внимание