
Евгений Иванов
Yandex Infrastructure
YDB — это распределенная СУБД, написанная на С++. Внутри нее множество интересных и сложных компонентов: lock-free и wait-free очереди, акторная система, асинхронный ввод-вывод для работы с блочными устройствами, взаимодействие по сети, слой GRPC, перекладывание json и protobuf, фьючи, промисы и, конечно, компиляция и движок выполнения запросов на языке YQL — собственном диалекте SQL.
Производительность YDB может ограничиваться как отдельными компонентами системы, так и их взаимодействием. Поэтому отладка производительности и ее оптимизация — сложная, но увлекательная задача.
Мы расскажем, как нам удалось сделать YDB не только надежной, но и исключительно быстрой СУБД. Поделимся опытом выявления и устранения узких мест, методами тестирования производительности и общими практиками, которые могут быть полезны всем разработчикам.
В конце доклада разберем практический пример использования самописного дискретно-событийного симулятора, раскрывающего красоту и пользу теории массового обслуживания в приложении к реальным сложным продакшн-системам.
Yandex Infrastructure
Yandex Infrastructure