Data Internals X

Балансировка по нагрузке в динтаблицах YTsaurus

Разработка СУБД

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

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

Доклад про алгоритм балансировки шардов по нагрузке. В распределенной и динамичной системе неизбежны перекосы по нагрузке, и требуется автоматика, которая вовремя и нужным образом перераспределит нагрузку по системе. В докладе будет рассказано решение, которое работает в динтаблицах YTsaurus.

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

Доклад будет полезен разработчикам распределенных СУБД и продвинутым пользователям, которые сталкиваются с задачей утилизации железа в распределенных СУБД.

Тезисы

Работа распределенной СУБД существенно зависит от шардирования данных. Когда данных много и они очень неоднородны — тысячи таблиц на сотнях машин — без фонового динамического перераспределения просто ничего не будет работать из-за постоянно возникающих неоднородностей, превышающих возможности отдельного шарда.

Данную задачу можно разделить на две основные части: техническую реализацию перемещения шарда между нодами и алгоритмический процесс выбора шардов, которые нужно переместить. В докладе я сконцентрируюсь на второй части и расскажу, как мы решаем задачу планирования перераспределения шардов по нагрузке в динтаблицах YTsaurus — распределенном key-value-сторадже, используемом для подготовки больших данных в Яндексе и выложенном в Open Source.

Разрабатывает динамические таблицы YTsaurus.

Видео

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

Разработка СУБД