23/11/2022
HighLoad++ начнётся уже завтра, 24 ноября! Приходите вживую или подключайтесь онлайн: трансляция докладов с главной сцены будет открытой.
О разработке в Яндексе на главной сцене расскажут:
1. 24 ноября, 13:30 (МСК)
Доклад: Как достать всё что угодно со всего интернета
Спикер — Илья Кучумов, руководит разработкой поиска по товарам в Яндексе
Ключевая задача нового поиска Яндекса по товарам — подготовить самую полную базу, учитывая предложения со всего интернета. Эта база формируется на основе данных партнёрских фидов и самостоятельного парсинга товаров в интернете. Значительную часть данных поставляет именно парсинг: без него поиск по товарам превратился бы в поиск по списку сайтов, а не по всему интернету.
Как работает наш парсинг, как мы оптимизировали код похостовым кешированием, как поддерживаем актуальность цен, как устроено машинное обучение и с какими подзадачами мы справились недостаточно хорошо — в своём докладе Илья будет рассказывать именно о поиске по товарам. Но аналогичные подходы Яндекс применяет и для других задачах по извлечению данных.
2. 24 ноября, 18:00 (МСК)
Доклад: SPQR: горизонтальное масштабирование PostgreSQL
Спикеры — Денис Волков (разрабатывает PostgreSQL в Yandex Cloud в команде Open Source DBMS development) и Кирилл Решке (кодит в Yandex Cloud)
Команда Yandex Cloud уже давно пытается горизонтально масштабировать PostgreSQL. Stateless Postgres Query Router — новая система Яндекса для горизонтального масштабирования PostgreSQL через шардирование (роутинг запросов по диапазонам). Система работает по протоколу Postgres, предполагает управление перемещением данных между шардами. Поддерживает работу как в сессионном, так и в транзакционном режиме пуллинга запросов.
Как это работает, объяснят Денис Волков и Кирилл Решке.
3. 25 ноября, 14:40 (МСК)
Доклад: Как мы делали отказоустойчивый Redis в Yandex Cloud
Спикер — Евгений Дюков, разрабатывает Managed Databases в Yandex Cloud
Говорят, что кластерным Redis пользуются только те, у кого он никогда не падал. Но проблемы с надёжностью случаются и у Sentinel, и у Redis Cluster.
Поэтому в Yandex Cloud создали собственный агент — rdsync (название выбрали по аналогии с другими своими решениями: pgsync — для PostgreSQL, mysync — для MySQL). Пропатчили Redis, чтобы можно было делать failover/switchover безопасно. Обложили это всё множеством функциональных и jepsen-тестов. Сделали отдельный демон, который может повторять протокол Sentinel с точки зрения взаимодействия с клиентами (https://redis.io/docs/reference/sentinel-clients/).
В докладе Евгений расскажет, чем команду Yandex Cloud не устроил вариант «из коробки», как они поддерживали обратную совместимость, как тестировали собственное решение и проверяли, что оно не теряет данные.
Крупнейшая профессиональная конференция для разработчиков высоконагруженных систем