Как стать автором
Обновить

Комментарии 73

Короткое изложение поста:

Бла-бла-бла.
Бла-бла-бла Mail.ru
Бла-бла-бла Mail.ru бла-бла
В следующий раз будет еще много бла-бла-бла.

:)
Haters gonna hate. А пост интересный.
Слышал, что Mail.ru использовал морфологические модули aot, это совпадает с действительностью? И используете ли их сейчас?
Да, используем АОТ-овскую морфологию, через интерфейс-обёртку. Сейчас создали свою лингвистическую команду, словари пополняем самостоятельно.
Было бы интересно почитать почему остановились именно на нём, как стабильно\быстро работает и собираетесь ли переходить на свои наработки?

За пост спасибо.
Я не знаю, почему остановились на нём, выбор был сделан до меня. Думаю, что потому, что это довольно хорошая словарная морфология, на нормальной базе (словарь Зализняка), легко доступная. Работает она быстро, к ней есть у нас внутри претензии, но они все, в общем, сводятся к одному: за словарной базой нужно следить, оперативно её пополнять. Без этого всегда можно будет наблюдать чудеса в поиске.

Скорее всего перейдём на что-нибудь своё со временем, но тут сам код не является для меня приоритетным, скорее именно качество словарной базы.
Точная цитата и ее окружение воспринимаются в одном контексте. Или если с внешней стороны от кавычек есть текст, точная цитата перестает быть таковой?

Ошибки поиска go.mail.ru. Точная цитата и ее окружение воспринимаются в одном контексте.
Так и не поправили (
Кстати, а вот это отрабатывает корректно:
Никитин "Распределенное программно-информационное обеспечение"
150 серчеров это не так уж и много
Расскажите подробнее как это все у вас работало/работает технически
Сколько машин было отведенно под сборку результатов поиска — их иногда назвают метасерчеры
Как происходило кеширование результатов?
Что происходило если не все серчеры отвечали?
Хранили ли снипеты отдельно от документов?
Какие этапы проходил запрос до отправкви серчерам — сегментация, проверка опечаток или еще какие-то специфичные штуки.
Как решали вопрос 'дальних страниц'?
Короче мы жаждим больше деталей
Больше деталей будет в следующих постах :)

Конкретно, по Вашим вопросам:

150 серчеров это не так уж и много
Я нигде не написал их количество, но на старте было примерно так. И это действительно немного, но тут нужно понимать, что поиск можно сделать на любом количестве серверов — он занимает столько вычислительных мощностей, сколько есть. И он практически всегда развивается в сторону усложнения ранжирования, т.е. мы что-то делаем такое, что позволяет улучшить качество, но ест дополнительно процессорное время. Вопрос в том, чтобы всё это делать разумно, т.е. не просто наваливаться количеством серверов, а действительно делать рывки в качестве. Например, ранжирование на машинном обучении лучше, чем рукописная формула, но считается дольше. И это понятно почему: больше условий внутри, больше ветвлений и т.п.

Сейчас у нас серверов больше :)

Сколько машин было отведенно под сборку результатов поиска — их иногда назвают метасерчеры
Тогда было 4.

Как происходило кеширование результатов?
Просто, на 6 часов клался результат поиска (XML) в кеш и там лежал.
Тогда всё было просто, разницы между быстрыми базами не делалось, реалтайм индексов тоже ещё не было, а это усложняет кеширование. Гео-ранжирование тоже ещё не было сделано, а оно сильно просаживает такой простой кеш.

Что происходило если не все серчеры отвечали?
Кластер был один — приходилось отдавать ответ с неполным качеством, не кешируя его. Сейчас у нас кластеров больше, делаем failover на другие реплики.

