Конференция завершена. Ждем вас на HighLoad++ в следующий раз!

Zero cost-абстракции на примере хэш-таблиц в ClickHouse С++

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

Разработчик ClickHouse.

Тезисы

Хэш-таблицы — это королевы структур данных. Нигде не сломано так много копий, как на оптимизации хэш-таблиц.

В своём докладе я расскажу ещё про одну хэш-таблицу, которая используется в ClickHouse.

Я покажу, как zero cost abstractions в современном С++ оправдывают себя, и как с помощью небольших трюков можно получить разнообразные структуры данных из общей кодовой базы.

На основе общих строительных блоков мы получим быстроочищаемую хэш-таблицу; несколько видов LRU-кэшей; lookup-таблицы без хэшей; хэш-таблицы для строк и т. п.

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

В моём докладе — самая мякотка низкоуровневых оптимизаций — в общем, то что мы любим.

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