Перечислить известные вам поисковые машины. Как работает поисковая машина. Зачем это вам

Поисковая система или просто “поисковик” – это , осуществляющая поиск интернет страниц в соответствии с запросом пользователя. Самая известная поисковая система в мире - это Google, самая популярная в России – Яндекс, а одной из самых старых поисковых систем является Yahoo. В архитектуре поисковой системы можно выделить поисковую машину – ядро системы, представленное набором программных модулей; базу данных или индекс , хранящую информацию обо всех известных поисковой системе интернет ресурсах; и набор сайтов, являющих собой точки входа пользователей в систему (www.google.com, www.yandex.ru, ru.yahoo.com, и т.д.). Все это соответствует классической трехуровневой архитектуре информационных систем: есть пользовательский интерфейс, бизнес логика, которая в данном случае представлена реализацией алгоритмов поиска и база данных.

Специфика поиска в интернете

На первый взгляд поиск в интернете мало чем отличается от обычного информационного поиска, например, от обработки к базе данных или от задачи поиска файла на . Так считали и разработчики первых поисковых систем в интернете, но со временем они осознали, что заблуждались…

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

Второе отличие, как одно из следствий первого – это то, что запрос представляется не в виде набора значений параметров (критериев поиска), а в виде текста, написанного человеком на естественном для него языке. Таким образом, перед тем, как начать поиск нужно еще понять, чего именно хочет автор запроса. Замечу, понять не другому человеку, а вычислительной машине.

Третье отличие уже менее очевидное, но не менее принципиальное: в каталоге или базе данных все элементы равноправны. В интернете имеет место конкуренция, а, следовательно, и разделение на более “благонадежных поставщиков информации” и источников, близких по статусу к “информационному мусору”. Так классифицируют ресурсы люди, и также к ним относятся поисковые машины.

И в заключении следует добавить, что область поиска – это миллиарды страниц, по несколько килобайт и более каждая. Около десятка миллионов страниц добавляется ежедневно и столько же обновляется. Все это представлено различными цифровыми форматами. К сожалению, даже современные технологии и ресурсы, имеющиеся в распоряжении лидеров рынка поисковых услуг в интернете не позволяют им обрабатывать все это многообразие “на лету” и в полной объеме.

Из чего состоит поисковая машина

В первую очередь важно осознать еще одно и, наверное, самое существенное отличие между работой поисковой машины в интернете и работой любой другой информационной системы, осуществляющей поиск в различного рода каталогах и базах данных. Поисковая интернет машина не ищет информацию среди того, что есть в интернете на момент поступления запроса, а пытается сформировать ответ на основании собственного информационного хранилища - базы данных, называемой индексом, где она хранит досье на все известные ей и периодически его обновляет. Другими словами, поисковая машина работает не с оригиналом, а с проекцией области допустимых значений поиска. Все последние изменения в интернете могут отразиться в результатах поиска только после того, как соответствующие страницы будут проиндексированы - добавлены в индекс поисковой системы. Итак, поисковая система в первом приближении состоит из поисковой машины, базы данных или индекса (index) и точек входа в систему.

Теперь кратко о том, из чего состоит поисковая машина:

  • Паук или спайдер (spider). Приложение, которое занимается скачиванием страниц интернет ресурсов. Никуда паук не “заползает” – он лишь запрашивает содержимое страниц точно так же, как это делает обычный интернет браузер, отправляя на сервер HTTP запрос и получая от него ответ. После того, как содержимое страницы скачано, оно отправляется индексатору и краулеру, о которых рассказывается далее.

  • Индексатор (indexer). Индексатор производит первоначальный анализ содержимого скачанной страницы, выделяет основные части (название страницы, описание, ссылки, заголовки и т.д.) и раскладывает все это по разделам поисковой базы данных – помещает в индекс поисковой системы. Этот процесс называют индексацией интернет ресурсов , отсюда и название самой подсистемы. На основе результатов первоначального анализа индексатор также может принять решение, что страница вообще “недостойна” находиться в индексе. Причины такого решение могут быть разными: страница не имеет названия, является точной копией другой, уже имеющейся в индексе страницы или содержит ссылки на запрещенные законодательством ресурсы.

  • Краулер (crawler). Это “животное” призвано “ползать” по ссылкам, имеющимся на скачанной пауком странице. Краулер анализирует пути, ведущие с текущей страницы на другие разделы сайта, или на страницы внешних интернет ресурсов и определяет дальнейший порядок обхода пауком нитей всемирной паутины. Именно краулер находит новые для поисковой машины страницы и передает их пауку. Работа краулера построена на базе алгоритмов поиска на графах в ширину и глубину.

  • Подсистема обработки и выдачи результатов (Search Engine and Results Engine). Самая важная часть любой поисковой машины. Алгоритмы работы этой подсистемы компании разработчики хранят в строгой секретности, поскольку они являют собой коммерческую тайну. Именно эта часть поисковой машины отвечает за адекватность ответа поисковой системы на запрос пользователя. Здесь можно выделить два основных компонента:
    • Подсистема ранжирования. Ранжирование – это страниц интернет сайтов в соответствии с их релевантностью определенному запросу. Релевантность страницы – это, в свою очередь, степень соответствия содержания страницы смыслу запроса, и эту величину поисковая машина определяет самостоятельно, исходя из огромного количества параметров. Ранжирование – эта самая загадочная и спорная часть “искусственного интеллекта” поисковой машины. На ранжирование страницы, помимо ее структуры и содержимого (контента) также влияют: количество и качество ссылок, ведущих на данную страницу с других сайтов; возраст домена самого сайта; характер поведения пользователей, просматривающих страницу и многие другие факторы.

    • Подсистема выдачи результатов. В задачи этой подсистемы входит интерпретация пользовательского запроса, его перевод на язык структурированных запросов к индексу и формирование страниц результатов поиска. Помимо разбора самого текста запроса, поисковая машина может также учитывать:
      • Контекст запроса , формируемый исходя из смысла ранее осуществленных пользователем запросов . К примеру, если пользователь часто посещает сайты на автомобильные темы, то на запрос со словом “Волга” или “Ока” он, вероятно, хочет получить информацию об автомобилях этих марок, а не о том, откуда начинают свое течение и куда впадают одноименные русские реки. Это называется персонализированным поиском , когда выдача на один и тот же запрос для разных пользователей существенно отличается.

      • Пользовательские предпочтения , о которых она (поисковая машина) может “догадываться”, анализируя выбираемые пользователем ссылки на страницах результатов поиска. Это еще один способ скорректировать контекст запроса: пользователь своими действиями как бы подсказывает машине, что именно он хотел найти. Как правило, поисковые машины в результаты поиска стараются добавлять страницы, релевантные запросу, но относящиеся к довольно разным сферам жизни. Допустим, пользователь интересуется кино и поэтому часто выбирает ссылки на страницы с анонсами киноновинок, даже если эти страницы не вполне релевантны исходному запросу. При формировании ответа на его очередной запрос система может отдавать предпочтение страницам с описанием фильмов, в названии которых встречаются слова из текста запроса.

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

      • Время . Поисковым машинам иногда приходится анализировать, когда имели место события, описываемые на странице. Ведь информация постоянно устаревает, а пользователю нужны в первую очередь ссылки на самые последние новости, актуальные прогнозы и анонсы событий, которые еще не завершились или должны наступить в будущем. Понять, что актуальность страницы зависит от времени, и сопоставить ее с моментом выполнения запроса также требует от поисковой машины изрядной доли интеллекта.

      Далее, поисковая машина ищет ближайший по смыслу ключевой запрос в индексе и формирует результаты, сортируя ссылки в порядке убывания их релевантности. Каждому ключевому запросу в индексе соответствует отдельный рейтинг страниц, релевантных ему. Не на каждое сочетание букв и цифр система заводит новый ключевой запрос, а делает это на основе анализа частоты тех или иных пользовательских запросов. Поисковая машина может также перемешивать в результатах поиска рейтинги из разных ключевых запросов, если посчитает, что пользователю нужно именно это.