Хранили ли снипеты отдельно от документов?
Имеется в виду прямой индекс?
Нет, он лежал (и лежит сейчас) вместе с основным.
Об этом много говорят и мы тоже потратили много времени на то, чтобы понять, нужно выносить прямой индекс на отдельные сервера, или нет. Нашли хороший вариант, с SSD, при котором даже был некоторый профит… но процедура обновления при этом сильно усложнялась, поэтому делать пока что не стали. В итоге, у нас сейчас есть компромисс: прямой индекс лежит на диске, но закеширован в памяти примерно на треть, что даёт нам нужную производительность.

Какие этапы проходил запрос до отправкви серчерам — сегментация, проверка опечаток или еще какие-то специфичные штуки.
Да, всё это есть. Классификация, отсылка на вертикали и т.п.

Как решали вопрос 'дальних страниц'?
Как и все — не пускаем туда и всё тут.
Случайно наткнулся на ваше обсуждение, а что такое вопрос 'дальних страниц'?
Это когда поисковик сообщает, будто нашёл 1 миллион документов, т.е., по 10 документов на странице, 100 тысяч страниц поисковой выдачи — что он будет делать, если человек действительно захочет изучить стотысячную страницу? Каждая следующая страница поисковой выдачи, с одной стороны, дольше считается и, с другой стороны, всё менее и менее полезна, так что реально выдавать всю выдачу нерационально, поэтому реально поисковики ограничивают свою выдачу каким-нибудь лимитом.
Понятно, спасибо. А я уж подумал вдруг поисковики не ходят на «дальние» страницы сайтов )
Это другая проблема — и, действительно, не ходят. Дело в том, что сайты бывают бесконечные, всё качать с них не получается. Классический пример — календарь без ограничения по дате, по ссылкам которого можно уйти куда угодно. Соответственно, спайдер должен уметь определять, что качать, а что — не качать.
Интересно, но я использую два других поиска и они мне нравяться.

А поискmail.ru потерял для меня актуальность, когда при установке чего-то-там, забыл отжать галку и оный поиск упорно лез в поиск «по умолчанию».
Спасибо!

Вы могли бы поставить что-нибудь другое, с сервисами одного из двух других поисковиков — и наблюдать бои поисковиков за умолчания :)

А если серьёзно — то я Вас понимаю и впоследствии мы обязательно расскажем и про дистрибуцию тоже, почему она такая, а не другая.
Как я вижу по комментам ниже, агрессивная дистрибуция не понравилась не только мне.

А у меня сложилось впечатление, что тот-же поиск гугла во многом «раскрутили» гики. Гикам же навязывание — кость в горло. Вот если бы наоборот — поиск только по приглашениям…
Она никому не нравится, но она есть у всех. В раскрутке Гугла было много факторов, и далеко не последнюю роль сыграло то, что он встал в своё время на Яху и АОЛ: представьте себе, что в одну ночь множество людей, пользующихся поиском Inktomi на Яху стали пользоваться поиском Гугла! Можно ли это называть навязыванием или нет? Ну и не стоит забывать, что первый тулбар появился тоже у Гугла.

Можете, кстати, почитать книжку «I'm Feeling Lucky: The Confessions of Google Employee Number 59», там в красках описывается, сколько сил потребовалось на то, чтобы встать на Яху и АОЛ.
>Сейчас я вижу, что ситуация изменилась: многие знают и принимают наш поисковик.
улыбнуло… кроме вашей компании им пользуются только те «счастливчики» кому практически насильно поставили Супер Мега «Спутник»…
Это не так.
Если людям поиск A не нравится, а поиск B — нравится, то они находят способ пользоваться поиском B. Хотя бы набрав его адрес в браузере :)

Дистрибуция влияет на появление новых пользователей у поиска, но вот остаются они на нём только в том случае, если он их устраивает, решает их задачи.
Однако на моей практике всё с точностью да наоборот. Уж сколько людей я повидал за последний год и сколько компов я ремонтировал — всюду просили убрать этот поисковик и снести «эти панельки» ©
Конечно, такие люди есть. Но Вы подумайте, здесь же есть смещение в выборке: люди, которых наш поиск удовлетворял, к Вам бы не обращались с просьбой его убрать.

