Пригласить западного докладчика в Россию — настоящий детектив :) Именно на таких ребят, как мы, валятся все шишки, вырастающие на деревьях антироссийских настроений. Но мы не унываем и собираем для вас лучших докладчиков со всего мира.
Henrik Ingo с докладом про понимание и тюнинг WiredTiger, нового высокопроизводительного движка в MongoDB. WiredTiger это MVCC-блокировки на уровне документов, сжатие и выбор между Btree и LSM-индексами. Хенрик расскажет про архитектуру движков хранения вообще и WiredTiger в частности, а также раскроет тему тюнинга и оптимизации последнего для максимальной производительности.
Еще одна заявка от Хенрика — описание алгоритма достижения консенсуса Raft и его применение в репликации MongoDB.
Представьте себе распределённую вычислительную систему, например, кластер нод MongoDB. Возможен ли частичный или полный выход из строя отдельных нод? Конечно, возможен. Ладно, если нода вышла из строя целиком, а если она работает, но предоставляет невалидные данные (так называемая византийская ошибка или split brain)?
Вот для получения согласованного значения группой вычислительных узлов в ситуации, когда возможны отказы отдельных узлов, и нужен алгоритм достижения консенсуса, об одном из которых расскажет Инго.
Продолжая тему баз данных и кластеров — заявка Oleksii Kliukin из Zalando (крупнейший интернет-магазин Европы) об отказоустойчивом PostgreSQL-кластере Spilo.
Spilo представляет из себя систему с несколькими репликами, основанную на потоковой репликации PostgreSQL. Для ее надежной работы не требуется вмешательство оператора, даже в случае аварии. Spilo берет на себя задачи добавления новых реплик в случае отказа существующих, а также своевременного создания резервных копий на основе механизма PITR (point in time recovery).
Логика отказоустойчивого кластера реализуется с помощью собственной open-source разработки Zalando — Patroni — программы, основанной на Compose Governor, берущей на себя задачи определения, является ли данный узел мастером или репликой, и использующей системы распределенного консенсуса, такие как Zookeeper или etcd, для предотвращения split brain.
О том, как использовать Спило и другие разработки Zalando в своем проекте вы узнаете в докладе Олексия и на стенде компании на технологической выставке, проходящей в рамках HighLoad++.