Общие принципы работы поисковой системы

Нужно понимать, что услуги поиска в интернете – это очень и очень выгодный бизнес. В детали, за счет чего живут такие компании, как Google и Яндекс можно не вдаваться, поскольку основная часть их прибыли – это доходы от контекстной рекламы. А раз поиск в интернете является крайне выгодным делом, то и конкуренция среди таких компаний весьма серьезная. Что определяет конкурентоспособность на рынке интернет поиска? Ответ – качество выдачи поисковой системы. Логично, что чем оно выше, тем больше у системы появляется новых пользователей, и тем ценнее размещаемая на страницах этой самой выдачи контекстная реклама. Разработчики поисковых систем затрачивают большие усилия, направленные на то, чтобы “очистить” результаты своей поисковой выдачи от разного рода информационного мусора, называемого в народе спамом (spam). Более подробно о том, как это делается, будет рассказано в отдельной статье, а здесь я приведу общие принципы поведения поисковой системы, сформулированные в виде выводов по всему вышесказанному.

  1. Поисковая машина в лице своих пауков и краулеров постоянно сканирует интернет на предмет появления новых и обновления существующих страниц, поскольку неактуальная информация ценится ниже.

  2. Поисковая машина периодически обновляет ранжирование ресурсов по их релевантности ключевым запросам, поскольку в индексе постоянно появляются новые страницы. Этот процесс называют обновлением (update) поисковой выдачи.

  3. В силу огромных объемов информации, размещенной во всемирной паутине и ограниченности ресурсов самой поисковой системы, поисковая машина всегда старается загружать только самое (по ее мнению) необходимое. В ее арсенале имеются всевозможные фильтры, которые отсекают многое ненужное уже на этапе индексации или выкидывают спам из индекса по результатам обновления поисковой выдачи.

  4. Современные поисковые системы в ходе анализа запроса стараются учитывать не только текст самого запроса, но и его окружение: контекст и предпочтения пользователя, о которых было сказано ранее, а также время запроса, регион и многое другое.

  5. На релевантность конкретной страницы влияют не только внутренние ее параметры (структура, содержание), но и внешние параметры, такие как ссылки на страницу с других сайтов и поведение пользователя при ее просмотре.

Работа поисковых систем постоянно совершенствуется. Идеальная работа поисковой машины (для человека) возможна только в том случае, если все решения, касающиеся индексации и ранжирования будет принимать комиссия, состоящая из большого числа специалистов всех областей и направлений человеческой деятельности. Поскольку это нереально, то такую комиссию заменяют экспертные системы, эвристические алгоритмы поиска и прочие элементы искусственного интеллекта. Вероятно, работа всех этих подсистем также могла бы давать более адекватные результаты, если бы была возможность обрабатывать абсолютно все данные, имеющиеся в открытом доступе в интернете, но и это практически невозможно. Несовершенный искусственный интеллект и ограниченность ресурсов – две основные причины того, что результаты поисковой выдачи не всегда радуют пользователей, но все это лечится временем. На сегодня, по моему мнению, работа наиболее известных и крупных поисковых систем вполне соответствует потребностям и ожиданиям их пользователей.

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

Тогда появились каталоги (Яху, Дмоз и другие), в которых их авторы добавляли и сортировали по категориям различные сайты. Это сразу же облегчило жизнь тогдашним, еще не очень многочисленным пользователям глобальной сети. Многие из этих каталогов живы и до сих пор.

Но через некоторое время размеры их баз стали настолько большими, что разработчики сначала задумались о создании поиска внутри них, а потом уже и о создании автоматизированной системы индексации всего содержимого интернета, чтобы сделать его доступным всем желающим.

Основные поисковики русскоязычного сегмента интернета