Я спорю с Вашим утверждением о «только тех» — это не так, у нас есть лояльные пользователи.
Почему-то когда вижу «Mail.Ru», сразу вспоминается «Спутник» и из глубины души поднимается волна ненависти…
1..2..3..4..5..6..7..8..9..10
Успокоился…
Свой поиск это чудесно!
Особенно сложно его было вычищать после установки «Игрового центра Mail.Ru», т.к. в списке программ не значился + в браузерах эту панельку пришлось удалять ручками в about:config, а не через обычный список установленных дополнений
Спасибо!

Однако, просто чтобы Вы не нервничали — Вы перед там, как читать пост, убрали галочку «Установить ПоискMail.Ru поиском по умолчанию»?
Пост интересный, но если я увижу ещё раз ваш «спутник» на своём газоне — я буду стрелять на поражение.
Спасибо!
А Спутника не трогайте, пошугайте его и он сам уйдёт. Или калитку не открывайте. Если стрелять, да ещё и на поражение, то Вам потом нужно будет доказать, что он собирался посягнуть на Вашу жизнь — мороки не оберёшься.
Пошугать-то я не против, но в последний раз когда я забыл отжать галку на установку, пришлось вытаскивать его из системы по кускам, целиком он удалиться отказался. Вы такой судьбы ему хотели? :)
Ой нет, я тут представил…
Я ему передам, чтобы не лазил по чужим газонам!

PS. :)
Используете ли вы Hadoop / Nutch / еще какие-нибудь open-source решения?
Сейчас мы используем Hadoop и HBase. Почему и как — это как раз дальше напишу, а подробно можно посмотреть доклад Максима Лапаня на нашем последнем ТехФоруме: techforum.mail.ru/video/, доклад "
Использование Hadoop/HBase в поиске".
Обязательно пишите продолжение, не уподобляйтесь вашему коллеге, который пообещал рассказать, а не рассказал.
Спасибо, что напомнили — обязательно возьмем на карандаш!
mail.ru оставил в рунете заметный след. Но сейчас, когда я забредаю на просторы домена mail.ru (скорее, куда-то на «ответы», попадая туда через Гугл, правда), меня постоянно потрясает болото контента (такой, деревенский контент для деревенских же юзеров), дикий стиль оформления (уж простите, но ближайший пример — схема «вырви глаз» для больных зрением пользователей ОС), и желание активно захавать аудиторию, не глядя на качество предлагаемого продукта (к поиску, правда, оно мало относится, но им-то я уже вряд ли начну активно пользоваться — на домен ваш стараюсь и так не заходить). Ну и непритязательная реклама — пачками, для «простецов» ((с) Умберто Эко, не мое слово)

Укоренилось также мнение, что на mail.ru почту держат либо неграмотные в компьютерной теме, либо ленивые — опять же, предрассудок, вы вроде почту переделали, но второй раз в одну реку…

Есть ли планы по возвращению портала имени приличного? Извините, что я так прямо, но все же…
Мы проводили в своё время исследования, в попытках понять, влияет ли бренд на восприятие поиска. Ну и как он влияет, какое восприятие нас у наших пользователей; я частично рассказывал об этом исследовании на последнем РИФе. Я просто приведу оттуда цитату, как воспринимают бренды, как люди их характеризуют:
  • Mail.ru: родной, домашний, романтичный
  • Яндекс: поиск №1, «найдётся всё», удобный
  • Google: продвинутый, профессиональный

Это — положительные характеристики, я специально отобрал только их. Негатив тоже имеется (у всех) и для того, чтобы от него избавляться, портал меняется. Вот, главная страница была переделана — это же огромное дело, по-моему она стала лучше и легче. Почта стала сильно лучше. То есть, делается много.
Бренд и поиск — это хорошо. Но есть еще стиль, чувство меры, вкуса.

