Лес Меркла, или Как мы уменьшили объём метаданных на 83% и заодно ускорили поиск дубликатов в 10 раз в СХД TATLIN.BACKUP

Базы данных и системы хранения

Базы данных / другое
Хранилища

Доклад принят в программу конференции

Мнение Программного комитета о докладе

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

Целевая аудитория

Разработчики систем хранения и баз данных.

Тезисы

Хранение бэкапов — это всегда очень большие объемы данных и долгий срок хранения. Разрабатывая нашу систему хранения данных (СХД) для резервных копий TATLIN.BACKUP, мы столкнулись с недопустимо быстрым ростом метаданных для восстановления данных, причём метаданные часто дублировались. При среднем сжатии данных в 6 раз и доступной ёмкости для данных в 690 ТБ, объём метаданных достигал 13 ТБ, что занимало всю выделенную ёмкость под них.

Я расскажу:
* как мы решали эту проблему с использованием структуры Дерева Меркла и сократили объём метаданных на 83% при средней дедупликации в 6x раз;
* как это позволило нам ускорить поиск дубликатов в 10 раз;
* о применении content-defined chunking-алгоритма для построения дерева для того, чтобы эти решения работали;
* о подобных (но не наших) решениях для систем контейнеризации и распределённых key-value-хранилищ.

Наш подход сильно экономит дисковое пространство, а значит, и финальную стоимость хранения. И его также могут использовать системы хранения и БД для ускорения операций поиска, pull/push-операций данных или быстрой синхронизации реплик в распределённых БД.

Ведущий инженер-программист в компании YADRO. Занимается разработкой системы хранения для резервного копирования TATLIN.BACKUP. До прихода в компанию разрабатывал системы автоматизации для тестирования взаимодействия между системами хранения данных PowerMax и IBM-мэйнфреймами в компании DellEMC.

YADRO

YADRO известна как разработчик и производитель всего, что можно увидеть в серверной и ЦОД: систем хранения данных, серверов, коммутаторов. Компания также создает телеком-оборудование операторского класса. Go-разработчики заняты как в развитии СХД, так и в телеком-направлении.

Видео

Другие доклады секции

Базы данных и системы хранения