Как вы понимаете, идея эта реализовалась с ошеломительным успехом, но, правда, все сложилось хорошо только для горстки избранных компаний, которым удалось не сгинуть на просторах интернета. Почти все поисковые системы, которые появились на первой волне, сейчас либо исчезли, либо прозябают, либо были куплены более удачными конкурентами.

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

Выйти на этот рынок сейчас и начать все с нуля — это скорее утопия, чем реальный бизнес проект. Например, одна из богатейших в мире корпораций Микрософт десятилетиями пыталась закрепиться на рынке поиска, и только сейчас их поисковик Бинг начинает потихоньку оправдывать их ожидания. А до этого была целая череда провалов и неудач.

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

В связи с этим можно считать, что список основных (лучших и самых удачливых) поисковиков рунета и всего интернета уже сформировался и вся интрига заключается только в том, кто кого в итоге сожрет, ну или каким образом распределится их процентная доля, если все они уцелеют и останутся на плаву.

Рынок поисковых систем России очень хорошо просматривается и тут, наверное, можно выделить двух или трех основных игроков и парочку второстепенных. Вообще, в рунете сложилась достаточно уникальная ситуация, которая повторилась, как я понимаю, только еще в двух странах в мире.

Я говорю о том, что поисковик Google, придя в Россию в 2004 году, не смог до сих пор захватить лидерства. На самом деле, они пытались примерно в этот период купить Яндекс, но что-то там не сложилось и сейчас «наша Раша» вместе с Чехией и Китаем являются теми местами, где всемогущий Гугл, если не потерпел поражение, то, во всяком случае, встретил серьезное сопротивление.

На самом деле, увидеть текущее положение дел среди лучших поисковиков рунета может любой желающий. Достаточно будет вставить этот Урл в адресную строку вашего браузера:

Http://www.liveinternet.ru/stat/ru/searches.html?period=month;total=yes

Дело в том, что большая часть использует на своих сайтах , а данный Урл позволяет увидеть статистику захода посетителей с различных поисковых систем на все сайты, которые принадлежат доменной зоне RU.

После ввода приведенного Урла вы увидите не очень приглядную и презентабельную, но зато хорошо отражающую суть дела картинку. Обратите внимание на первую пятерку поисковых систем, с которых сайты на русском языке получают трафик:

Да, конечно же, не все ресурсы с русскоязычным контентом размещаются в этой зоне. Есть еще и SU, и РФ, да и общих зонах типа COM или NET полно интернет проектов ориентированных на рунет, но все же, выборка получается довольно-таки репрезентативная.

Эту зависимость можно оформить и более красочно, как, например, сделал кто-то в сети для своей презентации:

Сути это не меняет. Есть пара лидеров и несколько сильно и очень сильно отстающих поисковых систем. Кстати, о многих из них я уже писал. Иногда бывает довольно занимательно окунуться в историю успеха или, наоборот, покопаться в причинах неудач когда-то перспективных поисковиков.

Итак, в порядке значимости для России и рунета в целом, перечислю их и дам им краткие характеристики:

    Поиск в Гугле стал для многих жителей планеты уже нарицательным — о том, вы можете прочитать по ссылке. Мне в этом поисковике нравился вариант «перевод результатов», когда ответы вы получали со всего мира, но на своем родном языке, однако сейчас он, к сожалению, не доступен (во всяком случае на google.ru).

    Так же в последнее время меня озадачивает и качество их выдачи (Search Engine Result Page). Лично я всегда сначала использую поисковую систему зеркала рунете (там есть , ну и привык я к ней) и только не найдя там вразумительного ответа обращаюсь к Гуглу.

    Обычно их выдача меня радовала, но последнее время только озадачивает — порой такой бред вылазит. Возможно, что их борьба за повышение дохода с контекстной рекламы и постоянная перетасовка выдачи с целью дискредитировать Seo продвижение могут привести к обратному результату. Во всяком случае в рунете конкурент у этого поисковика имеется, да еще какой.

    Думаю, что вряд ли кто-то специально будет заходить на Go.mail.ru для поиска в рунете. Поэтому трафик на развлекательных проектах с этой поисковой системы может быть существенно больше, чем десять процентов. Владельцам таких проектов стоит обратить внимание на эту систему.

Однако, кроме ярко выраженных лидеров на рынке поисковых систем русскоязычного сегмента интернета, существует еще несколько игроков, доля которых довольно низка, но тем не менее сам факт их существования заставляет сказать о них пару слов.

Поисковые системы рунета из второго эшелона


Поисковые системы масштаба всего интернета

По большому счету в масштабах всего интернета серьезный игрок только один — Гугл . Это безусловный лидер, однако некоторая конкуренция у него все же имеется.

Во-первых, это все тот же Бинг , который, например, на американском рынке имеет очень хорошие позиции, особенно, если учитывать, что его движок используется так же и на всех сервисах Яху (почти треть от всего рынка поиска США).

Ну, а во-вторых, в силу огромной доли, которую составляют пользователи из Китая в общем числе пользователей интернета, их главный поисковик под названием Baidu вклинивается в распределение мест на мировом олимпе. Он появился на свет в 2000 году и сейчас его доля составляет около 80% процентов от всей национальной аудитории Китая.

Трудно о Байду сказать еще что-то вразумительное, но на просторах интернета встречаются суждения, что места в его Топе занимают не только наиболее релевантные запросу сайты, но и те, кто за это заплатил (напрямую поисковику, а не Сео конторе). Конечно же, это относится в первую очередь к коммерческой выдаче.

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

К слову сказать, чтобы еще больше усложнить жизнь оптимизаторам, а может быть, чтобы поддержать спокойствие пользователей этого поисковика, Google с недавних пор применяет шифрование при передаче запросов из браузера пользователей в поисковую строку. Скоро уже нельзя будет увидеть в статистике счетчиков посетителей, по каким запросам приходили к вам пользователи с Гугла.

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

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