Mail.ru — пестрый, непрофессиональный (это я ваши же данные перефразирую), «для простецов», без особых изысков… Наверное, это можно было бы менять к лучшему. В конце-концов, армия ваших пользователей еще долго позволит даже ничего не делать, но дело такого крупного ресурса — не идти на поводу у серой массы неграмотных пользователей, а формировать для них более высокий уровень пользования, мне так кажется.

В любом случае, удачи, и спасибо за ваши статьи здесь — правда интересно, чем вы живете! Главное — растите, и не только серверами!
А все ли сотрудники mail.ru пользуются поиском mail.ru? В том числе и дома.
У нас нет принуждения.
Я — пользуюсь нашим поиском. Есть люди внутри компании, которые тоже им пользуются и часто мне рассказывают о проблемах. Но не все, конечно.
Эх, пост оборвался на самом интересном месте :-) Жду продолжения!
Рабоников mail.ru еще не бьют из-за их ПО?
может быть похвастаете своим?
НЛО прилетело и опубликовало эту надпись здесь
Возможно, глупый вопрос — но зачем? Гугл, Яндекс — что-то мне подсказывает, что они это делают лучше. Чем для обычного пользователя ваш поиск был бы привлекательнее от вышеназванных?
По-моему, предпосылка неправильная.
Почему «делают лучше»? Результат лучше, ну так и начали раньше.
Бинг догнал Гугл по качеству, хотя долгое время отставал.
Ну и мы догоним наших конкурентов. Сразу этого сделать не получается, но и задача непростая, кто спорит.

У нас есть интересные данные, социальные факторы, которые мы хотим использовать. Есть мысли по связке поиска с вопросо-ответными системами, нашими Ответами. Но чтобы этим вплотную заняться, нужно чтобы качество поиска было бы достойным, над чем мы сейчас и работаем.
Нехватает в фильтре выдачи на определенном языке
Мы пока что делаем поиск по Рунету, здесь в основном русский язык.
Но может быть вставим такой фильтр в расширенный интерфейс, подумаем.
Сто лет не логинился на хабре, т.к. забыл пароль, но увидев этот пост — преодолел свою лень, восстановил пароль и залогинился чтобы написать это объективно-гневное сообщение.

По поводу поисковика сказать ничего плохого не могу по той простой причине, что не пользовался им никогда. Поэтому к программистам у меня никаких претензий нет. Но вот маркетологов я ваших НЕНАВИЖУ! Уже не первый раз народ ставит какой нибудь из продуктов Mail.ru и забыв снять галочку при установке с «Поставить дополнительный мусор в браузер» постоянно мучается встроенными статусбарами, домашними страницами и поисковиками по умолчанию от любимой компании. Вечно от этого ужаса потом нужно какими-то страшными махинациями через about:config и прочими радостями выкорчёвывать всё это добро из системы. Сделайте вы наконец программу какую отдельную для очистки всего этого, или в uninstall программы добавьте какой. Поймите, силой людей пользоваться вашими дарами не заставишь, а лишь гнев разжигать будете.

Благодарю за внимание.
Зашел впервые на go.mail.ru сходу, тырить идеи, да и еще не у самого удачного проекта (я про bing.com) не самая умная мысль. Поисковая выдача очень слабая, фавиконов нет, выдача полностью соответствует выдачи гугла, за тем малым различием, что чуть выше стоят сайты, у которых есть рейтинг в моем мире. А вот рекламы значительно больше чем у гугла. Все скопировано у гугла, никаких собственных изобретений. Честно скажу разочарован, ожидал что вы хоть, что-то придумаете после стольких лет разработки.

Например для меня бы было приятным сюрпризом, что бы вы сделали поисковую выдачу на базе скриншотов сайтов, так как в большинстве случаев, я по внешнему виду могу определить, сайт помойка или нет. Я не говорю, что это просто, но это то чего мне не хватает у гугла и яндекса.
Скорее всего, если выдача полностью соответствует Гуглу, то вы и смотрите на выдачу Гугла в нашем дизайне :) Мы делим пользователей между своим движком и Гуглом, а так же показываем свою выдачу тогда, когда точно знаем что она лучше Гугловой — если есть наши подмесы, например.

