Как устроен Яндекс Поиск
Лекция от Дениса Нагорнова, встреча CodeFreeze 25.04.2013 г.
Денис Нагорнов работает в поиске Яндекса с 2000 года, делал поиск по Новостям, Блогам, Маркету. Сейчас руководит отделом разработки инфраструктуры веб-поиска и немного приглядывает за надёжностью и производительностью поиска.
Каждый день поиском Яндекса пользуются миллионы людей. Напечать запрос и получить ответ можно в считанные мгновения. За этой скоростью стоит работа тысяч компьютеров над огромными объёмами данных.
В докладе мы "заглянем" в миллисекунды, длящиеся от нажатия кнопки "Найти" до получения странички с ответами:
- основы полнотекстового поиска
- физическое и логическое устройство поисковой базы
- как происходит выполнение поискового запроса
- как справляться с высокими нагрузками
План доклада
Полнотекстовый поиск:
- прямой поиск (grep)
- инвертированный файл (индекс)
Составные части поиска:
- crawler («паук»)
- индексатор (парсеры, лингвистика)
- собственно, поиск
Устройство базового поиска в яндексе
- сам индекс (поиск)
- архивы (сниппеты, сохранённая копия)
- атрибуты (группировка результатов, свойства)
Структура базы: физическое и логические разбиения
Выполнение поисковых запросов
- поисковые источники
- проблемы производительности
- метапоиск: кеширование, сглаживание сетевых проблем
- общая схема выполнения запросов
Мониторинг
- составляющие скорости (бекэнд, сеть, пользовательский компьютер)
- проблема последнего ответившего источника
- среднее время vs. квантили 95%
- ключевые показатели
Комментарии:
← Как поднять посещаемость сайта с помощью умной перелинковки ∙ Видеокурс для асессоров Яндекса по оценке релевантности веб-страниц →