Решить эту задачу не так-то уж и просто, особенно учитывая, что поисковой системе нужно будет налету проанализировать содержимое миллиардов интернет страниц, отсеять лишние, а из оставшихся сформировать список (выдачу), где вначале будут идти наиболее подходящие под вопрос пользователя ответы.

Эта сверхсложная задача решается предварительным сбором информации с этих страниц с помощью различных индексирующих роботов . Они собирают ссылки с уже посещенных страниц и загружают с них информацию в базу поисковой системы. Бывают боты индексирующие текст (обычный и быстробот, который живет на новостных и часто обновляемых ресурсах, чтобы в выдаче всегда были представлены самые свежие данные).

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

Сам процесс индексации и следующий за ним процесс обновления индексных баз довольно времязатратный. Хотя Гугл делает это значительно быстрее конкурентов, во всяком случае Яндекса, которому на это дело требует неделя-другая (читайте про ).

Обычно текстовое содержимое интернет страницы поисковик разбивает на отдельные слова, которые приводит к базовым основам, чтобы потом можно было давать правильные ответы на вопросы, заданные в разных морфологических формах. Весь лишний обвес в виде Html тегов, пробелов и т.п. вещей удаляется, а оставшиеся слова сортируются по алфавиту и рядом с ними указывается их позиция в данном документе.

Такая шняга называется обратным индексом и позволяет искать уже не по вебстраницам, а по структурированным данным, находящимся на серверах поисковой системы.

Число таких серверов у Яндекса (который ищет в основном только по русскоязычным сайтам и чуток по украинским и турецким) исчисляется десятками или даже сотнями тысяч, а у Google (который ищет на сотнях языков) — миллионами.

Многие сервера имеют копии, которые служат как для повышения сохранности документов, так и помогают увеличить скорость обработки запроса (за счет распределения нагрузки). Оцените расходы на поддержание всего этого хозяйства.

Запрос пользователя будет направляться балансировщиком нагрузки на тот серверный сегмент, который менее всего сейчас нагружен. Потом проводится анализ региона, откуда пользователь поисковой системы отправил свой запрос, и делается его морфологически разбор. Если аналогичный запрос недавно вводили в поисковой строке, то пользователю подсовываются данные из кеша, чтобы лишний раз не грузить сервера.

Если запрос еще не был закеширован, то его передают в область, где расположена индексная база поисковика. В ответ будет получен список всех интернет страниц, которые имеют хоть какое-то отношение к запросу. Учитываются не только прямые вхождения, но и другие морфологические формы, а так же , и т.п. вещи.

Их нужно отранжировать, и на этом этапе в дело вступает алгоритм (искусственный интеллект). Фактически запрос пользователя размножается за счет всех возможных вариантов его интерпретации и ищутся одновременно ответы на множество запросов (за счет использования операторов языка запросов, некоторые из которых доступны и обычным пользователям).

Как правило, в выдаче присутствует по одной странице от каждого сайта (иногда больше). сейчас очень сложны и учитывают множество факторов. К тому же, для их корректировки используются и , которые вручную оценивают реперные сайты, что позволяет скорректировать работу алгоритма в целом.

В общем, дело ясное, что дело темное. Говорить об этом можно долго, но и так понято, что удовлетворенность пользователей поисковой системой достигается, ох как не просто. И всегда найдутся те, кому что-то не нравится, как, например, нам с вами, уважаемые читатели.

Удачи вам! До скорых встреч на страницах блога сайт

посмотреть еще ролики можно перейдя на
");">

Вам может быть интересно

Яндекс Пипл - как искать людей по социальным сетям Апометр - бесплатный сервис по отслеживанию изменений выдачи и апдейтов поисковых систем DuckDuckGo - поисковая система, которая не следит за тобой
Как проверить скорость интернета - онлайн тест соединения на компьютере и телефоне, SpeedTest, Яндекс и другие измерители
Яндекс и Гугл картинки, а так же поиск по файлу изображения в Tineye (тинай) и Google

Как работают поиcковые машины? Одним из замечательных свойств Интернет является то, что существуют сотни миллионов web-ресурсов, ожидающих и готовых быть представленными нам. Но плохо то, что есть те же миллионы страниц, которые, даже будучи нам нужны, не предстанут перед нами, т.к. просто неизвестны нам. Как узнать, что и где можно найти в интернет? Обычно для этого мы обращаемся к помощи поисковых машин.

Поисковые интернет машины представляют собой специальные сайты в глобальной сети, которые сделаны так, чтобы помочь людям отыскать во всемирной паутине нужную им информацию. Есть различия в способах, которыми поисковые машины выполняют свои функции, но в целом есть 3 основных и одинаковых функции:

Все они "обыскивают" интернет (или какой то сектор интернет) - на основе заданных ключевых слов;
- все поисковики индексируют слова, которые они ищут и места, где они их находят;
- все поисковики позволяют пользователям искать слова или комбинации из ключевых слов на основе уже проиндексированных и занесенных в свои базы данных web-страниц.

Самые первые поисковики индексировали до нескольких сотен тысяч страниц и получали 1,000 - 2,000 запросов в день. Сегодя топовые поисковики проиндексировали и индексируют в непрерывном режиме сотни миллионов страниц, обрабатывают десятки миллионов запросов в день. Ниже будет рассказано о том, как же работают поисковики и каким образом они "складывают" все кусочки найденной информации так, чтобы суметь ответить на любой интересующий нас вопрос.

Посмотрим на Web

Когда люди говорят о поисковых интернет машинах, они в действительности имеют в виду поисковые машины World Wide Web . Прежде, чем Web стал наиболее видимой частью интернет, уже существовали поисковые машины, которые помогали людям найти в сети информацию. Программы под названием "gopher" и "Archie" умели индексировать файлы, размещенные на разных серверах, подсоединенных к интернет Internet и многократно снижали временные затраты на поиск нужных программ или документов. В конце 80-х годов прошлого века синонимом "умения работать в интернет" было умение использовать gopher, Archie, Veronica и т.п. поисковые программы. Сегодня большинство интернет пользователей ограничивают свой поиск только всемирной сетью, или WWW.