Реклама у нас AdWords, она такая же, как на Гугле.

То что Вы называете различием («сайты, у которых есть рейтинг в моем мире»), выдаёт в Вас сеошника :) у них есть своя мифология о поисковиках, о нас они думают, что мы очень подвержены влиянию социальных рекомендаций. К примеру, мне «на ухо» на конференциях рассказывали о том, будто наш поиск очень просто накручивается лайками МоегоМира, когда этой информации даже не было в индексе. Сейчас мы учитываем социальные рекомендации, они очень хороши для определённых классов запросов (в основном, развлекательных), но поиск только на них не построишь и скопировать выдачу Гугла невозможно (у нас свой индекс, у них — свой, выдача разная)

Про скриншоты. Идея не нова и, судя по всему, нежизнеспособна. Дело в том, что веб-поиск отягощён тем, что им уже пользуются миллионы людей и они привыкли его использовать так, как сейчас. А сейчас паттерн использования следующий: ввести запрос, быстро его просмотреть снизу вверх, обращая внимания только на заголовки. Может быть, задержать взгляд на паре сниппетов. Кликнуть, изучить материал. Вернуться обратно на выдачу. Скриншоты этому паттерну мешают — они большие, их нужно внимательно изучать, пролистывать. Гугл, межу прочим, ввёл показ скриншотов пару лет назад — они показываются справа от выдачи; насколько я знаю, ни на что это особенно не повлияло.

Я думаю, что изменения в поиске возможны только большие и они связаны с интерфейсом — с распознаванием речи, общением на естественном языке. То есть, поиск будущего будет совершенно не похож на то, что есть сейчас — а вариант со скриншотами это «как сейчас, но с более крупными сниппетами».
По поводу восприятия вы очень не правы, графическую информацию мой мозг значительно быстрее усваивает и распознает, чем текстовую, например наличие у яндекса фавиконок при выдаче, для меня, огромный плюс, если были бы рядом небольшие скриншоты то мне было бы еще удобнее (то что сделал гугл не совсем то, так как требует наведения мышки на элемент листинга, но это лучше чем ничего).

Знаете если самим ничего нового не делать, а только ждать пока гугл что-то новое сделает, то ваши пользователи всегда и будут смотреть на выдачу гугла, а оправдываться и мечтать о телепорте это всегда легко.

Удачи вам и жаль, что вы опять вернулись к выдаче гугла.
… и я не seo специалист.
Осторожнее, alkalinin вербует аудиторию хабра. Задавайте ему вопросы, связанные со стратегией дистрибуции продуктов Mail.Ru Group. Даешь народу фотки маркетологов с разбитыми носами и фонарями под глазами! Вот такой контент действительно способен на корню изменить ситуацию. А популяризация через статьи слишком трудозатратна, ИМХО.
НЛО прилетело и опубликовало эту надпись здесь
Я его не защищаю. Просто я вижу ситуацию с другой стороны, знаю не только про нашу дистрибуцию, но и про чужую тоже. И наша дистрибуция, по-моему, ничем принципиально не отличается от дистрибуции конкурентов, ну, кроме того, что у нас ресурсов на неё тратится меньше, чем у них.

