[ Russian ] [ English ]

Yandex Database

Владислав Кузнецов
Яндекс
va-kuznecov@yandex-team.ru

Семен Чечеринда
Яндекс
svc@yandex-team.ru

Yandex Database (YDB) – это горизонтально масштабируемая реляционная база данных и один из важнейших инфраструктурных сервисов, на которых стоит Яндекс. Им пользуются Яндекс.Поиск, Яндекс.Облако, Алиса, Авто.Ру, сервис публично доступен в экосистеме Яндекс.Облака.

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

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

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

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

Слайды доклада (Распределенные транзакции в YDB)
Слайды доклада (Отказоустойчивость в YDB)

Видео доклада.

Литература:

  1. Документация Yandex Database. https://cloud.yandex.ru/docs/ydb/
  2. Kun Ren, Alexander Thomson, and Daniel J. Abadi. 2014. An evaluation of the advantages and disadvantages of deterministic database systems. Proc. VLDB Endow. 7, 10 (June 2014), 821–832. DOI:https://doi.org/10.14778/2732951.2732955
  3. Daniel J. Abadi and Jose M. Faleiro. 2018. An overview of deterministic database systems. Commun. ACM 61, 9 (September 2018), 78–88. DOI:https://doi.org/10.1145/3181853
  4. James C. Corbett, Jeffrey Dean et. al. Spanner: Google’s Globally Distributed Database. 2012. https://static.googleusercontent.com/media/research.google.com/en//archive/spanner-osdi2012.pdf
  5. M. Blaum, J. Brady, J. Bruck and J. Menon. EVENODD: an optimal scheme for tolerating double disk failures in RAID architectures. Proceedings of 21 International Symposium on Computer Architecture, 1994, pp. 245-254, doi: 10.1109/ISCA.1994.288145.
Supported by Synthesis Group