Маленькое начало

Перед тем, как ответить вам где найти нужный документ или файл, это файл или документ должен быть уже когда то найден. Чтобы найти информацию о сотнях миллионах существующих WEB-страниц, поисковая машина применяет специальную программу-робот. Эта программа еще называется спайдер ("spider", паук) и служит для построения списка слов, найденных на странице. Процесс построения такого списка называется web-краулинг (Web crawling). Чтобы далее построить и зафиксировать "полезный" (имеющий значение) список слов, поисковый паук должен "просмотреть" массу других страниц.

Как же начинает любой паук (spider) свое путешествие по сети? Обычно стартовой точкой являются наиболее крупные мировые сервера и очень популярных web-страницы. Паук начинает свой путь с такого сайта, индексирует все найденные слова и продолжает свое движение далее, по ссылкам на другие сайты. Таким образом, робот-паук начинает охватывать все большие "куски" web-пространства. Google.com начинался с академического поисковика. В статье, описывающей как была создана эта поисковая машина, Сергей Брин и Лауренс Пейдж (основатели и владельцы Google) привели пример, как быстро работают гугловские пауки. Их несколько и обычно поиск начинается с использованием 3-х пауков. Каждый паук поддерживает до 300 одновременно открытых соединений с web-страницами. При пиковой загрузке, с использованием 4-х пауков, система Гугл способна обработать 100 страниц в секунду, генерируя траффик около 600 килобайт/сек.

Чтобы обеспечить пауков необходимыми для обработки данными, раньше Google располагал сервером, который занимался только тем, что "подбрасывал" паукам все новые и новые URL. Чтобы не зависеть от интернет сервис провайдеров в части серверов доменных имен (DNS), транслирующих url в IP адрес, Google обзавелся собственным сервером DNS, сведя все временные затраты на индексацию страниц до минимума.

Когда Google робот посещает HTML страницу, он принимает во внимание 2 вещи:

Слова (текст) на странцие;
- место их расположения (в какой части body страницы).

Слова, расположенные с служебных разделах, таких как title, subtitles, meta tags и др. помечались как особо важные для пользовательских поисковых запросов. Google паук был построен так, чтобы индексировать каждое подобное слово на странице, за исключением междометий типа "a," "an" и "the.". Другие поисковики имеют несколько другой подход к индексации.

Все подходы и алгоритмы поисковиков в конечном итоге направлены на то, чтобы заставить роботов пауков работать быстрее и эффективнее. К примеру, некоторые поисковые роботы отслеживают при индексации слова в title, ссылках и до 100 наиболее часто используемых на странице слов и даже каждое из слов первых 20 строк текстового содержания страницы. Таков алгортим индексации, в частности, у Lycos.

Другие поисковики, такие как AltaVista, идут в другом направлении, индексируя каждое отдельное слово странциы, включая "a," "an," "the" и други неважные слова.

Мета-Теги (Meta Tags)

Метатеги позволяют владельцу web-страницы задавать ключевые слова и понятия, которые определяют суть её содержания. Это очень полезный инструемнт, особенно когда эти ключевые слова могут повторяться до 2-3 раз в тексте страницы. В этом случае мета-теги могу "направить" поисковый робот к нужному выбору ключевых слов для индексации страницы. Существует вероятность "накрутки" мета-тегов сверх популярными поисковыми запросами и понятиями, никак не связаннными с содержанием самой старницы. Поисковые роботы умеют бороься с этим, путем, например, анализа корреляции мета-тегов и содержимого web-страницы, "выкидывая" из рассмотрения те мета-теги (соответственно ключевые слова) , которые не соответствуют содержимому страниц.

Все это касается тех случаев, когда владелец web-ресурса действительно желает быть включенным в поисковые результаты по нужным поисковым словам. Но нередко случается так, что владелец совсем не желает быть проиндексированным роботом. Но такие случаи не относятся к теме нашей статьи.

Построение индекса

Как только пауки закончили свою работу по нахождению новых web-страниц, поисковые машины должны разместить всю найденную информацию так, чтобы было удобно в дальнейшем ею пользоваться. Здесь имеют значение 2 ключевых компонента:

Информация, сохраненная вместе с данными;
- метод, которым эта информация проиндексирована.

В простейшем случае, поисковик мог бы просто разместить слово и URL адрес, где оно находится. Но это сделало бы поисковик совсем примитивным инструментом, так как нет никакой информации о том, в какой части документа находится это слово (мета-тегах, или в обычном тексте), используется ли это слово один раз или многократно и содержится ли оно в ссылке на другой важный и близкий по теме ресурс. Другими словами, такой способ не позволит ранжировать сайты, не обеспечит представление пользователям релевантных результатов и т.д.

Чтобы предоставить нам полезные данные, поисковики сохраняют не только информацию из слова и его URL адрес. Поисковик может сохранить данные о количестве (частоте) упоминаний слова на странице, присвоить слову "вес", что далее поможет выдавать поисковые листинги (результаты) на основе весового ранжирования по данному слову, с учетом его местонахождения (в ссылках, мета тегах, титуле страницы и т.п.). У каждого коммерческого поисковика есть своя формула для вычисления "веса" ключевых слов при индексации. Это одна из причин, почему по одному и тому же поисковому запросу поисковики выдают совсем разные результаты.

Следующий важный момент при обработке найденной информации - её кодирование с целью уменьшения объема дискового пространства для её сохранения. Например, в оригинальной статье Google описано, что для хранения весовых данных слов используется 2 байта (по 8 бит каждый) -- при этом учитывается вид слова (большими или прописными буквами), размер самих букв (Font-Size) и др. информация, которая помогает ранжировать сайт. Каждый такой "кусочек" информации требует 2-3 бита данных в полном 2-байтном наборе. В результате громадный объем информации удается сохранять в очень компактном виде. После того, как информация "сжата", пора приступать к индексации.

