Как Яндекс ищет ваши письма

Россия+7 (495) 960-65-87
Шрифт:
0 2483
Яндекс в своем блоге поведал аудитории о том, как устроен поиск по письмам в Яндекс.Почте. Оказывается, в индексе Яндекс.Почты хранится около 10 млрд. писем – это почти столько же, сколько страниц в индексе веб-поиска Яндекса. При этом поисковых запросов примерно в 1000 раз меньше, чем запросов к веб-поиску.

Отличительной особенностью поиска в Почте является то, что здесь очень важна полнота результатов: если веб-поиск не найдёт один-единственный сайт из трёх миллионов по запросу «пластиковые стулья», этого никто (кроме, разумеется, вебмастера этого сайта) не заметит. Гораздо критичнее, если потеряется письмо с важным адресом или паролем.

По этим причинам в поиске по Почте существует ряд архитектурных и технологических особенностей.

Архитектурные особенности: чтобы обеспечить полноту результатов, весь поисковый индекс для некоторого пользователя хранится на одном сервере и полностью дублируется на другом – если один сервер недоступен, то Яндекс ищет на дублирующем.

Технологические особенности: на каждом сервере располагается индекс по письмам пяти миллионов пользователей. Яндекс отмечает, что есть несколько вариантов построения индекса и рассказывает, как это реализовано.

1-й вариант решения: Индекс размером до 10 Гб
Максимальный размер каждого индекса 10 Гб. Следовательно, на каждом сервере получилось по 50-100 индексов, которые создаются в порядке поступления писем, а данные пользователя, таким образом, могут находиться в любом из индексов. Но письма часто содержат большое количество однотипной информации («привет», «пока», «@yandex.ru»), которая подходит под 46% всех запросов к поиску по Почте. Получалось, что ответ на такой запрос требовал поднять около 20% всех писем, хранящихся на сервере — это занимало десятки секунд.

2-й вариант решения: Префиксный индекс
Мы оставили максимальный размер индекса равным 10Гб, но перед каждым словом добавили ID пользователя. В результате каждый поиск сразу ограничивался количеством и размером писем в почтовом ящике текущего пользователя. Это снизило объем находимых данных и на порядок ускорило поиск. Но когда на диске – сотни индексов, то из-за большого числа дисковых операций поиск занимает несколько секунд. Наша же цель – десятые доли секунд.

3-й вариант решения: Шардирование по пользователям
Все индексы на сервере были разделены на 1000 сегментов (шардов). В каждом из них – от пяти до двадцати индексов размером до 1 Гб, и данные конкретного пользователя всегда находятся в определённом сегменте. В результате число дисковых операций было снижено до 20 раз по сравнению со вторым вариантом. Скорость поиска также увеличилась в разы. Так мы получили поиск за доли секунд.

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

Случилось что-то важное? Поделитесь новостью с редакцией.


Новые 
Новые
Лучшие
Старые
Сообщество
Подписаться 
Подписаться на дискуссию:
E-mail:
ОК
Вы подписаны на комментарии
Ошибка. Пожалуйста, попробуйте ещё раз.
Отправить отзыв
    ПОПУЛЯРНЫЕ ОБСУЖДЕНИЯ НА SEONEWS
    Тест: Кто как пробежал, или Итоги клиентского рейтинга SEOnews 2018
    Анна Макарова
    335
    комментариев
    0
    читателей
    Полный профиль
    Анна Макарова - Друзья, спасибо всем за участие! Мы определили победителей. Кто ими стал - вы найдете по ссылке: www.seonews.ru/events/darim-knigi-ot-mif-pobediteli-opredeleny/ Если вы стали одним из победителей, обязательно свяжитесь с нами по указанной в новости (по ссылке выше) почте. Всем хороших выходных! =)
    SEO глазами клиентов 2018
    Артур Якушев
    1
    комментарий
    0
    читателей
    Полный профиль
    Артур Якушев - >сейчас же сложно найти агентства, которые специализируются только на SEO Не так и сложно найти нас www.msk.lapkinlab.ru
    Комплексный аудит интернет-магазина от «Ашманов и партнеры». Часть 1
    Александр Сова
    1
    комментарий
    0
    читателей
    Полный профиль
    Александр Сова - А вот и сеошники подъехали, покидать на вентилятор :D
    Не очень удачный кейс продвижения сайта по услуге «Трезвый водитель» в Москве
    Кирилл Щербаков
    3
    комментария
    0
    читателей
    Полный профиль
    Кирилл Щербаков - "даже пришлось подключить отслеживание звонков с сайта" "Даже" - как будто это что-то нереальное
    Стартовал сбор заявок на участие в рейтинге «Известность бренда SEO-компаний 2018»
    Артем Первухин
    1
    комментарий
    0
    читателей
    Полный профиль
    Артем Первухин - Make KINETICA Great Again!
    Эксперимент: как уникальность контента влияет на продвижение сайта
    Ilia Nazmutdinov
    2
    комментария
    0
    читателей
    Полный профиль
    Ilia Nazmutdinov - Кстати, ПФ не работают на нулевом трафике. Пока на сайт не льются тысячи показов по одним и тем же запросам влияние оказывает ток ссылочное\внешнее и внутреннее\ и внутренняя оптимизация.
    Яндекс перестал индексировать сайты, созданные на Wix
    Константин Даткунас
    3
    комментария
    0
    читателей
    Полный профиль
    Константин Даткунас - Было бы интересно посмотреть саму выборку из 10 000 и методику анализа.
    Как использовать Python для LSI-копирайтинга
    Иван Бурмистров
    6
    комментариев
    0
    читателей
    Полный профиль
    Иван Бурмистров - Проверьте, пожалуйста, файл, в который были записаны результаты. Совпадает ли путь, приписанный к файлу, в который выгружаются результаты парсинга и файл, из которого достаются данные в переменную texts
    Прощай, тИЦ! Яндекс переходит на новый показатель качества
    Дмитрий Кондратенко
    3
    комментария
    0
    читателей
    Полный профиль
    Дмитрий Кондратенко - PR уже год как отменили, ТИЦ пол года не обновляется... Вы или "не те книги читали", или Вас кинули ушлые СЕОшники... www.internet-reklama.pp.ua
    Расчет трафика из поисковых систем по брендовым и небрендовым запросам
    Дарья Калинская
    0
    комментариев
    0
    читателей
    Полный профиль
    Дарья Калинская - А вот и статья :) www.seonews.ru/analytics/raschet-trafika-po-nebrendovym-zaprosam-pri-pomoshchi-r/
    ТОП КОММЕНТАТОРОВ
    Комментариев
    910
    Комментариев
    834
    Комментариев
    554
    Комментариев
    540
    Комментариев
    483
    Комментариев
    373
    Комментариев
    335
    Комментариев
    262
    Комментариев
    240
    Комментариев
    171
    Комментариев
    156
    Комментариев
    137
    Комментариев
    121
    Комментариев
    97
    Комментариев
    97
    Комментариев
    96
    Комментариев
    91
    Комментариев
    80
    Комментариев
    67
    Комментариев
    61
    Комментариев
    60
    Комментариев
    59
    Комментариев
    57
    Комментариев
    55
    Комментариев
    54

    Отправьте отзыв!
    Отправьте отзыв!