Распределенные системы LSM-Tree презентация

Содержание

Ничего сложного Key-value хранилище на отдельно взятом узле кластера

Слайд 1Распределенные системы
LSM-Tree


Слайд 2Ничего сложного
Key-value хранилище на отдельно взятом узле кластера


Слайд 3API
Put
Get
Delete
Search?


Слайд 4Item
Name
Value
Deleted


Слайд 5Operational log
БД – некоторое состояние
Записи и удаления – команды его изменяющие
Для

получения текущего состояния – применить к пустому состоянию все команды

Слайд 7Operational log
+
Быстрая запись
-
Медленное чтение


Слайд 8Memory hash
Operational log + hash в памяти


Слайд 10Memory hash
+
По прежнему быстрая запись
Быстрое чтение
-
Объем ограничен оперативной памятью
Долгий старт


Слайд 11Snapshot
Периодически складываем memory hash
на диск


Слайд 13Snapshot
Ускорили старт…
… в некоторых ситуациях


Слайд 14Disk table
При записывании snapshot-а очищаем memory hash и operational log
Snapshot =

disk table
Записи в disk table отсортированы по ключам

Слайд 16Disk table
+
Быстрая запись
Быстрый старт
Избавились от ограничения на объем
-
Много Disk table-ов. Медленное

чтение.


Слайд 17Compaction


Слайд 18Size compaction
Задача:
Есть n отсортированных списков по m элементов в каждом.
Как слить

их в один отсортированный список?
Решение:
Сливать списки одинаковых размеров.


Слайд 20Size compaction
Много обращений к диску при чтении
С ростом данных будет расти

Можем

получить максимальное время операции

Слайд 21Leveled compaction
L0 – memory hash
L1, …, LN – Disk tables
L1 =

K * L0
Li = K * L(i-1)
K = 10

Слайд 22Leveled compaction


Слайд 23Скорость чтения
5 уровней – 5 обращений к диску
100 чтений/сек
20 чтений/сек


Слайд 24Bloom filter
Вероятностная структура данных
Отвечает на вопрос наличия элемента во множестве
Если ответ

- нет, то вероятность правильности ответа – 100%
Иной ответ - возможно

Слайд 25Bloom filter


Слайд 26LSM Tree – read


Слайд 27Search? Index!
B-Tree для индексов
Дорого просматривать результат
Встроенные индексы – отстой)
Денормализация – решение

проблемы

Слайд 28Примеры использования
LevelDB
BigTable
HBase
Riak
IndexDB
Cassandra


Слайд 29Спасибо за внимание!


Обратная связь

Если не удалось найти и скачать презентацию, Вы можете заказать его на нашем сайте. Мы постараемся найти нужный Вам материал и отправим по электронной почте. Не стесняйтесь обращаться к нам, если у вас возникли вопросы или пожелания:

Email: Нажмите что бы посмотреть 

Что такое ThePresentation.ru?

Это сайт презентаций, докладов, проектов, шаблонов в формате PowerPoint. Мы помогаем школьникам, студентам, учителям, преподавателям хранить и обмениваться учебными материалами с другими пользователями.


Для правообладателей

Яндекс.Метрика