Цель индексация одна: обеспечить максимально быстрый поиск нужной информации. Существуют несколько путей для построения индексов, но самый эффективный - это построение хеш-таблиц (hash table). При хешировании используется определенная формула, с помощью которой каждому слову присваивается некое численное значение.

В любом языке существуют буквы, с которых начинается гораздо больше слов, чем с остальных букв алфавита. К примеру, слов на букв "M" в разделе английского словаря значительно больше, чем на букву "X". Это означает, что поиск слова, начинающегося с самой популярной буквы потребует больше времени, чем любое другое слово. Хешинг (Hashing) уравнивает эту разницу и уменьшает среднее время поиска, а также разделяет сам индекс от реальных данных. Хеш таблица содержит хеш-значения вместе с указателем на данные, соответствующие этому значению. Эффективная индексация + эффективное размещение вместе обеспечивают высокую скорость поиска, даже если пользователь задаст очень сложный поисковый запрос.

Будущее поисковиков

Поиск, основанный на булевских операторах ("and", "or", "not") - это буквенный поиск -- поисковик получает поисковые слова ровно так, как они введены. Это может вызвать проблему, когда, например, введенное слово имеет множество значений. "Ключ," например, может означать "средство для открытия двери", а может означать "пароль" для входа на сервер. Если вас интересует только одно значение слова, то вам, очевидно, будут не нужны данные по его второму значению. Можно, конечно, построить буквальный запрос, который позволит исключить вывод данных по ненужному значению слова, но было бы неплохо, если бы поисковик смог сам помочь вам.

Одна из областей исследований в области алгоритмов будущих поисковых машин - это концептуальный поиск информации. Это такие алгоритмы, кгда для нахождения релевантных данных используется статистический анализ страниц, содержащих данное поисковое ключевое слово или фразу. Ясно, что такой "концептуальной поисковой машине" потребуется гораздо больший объем для хранения данных о каждой странице и больше времени для обработки каждого запроса. В настоящее время многие исследователи работают над этой проблемой.

Не менее интенсивно ведутся работы и в области разработки поисковых алгоритмов на основе запросов естественного языка (Natural-Language query).

Идея естественных запросов состоит в том, что вы можете написать запрос так, как если бы спросили об этом коллегу, сидящего напротив вас. Не надо беспокоиться о булевских операторах или напрягаться для составления сложного запроса. Самый популярный на сегодня поисковый сайт на основе языка естественных запросов - это AskJeeves.com. Он преобразует запрос в ключевые слова, которые затем и использует при индексировании сайтов. Этот подход работает только в случае простых запросов. Однако, прогресс не стоит на месте, возможно, что совсем скоро мы будем "разговаривать" с поисковыми машинами на своем, "человеческом языке".

Что это

DuckDuckGo - это довольно известная поисковая система с открытым исходным кодом. Серверы находятся в США. Кроме собственного робота, поисковик использует результаты других источников: Yahoo, Bing, «Википедии».

Чем лучше

DuckDuckGo позиционирует себя как поиск, обеспечивающий максимальную приватность и конфиденциальность. Система не собирает никаких данных о пользователе, не хранит логи (нет истории поиска), использование файлов cookie максимально ограничено.

DuckDuckGo не собирает личную информацию пользователей и не делится ею. Это наша политика конфиденциальности.

Гэбриел Вайнберг (Gabriel Weinberg), основатель DuckDuckGo

Зачем это вам

Все крупные поисковые системы стараются персонализировать на основе данных о человеке перед монитором. Этот феномен получил название «пузырь фильтров»: пользователь видит только те результаты, которые согласуются с его предпочтениями или которые система сочтёт таковыми.

DuckDuckGo формирует объективную картину, не зависящую от вашего прошлого поведения в Сети, и избавляет от тематической рекламы Google и «Яндекса», основанной на ваших запросах. При помощи DuckDuckGo легко искать информацию на иностранных языках: Google и «Яндекс» по умолчанию отдают предпочтение русскоязычным сайтам, даже если запрос введён на другом языке.


Что это

not Evil - система, осуществляющая поиск по анонимной сети Tor. Для использования нужно зайти в эту сеть, например запустив специализированный с одноимённым названием.

not Evil не единственный поисковик в своём роде. Есть LOOK (поиск по умолчанию в Tor-браузере, доступен из обычного интернета) или TORCH (один из самых старых поисковиков в Tor-сети) и другие. Мы остановились на not Evil из-за недвусмысленного намёка на Google (достаточно посмотреть на стартовую страницу).

Чем лучше

Ищет там, куда Google, «Яндексу» и другим поисковикам вход закрыт в принципе.

Зачем это вам

В сети Tor много ресурсов, которые невозможно встретить в законопослушном интернете. И их число будет расти по мере того, как ужесточается контроль властей над содержанием Сети. Tor - это своеобразная сеть внутри Сети со своими социалками, торрент-трекерами, СМИ, торговыми площадками, блогами, библиотеками и так далее.

3. YaCy

Что это

YaCy - децентрализованная поисковая система, работающая по принципу сетей P2P. Каждый компьютер, на котором установлен основной программный модуль, сканирует интернет самостоятельно, то есть является аналогом поискового робота. Полученные результаты собираются в общую базу, которую используют все участники YaCy.

Чем лучше

Здесь сложно говорить, лучше это или хуже, так как YaCy - это совершенно иной подход к организации поиска. Отсутствие единого сервера и компании-владельца делает результаты полностью независимыми от чьих-то предпочтений. Автономность каждого узла исключает цензуру. YaCy способен вести поиск в глубоком вебе и неиндексируемых сетях общего пользования.

Зачем это вам