Я когда прочитал «У нас есть свой поиск!» сразу вспомнил про пару лет поисковой выдачи 1:1 с Яндексом… с тех пор я не учитывал позиции по Mail.ru. Видать изменилась ситуация. Надо будет глянуть.
Mail.Ru конечно молодцы, но гореть в аду вы будете вечно. Ваш «добрый» поисковой робот выкачал у меня с сервера трафика на ~20к руб. (2.80руб за мегабайт) за неделю. Спасибо вам ребята, даже гугла обскакали по агрессивности выкачивания (анализ логов показал что робот закачивал каждую страницу как минимум 10 раз, видимо для верности)! А сайт кстати небольшой, обычный форум на vBulletin, вложения для гостей закрыты, картинок максимум на 500 Мегабайт, expire 30d на nginx стоит на все изображения…
А что у вас за тарифный план такой?
На полярном круге интернет дорогой, а всё оттого, что пинги к нам мёрзнут :) Ищите тарифы в г. Салехард и удивляйтесь нашим ценам.
Пришлите мне, пожалуйста, на kalinin@corp.mail.ru адрес Вашего сайта, разберёмся.
Хорошо
Вопрос больше не из программирования, а из экономики.
Неужеле инвестиции в создание собственного движка + инвестиции в конкуренцию по поиску с Google и Yandex дешевле, чем лицензирование чужих движков?
Профиты от показа своей рекламы в результатах выдачи в перспективе перевесят затраты на разработку
Очевидно, да, и пример Яндекса с Гуглом это показывает :)

Если серьёзно, то тут два вопроса, про собственный поиск и конкуренцию с Яндексом и Гуглом, и они, на самом деле, друг с другом не связаны. Поиск монетизируется за счёт рекламы, причём, наверное, это лучший способ рекламы в интернете, пользователь видит релевантные его запросу предложения. Соответственно, вне зависимости от того, какой используется движок, портал с поиском заинтересован в увеличении количества запросов. Тем самым, конкурировать с Яндексом и Гуглом на поисковом рынке нам придётся даже в том случае, если у нас будет какой-то чужой, лицензированный движок. И тут получается довольно странная ситуация, потому что с одной стороны, поиск можно взять только у них (ну ещё у Бинга), а с другой стороны они являются нашими конкурентами. Тем самым, если есть серьёзные амбиции, то разработка собственного поискового движка оправдана.
НЛО прилетело и опубликовало эту надпись здесь
Не совсем релевантный вопрос, конечно; однако почему Mail.RU/2.0 боты спрашивают /sitemap.xml даже при наличии следующих правил в robots.txt?
User-agent: *
Disallow:

Есть какой-то способ объяснить им, что на запрашиваемом ресурсе такого адреса не существует, и вообще индексировать там нечего?
Извиняюсь за опечатку. Конечно же:
Disallow: /
Пришлите мне, пожалуйста, адрес сайта на kalinin@corp.mail.ru — посмотрим, поправим.
Вопросы, наверное, для следующих серий, но буду рад, если ответишь здесь:

1) Чем вы склеиваете Hadoop'овские таски в pipeline? Есть ли там вообще для этого механизм?
2) В Hadoop'е используете native API (Java) или стриминг в C++/Perl/Python whatever?
Привет, Костя!

1) Чем вы склеиваете Hadoop'овские таски в pipeline? Есть ли там вообще для этого механизм?
Там есть такой механизм, называется chained reducers, по-моему. Но мы им не пользуемся.
Ещё есть в Oozie организация запуска задач друг за другом — этим пользуемся.

2) В Hadoop'е используете native API (Java) или стриминг в C++/Perl/Python whatever?
Оба, но больше Java.
Мы используем HBase, там нет удобных биндингов к другим языкам, да и для самого Hadoop'а в Java-интерфейсах есть много преимуществ перед стримингом. Поэтому стараемся использовать Java, а C++ код подключаем через JNI.
Ага, спасибо.

в Java-интерфейсах есть много преимуществ перед стримингом. Поэтому стараемся использовать Java, а C++ код подключаем через JNI.

Реквестирую в следующих сериях описания конкретных преимуществ прямого использования Java.
Андрей Калинин, искренне приятно читать ваши ответы, уважаю ваше чувство выдержки, слог и знание предметной области. Вы прям крутой :)
Спасибо :)
Зарегистрируйтесь на Хабре, чтобы оставить комментарий