kaipa: (Default)
[personal profile] kaipa
На предстоящем этой осенью Хайлоаде анонсирован доклад Leif Walsh из Tokutek, где он будет рассказывать о том, как фрактальные деревья помогают масштабировать индексы на примере TokuMX (это MongoDB с индексакцией на фрактальных индексах от Tokutek). Это преподносится как супер-прорыв. С одной стороны, это так и есть, обычные бинарные индексы масштабируются хреново, а хэш индексы не везде можно использовать. С другой -- я два года назад рассказывал на том же Хайлоаде, как работают фрактальные индексы в TokuDB (это расширение MySQL от Tokutek), и упоминал об этом в  статье на Хабре, но никакого интереса это не вызвало. Разве что CEO Tokutek мне написал письмо с благодарностью за популяризацию (мы знакомы). Обидно, понимаешь. Вообще, доклад Лейфа Уолша, судя по аннотации, близок к моему прошлогоднему, где я рассказывал о распределенных базах данных для аналитики, только у него упор на горизонтальное масштабирование OLTP.

Для интересующихся, вкратце, проблемы с бинарными индексами следующие.
1) Скорость вставки (без балансировки) растет как log2N
2) Но без балансировки плохо, поэтому надо балансировать, что в худшем случае дорого (оценку не помню)
3) Удаление с балансировкой дорого
4) Поиск по дереву, если оно большое, плохо ложится на диск с последовательным чтением, то есть сегменты индекса могут быть раскиданы случайно. Из-за этого такие индексы приходится кэшировать целиком, иначе резко падает скорость. Для больших индексов плохо.

В целом, бинарные индексы нормально работают на не слишком большом объеме деревьев, но с ростом количества данных и размера индекса, производительность существенно падает. То есть индекс служит серьезным препятствием для масштабирования.

В компании Tokutek придумали и сделали так называемые индексы на фрактальных деревьев (фрактальные -- не от фракталов, а от fraction -- частей), которые свободны от перечисленных выше недостатков. Это несколько напоминает Log Structured Merge-Trees, но лучше. Как работает, можно понять из этой презентации.

Date: 2014-06-03 08:54 pm (UTC)
From: [identity profile] vincentfischer.livejournal.com
занятно, спасибо

Date: 2014-06-04 06:14 am (UTC)
From: [identity profile] ushastyi.livejournal.com
Пожалуйста.

Profile

kaipa: (Default)
kaipa

April 2017

S M T W T F S
       1
2345678
9101112131415
16171819202122
23242526272829
30      

Style Credit

Expand Cut Tags

No cut tags
Page generated Mar. 25th, 2026 06:30 am
Powered by Dreamwidth Studios