Если вы сторонник открытого ПО и свободного интернета, не подверженного влиянию государственных органов и крупных корпораций, то YaCy - это ваш выбор. Также с его помощью можно организовать поиск внутри корпоративной или другой автономной сети. И пусть пока в быту YaCy не слишком полезен, он является достойной альтернативой Google с точки зрения процесса поиска.

4. Pipl

Что это

Pipl - система, предназначенная для поиска информации о конкретном человеке.

Чем лучше

Авторы Pipl утверждают, что их специализированные алгоритмы ищут эффективнее, чем «обычные» поисковики. В частности, приоритетными источниками информации являются профили социальных сетей, комментарии, списки участников и различные базы данных, где публикуются сведения о людях, например базы судебных решений. Лидерство Pipl в этой области подтверждено оценками Lifehacker.com, TechCrunch и других изданий.

Зачем это вам

Если вам нужно найти информацию о человеке, проживающем в США, то Pipl будет намного эффективнее Google. Базы данных российских судов, видимо, недоступны для поисковика. Поэтому с гражданами России он справляется не так хорошо.

Что это

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

Чем лучше

В выдаче только звуки и ничего лишнего. В настройках поиска можно выставить желаемый формат и качество звучания. Все найденные звуки доступны для скачивания. Имеется поиск звуков по образцу.

Зачем это вам

Если вам нужно быстро найти звук мушкетного выстрела, удары дятла-сосуна или крик Гомера Симпсона, то этот сервис для вас. И это мы выбрали только из доступных русскоязычных запросов. На английском языке спектр ещё шире.

А если серьёзно, специализированный сервис предполагает специализированную аудиторию. Но вдруг и вам пригодится?

Что это

Wolfram|Alpha - вычислительно-поисковая система. Вместо ссылок на статьи, которые содержат ключевые слова, она выдаёт готовый ответ на запрос пользователя. Например, если ввести в форму поиска «сравнить население Нью-Йорка и Сан-Франциско» на английском, то Wolfram|Alpha сразу выведет на экран таблицы и графики со сравнением.

Чем лучше

Этот сервис лучше других подходит для поиска фактов и вычисления данных. Wolfram|Alpha накапливает и систематизирует доступные в Сети знания из различных областей, включая науку, культуру и развлечения. Если в этой базе находится готовый ответ на поисковый запрос, система показывает его, если нет - вычисляет и выводит результат. При этом пользователь видит только нужную информацию и ничего лишнего.

Зачем это вам

Если вы, например, студент, аналитик, журналист или научный сотрудник, то можете использовать Wolfram|Alpha для поиска и вычисления данных, связанных с вашей деятельностью. Сервис понимает не все запросы, но постоянно развивается и становится умнее.

Что это

Метапоисковик Dogpile выводит комбинированный список результатов из поисковых выдач Google, Yahoo и других популярных систем.

Чем лучше

Во-первых, Dogpile отображает меньше рекламы. Во-вторых, сервис использует особый алгоритм, чтобы находить и показывать лучшие результаты из разных поисковиков. Как утверждают разработчики Dogpile, их системы формирует самую полную выдачу во всём интернете.

Зачем это вам

Если вы не можете найти информацию в Google или другом стандартном поисковике, поищите её сразу в нескольких поисковиках с помощью Dogpile.

Что это

BoardReader - система для текстового поиска по форумам, сервисам вопросов и ответов и другим сообществам.

Чем лучше

Сервис позволяет сузить поле поиска до социальных площадок. Благодаря специальным фильтрам вы можете быстро находить посты и комментарии пользователей, которые соответствуют вашим критериям: языку, дате публикации и названию сайта.

Зачем это вам

BoardReader может пригодиться пиарщикам и другим специалистам в области медиа, которых интересует мнение массовой аудитории по тем или иным вопросам.

В заключение

Жизнь альтернативных поисковиков часто бывает скоротечной. О долгосрочных перспективах подобных проектов Лайфхакер спросил бывшего генерального директора украинского филиала компании «Яндекс» Сергея Петренко .


Сергей Петренко

Бывший генеральный директор «Яндекс.Украины».

Что касается судьбы альтернативных поисковиков, то она проста: быть очень нишевыми проектами с небольшой аудиторией, следовательно без ясных коммерческих перспектив или, наоборот, с полной ясностью их отсутствия.

Если посмотреть на примеры в статье, то видно, что такие поисковики либо специализируются в узкой, но востребованной нише, которая, возможно только пока, не выросла настолько, чтобы оказаться заметной на радарах Google или «Яндекса», либо тестируют оригинальную гипотезу в ранжировании, которая пока не применима в обычном поиске.

Например, если поиск по Tor вдруг окажется востребованным, то есть результаты оттуда понадобятся хотя бы проценту аудитории Google, то, конечно, обычные поисковики начнут решать проблему, как их найти и показать пользователю. Если поведение аудитории покажет, что заметной доле пользователей в заметном количестве запросов более релевантными кажутся результаты, данные без учёта факторов, зависящих от пользователя, то «Яндекс» или Google начнут давать такие результаты.

«Быть лучше» в контексте этой статьи не означает «быть лучше во всём». Да, во многих аспектах нашим героям далеко до Google и «Яндекса» (даже до Bing далековато). Но зато каждый из этих сервисов даёт пользователю нечто такое, чего не могут предложить гиганты поисковой индустрии. Наверняка вы тоже знаете подобные проекты. Поделитесь с нами - обсудим.

ПОИСКОВАЯ СИСТЕМА В ИНТЕРНЕТЕ

В Интернете хранится огромное количество полезной информации, но на поиски нужной может потребоваться много времени. Это одна из основных проблем, послужившая поводом к появлению поисковых машин. Поисковые машины Интернета связаны с базами данных, которые содержат каталоги значительной части информации, доступной в Интернете. Поисковые машины снабжены программами, которые делают индексацию баз данных, а люди-библиотекари классифицируют, сортируют и превращают Web в открытую для поиска среду. Несмотря на то, что существует более 100 поисковых машин и инструментов просмотра, пользователи нередко испытывают неудовлетворенность, вызванную трудностями при поиске необходимой им информации. И основным вопросом на сегодняшний день остается не наличие той или иной информации в Интернете, а вопрос о том, где ее искать.

