- Подписка на печатную версию:
- Подписка на электронную версию:
- Подшивки старых номеров журнала (печатные версии)
LXF82:Интервью:Алексей Гурешов
Материал из Linuxformat.
Генеральный директор проекта о своей поисковой машине Webalta
LinuxFormat: Рынок поисковых сервисов достаточно насыщен. В мире широко известны MSN, Google. В России - Яндекс, Rambler, Апорт, наконец. Как у вас родилась идея «втиснуться» в эту тесную компанию? Рассчитываете ли вы получить какую-то определенную долю рынка или занять свою уникальную нишу?
Алексей Гурешов: Попробую объяснить. В мире существует множество почтовых сервисов, Yahoo, Mail..ru и т.д. Но почему в таком случае поисковиков должно быть всего два или три? Кто говорит, что этот рынок насыщен? Об этом говорят сами поисковики, которые просто гребут деньги, и им выгодно так утверждать. Послушайте, какие комментарии дают Яндекс, Rambler, Google и другие о насыщенности рынка. Понятно, что никто из них не хочет пускать на этот рынок других конкурентов.
Но что касается качества поиска, то очень многие недовольны текущими поисковиками. Все заполонили дорвеи, и поисковый спам является достаточно серьезной проблемой. И почему же в таком случае не попробовать свои силы и не создать достойного конкурента? Тем более, что уже есть серьезные наработки, которые предоставили нам финансовые возможности для создания поисковой машины. Я слышал такую идею, что в ближайшие годы сможет выжить и укрепить свои позиции тот, кто сделает не просто поиск по сайтам, так как этого уже недостаточно, а тот, кто сможет предоставить результат в комплексе. В частности, вы вводите запрос «Владимир Путин», и вам сразу же демонстрируется его портрет, показывается его биография и т.д. Мы как раз планируем развиваться в эту сторону, и ведем активную работу в этом направлении. Второй момент – борьба с поисковым спамом. Проблема эта угрожающая, и если вы посмотрите статистику по тулбару LiveInternet, которые считает переходы по сайтам, программы-дорвеи имеют всего лишь вдвое меньше трафика, чем весь «Яндекс». Возьмем в качестве примера всего два сайта – Блокнотик.ру и Поиск. ру. Один имеет 23 процента, а другой 17 процентов, при этом 100 процентов имеет сам «Яндекс». Надеюсь, вы можете себе представить масштабы бедствия?! Просто об этом мало кто говорит, так как все это можно считать негативом, неким черным PR для поисковых машин.
LXF: Сколько человек работает в вашей компании?
АГ: В данный момент у нас трудится порядка 70 человек. И мы продолжаем искать талантливых людей. Например, поиск программистов, особенно толковых – очень большая проблема. Планируем также увеличить операционный отдел с выводом в свет контекстной рекламы. В мыслях развивать отдел PR и брендинга.
LXF: Сколько финансов было вложено в развитие поисковой машины Webalta, и сколько еще будет инвестировано?
АГ: У нашей компании есть уставной капитал в размере 20 миллионов рублей. На эти деньги сейчас выпущены акции. Наша компания – это открытое акционерное общество. На самом деле, вложений было гораздо больше, так как мы брали займы у частных лиц, учредителей. Разумеется, эти средства планируется вернуть. В реальности сегодня только на основные средства потрачено порядка 10 800 000 рублей и до достижения самоокупаемости нам придется еще достаточно вложить. У нас запланированы довольно большие затраты, например, на продвижение. Мы ведь планируем занимать долю на рынке.
LXF: Хотелось бы перейти к техническим вопросам. Как Webalta устроена изнутри? Как я слышал, в ее основе лежат разработки на основе Open Source?
АГ: Да, в основе поисковой машины лежит Scientific Linux 4.2. Мы выбрали его потому, что собран этот дистрибутив на базе Red Hat Linux. Если последний платный и стоит немалых денег, то Scientific Linux распространяется совершенно свободно. Так как у нас довольно много серверов, то приобретать для каждого лицензию на Red Hat Linux было бы довольно накладно.
LXF: Но ведь у Red Hat есть ряд преимуществ, например – сертификация Oracle.
АГ: Нам это не нужно, так как мы используем только Linux, и у нас нет ничего чужого, даже база данных у нас своя собственная. Еще одна причина, по которой мы выбрали Scientific Linux состоит в том, что компания Red Hat самостоятельно обновляет ядро, пишет модификации, накладывает патчи, а в данном случае мы сами берем ядро с Kernel.org и оно отлично работает. Возникала лишь проблема с драйверами, так как некоторые производители, в частности Adaptec, предоставляют драйверы в бинарном виде, собранном исключительно под Red Hat.. Но впоследствии мы эту проблему полностью решили, и сейчас у нас все отлично работает. Поначалу мы хотели выбрать дистрибутив Fedora Core, но умные люди нас отговорили от его использования, так как на нем Red Hat только тестирует и обкатывает все нововведения.
LXF: Не было ли идеи использовать Debian, который традиционно считается наиболее стабильным и консервативным решением?
АГ: Да, мы смотрели много дистрибутивов. Нам еще очень понравился Gentoo.. Но уж так исторически сложилось, что человек, который собирал нам весь кластер, нас убедил в том, что надо использовать именно Scientific Linux. Этот человек работает в довольно известном московском учебном заведении и занимает там серьезную должность, так что мы приняли его слова на веру.
LXF: Вы упомянули о кластере. Интересно было бы узнать, сколько в нем узлов, и какой объем трафика проходит через него.
АГ: Узлов, то есть серверов сейчас около семидесяти. Трафик на самом деле очень большой. Все узлы соединены через гигабитный Ethernet. Вначале мы хотели сделать все на основе Intel, но потом у нас возникли проблемы. Так, нам потребовалось установить сервер с 16 гигабайт ОЗУ. Для интеловских серверов требуется специальная память, которая стоит очень дорого. Получалось так, что эти 16 гигабайт стоили столько, сколько два аналогичных сервера с 16 гигабайтами на базе AMD Opteron. Так что сегодня мы практически полностью перешли на Opteron. Как нам кажется, по соотношению цена/качество сегодня на рынке ничего лучше нет. Тех серверов, которые у нас есть сейчас, нам хватит, по крайней мере, до конца года. Но уже осенью мы собираемся индексировать Европу, поэтому расширение технической базы неизбежно. Так что уже осенью серверная база вырастет втрое.
LXF: А кто поставляет вам серверы?
АГ: Мы сотрудничаем с двумя компаниями – Trinity Solutions и «Т-Платформы». По качеству и по уровню сервиса эти компании примерно равны.
LXF: На каком языке написан основной компонент поисковой машины – «паук»? АГ: Вообще, у нас не только «паук», но вся система написана на С++. Реально у нас просто установлен дистрибутив Linux, поверх которого стоит собственная программа. Никакого Apache у нас также нет, мы используем собственный http-сервер. Вначале мы пробовали использовать MPI для коммуникации между серверами, но как выяснилось, для наших целей он совершенно не годился, так как постоянно грузил процессор, туда-сюда гонял нулевые биты.
LXF: Насколько я знаю, вы отказались от использования файловых систем, и у вас осуществляется запись прямо на «голый» раздел?
АГ: Непосредственно в самих инвертированных списках так предполагалось первоначально. Это очень важно для скорости и оптимизации, так как мы можем раскладывать данные на диск так, как это нужно нам, а не файловой системе. У нас возникали проблемы с сервером, который содержит оригинальные документы, первоначально мы планировали складывать их на сервере с файловой системой ReiserFS, однако подобная схема сразу же не сработала. Дело в том, что ReiserFS попросту не в состоянии записывать на диск 4000 мелких файлов в секунду. В результате нами создана собственная файловая система, специально ориентированная на подобные вещи. Сейчас это хранилище у нас занимает примерно 12 терабайт, и его легко можно расширить до 96 терабайт. Попросту возможности ReiserFS нам оказались не нужны.
LXF: А вы не думали о реализации собственной файловой системы в ядре?
АГ: Хороший вопрос. Сейчас мы Интернет делим по кускам, доменам. Это все работает до определенной стадии, когда у тебя 20-30 узлов. Но когда их число доходит до сотни, возникают проблемы. Дальше Интернет будет нужно делить уже по словам. Списки определенных слов хранятся на определенных серверах. Чтобы данная система устойчиво работала, нам как раз и потребуется собственная файловая система. Сейчас мы ищем специалистов, способных написать подобные вещи. Скорее всего, мы будем делать файловую систему, которая сама бы нам раскладывала информацию, да и не просто раскладывала, но и могла делать равномерное дублирование по серверам. Это даст нам возможность использовать много маленьких дешевых машин, когда у нас пойдет реальная нагрузка.
В принципе, та система, которая у нас есть сейчас, выдерживает 20 миллионов запросов. Если поставить вторую копию, это даст 40 миллионов. Для России этого хватит, но чтобы поддерживать 14–16 миллиардов, нужно делить все по-другому. Естественно, мы думали об этом с самого начала, и перевести систему на новые рельсы не составляет никакого труда.
LXF: У каждой поисковой системы свой собственный алгоритм. Кто разрабатывал ваш алгоритм?
АГ: Алгоритмы поиска, как таковые описаны в учебниках. Эта информация существует уже давно и ничего принципиально нового здесь не придумано. Формула, которую мы используем для расчета близости, текста ссылок и т.д. – это наша собственная разработка. Главная задача поисковых алгоритмов – тестирование поисковой машины. Ведь Интернет сам по себе далеко не идеальный, там полно накрутчиков и множество сайтов, которые неправильно устроены, не соблюдают стандарты и т.д. Одним словом, это большая куча мусора, которую нужно как-то структурировать. Люди пишут в Title и на страницы все, что хотят, а задача поисковика выбрать то, что нужно. Сейчас у нас есть свыше двухсот настроек. Каждый коэффициент на что-то влияет. Так, мы умеем определять содержание страницы и т.д. Каждый коэффициент при изменении улучшает или ухудшает позицию страницы. Основная задача всех этих алгоритмов сводится именно к тестированию. Ведь как раньше тестировали поисковики? В них загружали некую идеальную базу документов, после чего добавляли эталонную базу вопросов и ответов, и после этого выравнивали. Нам кажется, что на текущий момент это уже устаревшая модель и тестировать надо непосредственно на Интернете. Мы уже создали эталонную базу вопросов и ответов, когда например, по слову «погода» в первой двадцатке должны оказаться одни результаты, на фразу «официальный дилер Mercedes» другие и т.д. Подобных запросов сейчас уже собрано около тысячи. У нас есть средство автоматической настройки, которое восстанавливает все коэффициенты с целью получения наиболее точных результатов. Но на основной базе мы его пока не пробовали.
На днях мы перешли на новое ядро, исправив тем самым множество критических ошибок. Нам пришлось полностью обнулить базу, и теперь мы собираем ее заново. В последующие дни мы уже будем заниматься качеством.
LXF: Какой принцип ранжирования страниц вы считаете наиболее оптимальным?
АГ: Один из ключевых моментов при ранжировании – это ссылки. Все поисковики используют определенные условия и определенные функции для учета этих ссылок. «Яндекс» считает ссылки по доменам, Google по страницам, а у нас реализована собственная модель, в результате которой получилось нечто среднее. Кроме того, мы добавили целый ряд своих нововведений, в частности мы учитываем не только ссылки на доменах, но и дату регистрации этих доменов. Ведь даже если появился какой-то сайт, но он появился только вчера и на него уже наставили кучу ссылок, вероятность того, что он будет в первых результатах поиска довольно мала. Мы это называем «уровнем доверия» к сайту. Помимо этого мы смотрим и на другие параметры – WHOIS, DNS и т.д. Все это в той или иной мере необходимо для борьбы с поисковым спамом. Все-таки хочется эту борьбу как-то автоматизировать, потому что сейчас в Рунете она как-то не слишком автоматизирована, по той причине, что поисковики борются с этим явлением уже по принципу свершившегося факта. То есть, поисковые спамеры сделали что-то, их обнаружили и забанили. Конечно, пытаются создавать специальных роботов, которые понимают Java Script и будут ходить и детектировать все эти дорвеи, но это тупиковый вариант. Ведь тот же Java Script можно закодировать так, что ни один робот его не сможет распознать.
Кстати, мы перешли на новое ядро и сбросили базу, теперь наращиваем ее. Далее займемся ее качественной отстройкой. Хотелось бы довести качество поиска до нормального состояния, чтобы его результаты были хотя бы сопоставимы с «Яндексом«.
Мы продолжаем разрабатывать новые интересное направление, например, собственный тулбар. Фактически он уже существует, и мы сейчас занимаемся шлифовкой мелких деталей.
LXF: Тулбар будет для всех браузеров?
АГ: Нет, пока только для Internet Explorer. Просто не все сразу.
LXF: Сегодня ваши поисковые базы заполнены не до краев. Когда планируется завершить наполнение?
АГ: Планируется, что к началу осени мы будем иметь одну из самых больших баз по российским документам. Текущая скорость индексации у нас составляет примерно сто миллионов уникальных страниц в сутки. Построить индекс по миллиарду страниц мы можем за десять дней. За август мы как раз планируем довести индекс до миллиарда. Вообще, русских страниц не так уж много, и довольно сложно бывает найти нужное количество страниц, с тем, чтобы построить самую большую базу.
LXF: Компания Google часть своего кода распространяет по открытой лицензии. Планируется ли нечто подобное в Webalta?
АГ: Пока не планируем. Есть определенные соображения, и отдавать какие-то программы мы, скорее всего, не будем. Но мы планируем создавать большое количество API-интерфейсов, чтобы разработчики могли интегрировать свои программы с нашими. В частности, подобная система сейчас разрабатывается для контекстной рекламы.
LXF: Какие дополнительные поисковые сервисы вы планируете реализовать в будущем?
АГ: Сервисов планируется выпустить достаточно. Просто у нас пока еще не до всего доходили руки. Например, мы планируем осуществлять поиск и по картинкам, и по блогам. Собираемся выдавать пользователю комплексный результат, который будет включать в себя все, что может соответствовать данному понятию – сайты, блоги, карты, изображения и т.д.
LXF: Существует еще один интересный и перспективный вид поиска – поиск по исходным текстам открытого ПО. Будет ли у вас нечто подобное создано?
АГ: Вообще говоря, не составляет никакого труда научить нашу текущую систему искать по программным текстам. Но насколько это нужно, сколько времени потребует доработка и, главное – сколько людей всем этим воспользуется, я не знаю. У нас много предложений по созданию специализированных видов поиска – например поиска по правительственным документам. Как я уже говорил, создание их не представляет никакого труда, но нам пока не хотелось бы распылять свои силы на начальном этапе.
LXF: Любой мало-мальски уважающий себя поисковик рано или поздно обзаводится собственным почтовым сервисом…
АГ: А у нас почта уже есть и сейчас тестируется. Она сделана на AJAX, и мы пока ею пользуемся сами, на себе тестируем. Собственно говоря, создаем единый аккаунт для всех наших сервисов. Он будет необходим, например, для унификации денежных расчетов. Мы планируем создать также собственную внутреннюю платежную систему. Так платить за контекстную рекламу можно будет из одного аккаунта. Сюда же будeт входить и еще многое другое. Кроме того, работаем над развлекательными сервисами и идем по абсолютно легальному пути, так как уверены, что в конечном итоге все к этому и придет.
Если представить себе всю структуру Webalta, то поисковик – это как бы некий хребет, который обрастает всем остальным, в данном случае новыми сервисами.
LXF: Для поиска очень большое значение имеет морфология. Морфологический модуль был разработан вашими специалистами или приобретен?
АГ: Да, это приобретение. Мы взяли чужую программу и практически переписали ее. Вообще Webalta в русском и английском языке уже сейчас умеет выделять генетивные пары. Каждый запрос подробно анализируется. Если вводится какой-то сложный запрос например стихи Александра Пушкина в таком-то издании, то система будет искать издание, стихи и имя поэта вместе, и пытаться это обработать. Ведь если еще несколько лет назад люди вводили в строке поисковика всего одно слово, то сегодня уже два-три. Количество информации растет, да и уровень интернет-пользователей постоянно увеличивается. Люди уже научились правильно составлять запросы, и мы видим свою задачу в том, чтобы обрабатывать не просто телеграфный текст или набор ключевых слов, а вполне осмысленные предложения. А для этого нужно научиться разбирать эти предложения и понимать, какие слова важные, а какие нет.
LXF: И последний вопрос Компания Google щедро спонсирует разработчиков браузеров, за что последние зачастую вставляют их в качестве поисковой машины по умолчанию. Были даже курьезные случаи, когда браузер FireFox называли Adware от Google. Собирается ли Webalta оказывать подобную поддержку?
АГ: Я работаю на Маке и пользуюсь браузером Safari. Там по умолчанию установлен только Google, и заменить его невозможно.. Нужно поверх устанавливать специальную программу, которая даст такую возможность. То же самое относится к FireFox. Выставить Webalta в качестве основной поисковой машины там невозможно, нужно писать специальный плагин.
Мы собираемся работать с теми браузерами, которые уже существуют, и будет предоставлять пользователям возможность установить наш поисковик в качестве основного. А что касается спонсирования, то это слишком дорогое удовольствие позволить себе поддержать создание какого-то браузера. Возможно, в будущем это произойдет.