Поисковые машины состоят из трех основных элементов. Первым элементом является индексатор, или, как его еще называют, «паук». Индексатор считывает информацию с web-страницы и переходит по ссылкам на другие страницы этого же webсайта. Web-сайты просматриваются регулярно, раз в месяц или раз в два месяца; это необходимо, чтобы следить за изменениями. Все данные о найденной информации поступают во вторую часть поисковой машины, индекс, или, как его иногда называют, каталог. Это что-то вроде огромной книги, которая хранит оглавление каждой найденной индексатором web-страницы. При изменении web-страницы обновляется и информация о ней в индексе. Иногда новые страницы или изменения попадают в каталог не сразу. А пока данные о web-странице не попали в каталог, страница недоступна для поисковой машины. Программное обеспечение поисковой машины - ее третья составляющая. Эта программа просеивает миллионы записанных в каталог страниц, чтобы найти информацию, отвечающую цели поиска, и затем ранжирует их по степени соответствия заданной цели. Поисковые машины, разработанные для анализа web-сайтов, базируются на использовании запросов. Пользователь набирает слова или фразы, соответствующие интересующей его теме.

Специальная программа (паук) «ползет» по Web-у и, затем, используя специальные алгоритмы поиска, за несколько секунд находит требуемые данные. Отвечая на поисковый запрос, поисковая машина перебирает миллионы источников и находит адреса соответствующих документов. Поисковые машины выдают аннотированные списки гиперссылок на соответствующие Интернет страницы. Если щелкнуть мышью по гиперссылке, то соответствующий ей адрес будет использован для нахождения текста, изображений и ссылок на другом компьютере. Поисковые машины Интернета со своими огромными каталогами web-страниц непрерывно совершенствуют алгоритмы поиска и расширяют свою функциональность. Каждая поисковая машина обладает индивидуальностью (имеет свои особые характеристики) и работает по-своему. Работа многих поисковых машин считается вполне успешной. Однако все современные системы страдают некоторыми серьезными недостатками:



1. Поиск по ключевым словам дает слишком много ссылок, и многие из них оказываются бесполезными.

2. Огромное количество поисковых машин с разными пользовательскими интерфейсами порождает проблему когнитивной перегрузки.

3. Методы индексирования баз данных, как правило, семантически не связаны с информационным содержанием.

4. Неадекватные стратегии поддержки каталогов часто приводят к тому, что выдаются ссылки на информацию, которой уже нет в Интернете.

5. Поисковые машины еще не столь совершенны, чтобы понимать естественный язык.

6. При том уровне доступа, который обеспечивают современные поисковые машины, практически невозможно сделать обоснованный вывод о полезности источника.

В последнее время потребности в интеллектуальной помощи быстро растут: помощь необходима для продуктивного поиска информации, для нахождения в необъятном Интернете или корпоративной сети специализированной информации. Это привело к появлению интеллектуальных агентов. Обычно интеллектуальные агенты являются составной частью поисковой машины. Некоторые особо продвинутые программы похожи на живых ассистентов. Для поиска и сортировки информации используются технологии искусственного интеллекта. Такая поисковая машина «думает» и действует сама. Пользователь обучает агента, затем агент отправляется на поиски в Интернет, чтобы из миллионов доступных документов выбрать нужные и дать им оценку. Пользователь может в любой момент «отозвать» интеллектуального агента и посмотреть, как продвигается работа, или продолжить его обучение на основе найденной информации, что сделает поиск еще более точным. В таблице 3 приведены примеры интеллектуальных агентов и их характеристики.

Интеллектуальные агенты выполняют ряд инструкций от имени пользователя или другой программы, могут работать независимо и иметь некоторую степень автономности в сети. Между интеллектуальными агентами и Java-апплетами существуют некоторые различия. Java-апплеты загружаются из Интернета и работают на машине пользователя. Интеллектуальные агенты фактически выходят в сеть и ищут приложения, помогающие завершить задание, выполняют свою миссию удаленно, освобождая компьютер пользователя для других задач. Когда цель достигнута, они извещают пользователя об окончании работы и представляют ему результаты.

Интеллектуальные агенты способны «понимать», какая именно информация нужна пользователю. Агенты могут быть запрограммированы на изменение поведения в зависимости от накопленного опыта и взаимодействий с другими агентами. Обобщенные характеристики интеллектуальных агентов могут быть представлены следующим образом:

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

Простота использования - можно «тренировать» агентов, используя естественный язык.

Индивидуальный подход - агенты адаптируются к предпочтениям пользователя.

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

Автономность - агенты способны «ощущать» окружающую среду и реагировать на ее изменение, умеют делать выводы.

Таблица 3

Примеры интеллектуальных агентов и их характеристики.

Масштабы информационных ресурсов и их количество в Интернете непрерывно расширяются. Становится ясно, что централизованная база данных, характерная для поисковых машин, не является удовлетворительным решением. Интеллектуальные агенты - это совершенно новое направление, лежащее в основе следующего поколения поисковых машин, которые смогут фильтровать информацию и добиваться более точных результатов. Например, Hyperlink-Induced Topic Search Engine, разработанная Джоном Клейнбергом из Корнэльского университета. Эта поисковая система не занимается «охотой» за ключевыми словами. Система анализирует естественную структуру Web в поисках «сообществ» страниц, относящихся к конкретному предмету, затем выясняет, какие из этих страниц считаются значимыми с точки зрения самих авторов страниц. Эта идея аналогична показателям цитируемости, которые давно используются в академическом сообществе. Такой подход более эффективен и надежен, чем традиционный поиск по ключевым словам.