Теория создания поисковых машин. Поисковые машины и каталоги

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

  • Altavista
  • Апорт-поиск
  • Медиалингва
  • Рамблер
  • РусИнфОил
  • Русский Экспресс
  • ТЕЛА-поиск
  • HotBot
  • Яndex

Почему я перечислил именно эти поисковые машины? Потому что именно ими, по моим наблюдениям, пользуются русскоязычные нетизены (netizen). Что такое "мои наблюдения"? Это анализ логов доступа к моему серверу http://citforum.ru/ , точнее той части логов, гда собирается информация по HTTP_REFERER, т.е. адреса (URLs), на которых клиенты воспользовались ссылкой на какую либо страницу моего сервера.

Каков рейтинг перечисленных мною машин на практике, какими машинами пользуются больше, какими - меньше?

На первом месте с колоссальным отрывом от остальных идет Altavista. Эта поисковая машина лидировала еще до того как там появился поиск по различным языкам (в том числе - по русскоязычным документам). Ну оно и понятно - прекрасный, легкодоступный сервер, давно работает (с начала 1996 года), огромная база документов (свыше 50 миллионов адресов). Следует также учесть, что русскоязычные пользователи находятся не только в России, но и в Болгарии, Чехии и Словакии, в Польше, Израиле, Германии, не говоря уже о бывших республиках СССР - Украина, Белоруссия... (Особо хочу сказать о прибалтах: это они при встрече на улицах какого-нибудь Каунаса или Таллинна не знают русского языка, а перед монитором, особенно если очень нужно, очень даже знают:-)) Так вот всем этим пользователям удобнее пользоваться Альтавистой, а не нашими отечественными машинами - ближе, все таки...

Следующая по популярности поисковая машина, как ни странно, самая молодая в России - Яndex. Как мне говорил Алекей Амилющенко (компания Comptek) на сегодняшний день там наблюдается в среднем 72000 запросов в суткии и есть тенденция +10% в неделю (данные от 7.04.98). Мне кажется, Яndex наиболее перспективная российская поисковая машина. С комптековской системой разбора "великого и могучего" русского языка Яndex вполне может выйти победителем в конкуренции со вторым китом в этой сфере - Рамблером.

Рамблер - третья серьезная поисковая машина для русскоязычных пользователей. Главное, что мне в ней не нравится, так это игнорирование содержимого конструкции . (Это я не придумал, это сказал Дмитрий Крюков из компании Stack Ltd.) Наверное, именно из-за отказа учитывать ключевые слова, в результатах запросов выдаются такой странный набор ссылок. Второй недостаток чисто интерфейсного характера - результаты постоянно выдаются в кодировке КОИ, независимо от того, что выбрано пользователем перед этим. Третий недостаток: спайдер Рамблера работает по протоколу HTTP 0.9, что приводит к ошибкам индексирования, т.е. если на одном IP-адресе живут несколько виртуальных серверов, Рамблер видит только первый, а все остальные считает просто синонимами. Ну да ладно, будем надеяться, что это вскоре исправят.

Ну и на последнем месте по моему рейтингу идут Апорт-Поиск, который очень странно индексирует сервера, РусИнфОил, который регулярно закрывается на реконструкции и ТЕЛА-Поиск - красивый и почти бесполезный прибамбас для сервера www.dux.ru .

Вы спросите: а в списке были еще HotBot и метапоисковая машина Следопыт компании "Медиалингва"? Я их не забыл, просто HotBot непонятно почему оставляет в моих логах толпу записей, что не может быть случайными залетами не понимающих русского языка иностранцев (с других импортных машин таких залетов гораздо меньше), а "Следопыт" я еще недостаточно серьезно изучил.

А зачем же поисковые машины для раскрутки сайта?

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

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

Чтобы все произошло в лучшем виде требуется:

  • на сайте должет быть хоть какой-нибудь текст. Картинки и тест на них поисковые машины игнорируют. Правда, можно продублировать текст в атрибуте alt тага img
  • В каждом документе сайта ОБЯЗАТЕЛЬНО должны присутствовать осмысленный заголовок (title), ключевые слова (keywords) и краткое описание (description). Это только пишут, что поисковые машины - полнотекстовые, на самом деле это не так.
  • Изготовление файла robots.txt (особенно, если у вас есть собственный сервер типа www.name.ru).
  • Прописка вручную в каждой интересующей Вас поисковой машине и последующий контроль индексирования Вашего сайта.

Итак, Вы уже зарегистрировали первую страницу своего сайта в различных поисковых машинах.

Вы думаете уже все в подрядке? Как бы не так. Если ссылка на Ваш сайт в ответе поисковой машины выводится на втором экране -"это так же плохо, как если бы ссылки вообще не было" (Danny Sullivan, searchenginewatch.com)

Иначе говоря, просто указать страницу в AddURL недостаточно. Необходимо заранее подготовить документ так, чтобы на соответствующие запросы к поисковой машине в ее ответе на запрос ссылка на Ваш документ находилась если не первой, то хотя бы в первой десятке ссылок (а лучше, если в этой десятке было несколько ссылок на Вашы документы:-). Что значит "подготовить"? Это чисто технический вопрос, ничего сверхестественного. Просто в секции HEAD каждого документа Вашего сайта стоит указать "говорящий" Title, KeyWords, Description и Robots.

Title: заголовок документа. Хороший осмысленный заголовок может заставить пользователя из множества других выбрать именно Вашу ссылку. Зачастую видишь примерно следующие заголовки: "Содержание" - чего, зачем - непонятно, не возникает желания проверять. Другой случай: на всех страницах сайта в качестве заголовка - "Добро пожаловать в компанию..." - тоже не слишком привлекательно проверять все таким образом озаглавленные документы. Представьте себе, что выбран режим поиска по заголовкам, без описания каждого документа.

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

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

  • в поле content не должно быть знаков конца строки, кавычек и других специальных символов, регистр символов роли не играет
  • не рекомендуется повторять одни и те же ключевые слова по нескольку раз, это может быть воспринято как spam и страница рискует быть удаленной из индекса поисковой машины.
  • не стоит делать одинаковые keywords для разных страниц Вашего сайта. Это, конечно проще, но содержимое самих документов различное. Если очень хочется автоматизировать этот процесс, можно написать программку, которая прописывала бы в это поле все выделенные блоки документа, например, то что стоит между тагами H, I и B.
  • если строка в content слишком длинная, не возбраняется сделать еще несколько аналогичных конструкций.
  • вообще говоря, общий объем ключевых слов одного документа может достигать до 50% объема этого документа.

Description: краткое описание документа. Довольно полезный контейер, его содержимое используется как краткое описание релевантных документов в ответе современных поисковых машин. Если этого контейнера нет, то выдаются некоторое количество строк с начала документа. Соответственно, не редкая катина, когда в самом начале документа расположен JavaScript, и вместо нормального описания выдается абракадабра в виде куска скрипта.

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

Можно ли управлять действиями поисковых машин?

Можно, и даже нужно! Первое действие, которое для этого нужно совершить, это написать файл robots.txt и положить его в корень Вашего сервера. Этот файл популярно объясняет роботу поисковой машины что надо индексировать, а что не стоит. Например, зачем индексировать служебные файлы, типа статистических отчетов? Или результаты работы скриптов? Более того, многие "умные" машины просто не станут индексировать сервера, не найдя robots.txt. Кстати, в этом файле можно указать разные маски индексирования для разных поисковых машин.

Подробнее об этом можно прочитать в моем переводе "Standard for Robots Exclusion ". Второе действие: снабдить страницы сайта МЕТА-тагами Robots. Это более гибкое средство управления индексацией, чем robots.txt. В частности, в этом таге можно предписать роботу поисковой машины не уходить по ссылкам на чужие сервера, например, в документах со списками ссылок. Формат этого безобразия таков:

robot_terms - это разделенный запятыми список следующих ключевых слов (заглавные или строчные символы роли не играют): ALL, NONE, INDEX, NOINDEX, FOLLOW, NOFOLLOW. NONE говорит всем роботам игнорировать эту страницу при индексации (эквивалентно одновременному использованию ключевых слов NOINDEX, NOFOLLOW). ALL разрешает индексировать эту страницу и все ссылки из нее (эквивалентно одновременному использованию ключевых слов INDEX, FOLLOW). INDEX разрешает индексировать эту страницу NOINDEX неразрешает индексировать эту страницу FOLLOW разрешает индексировать все ссылки из этой страницы NOFOLLOW неразрешает индексировать ссылки из этой страницы

Если этот мета-таг пропущен или не указаны robot_terms, то по умолчанию поисковый робот поступает как если бы были указаны robot_terms=INDEX, FOLLOW (т.е. ALL). Если в CONTENT обнаружено ключевое слово ALL, то робот поступает соответственно, игнорируя возможно указанные другие ключевые слова.. Если в CONTENT имеются противоположные по смыслу ключевые слова, например, FOLLOW, NOFOLLOW, то робот поступает по своему усмотрению (в этом случае FOLLOW).

Если robot_terms содержит только NOINDEX, то ссылки с этой страницы не индексируются. Если robot_terms содержит только NOFOLLOW, то страница индексируется, а ссылки, соответственно, игнорируются.

Контроль за текущим состоянием Ваших документов в индексе поисковых машин.

Ну хорошо, Вы прочитали все, что было выше и так и сделали. Что же дальше? А дальше будет долгая, нудная и, главное, регулярная проверка на предмет того, как обстоят дела. Как ни печально, а придется уделять этому внимание хотя бы потому, что документы временами пропадают из поисковых машин. Почему? Знать бы... Итак, в хороших поисковых машинах можно посмотреть какие документы и сколько их в текущее время находится в индексе. Вот как это делается:

Alta Vista
В этой поисковой машине проверку статуса URL осуществить довольно просто - достаточно набрать в строке запроса:

url: citforum.ru
url:citforum.ru/win/
url:citforum.ru/win/internet/index.shtml

В первом случае будут выданы все проиндексированные страницы сервера. Во втором - только страницы Windows-кодировки. В третьем - есть ли в индексе AltaVista файл index.shtml из указанной директории

Excite
Так же просто как и в AltaVista проверяется статус URL в поисковой машине Excite. Достаточно набрать URL. Например:

HotBot
Несколько по-другому проверяется статус URL в поисковой машине HotBot. Это делается так:

  • Введите URL в поле запроса
  • Измените опцию "all of the words" на "links to this URL"

Infoseek
В поисковой машине Infoseek для проверки статуса URL существует отдельный интерфейс с целым набором настроек:

WebCrawler
WebCrawler предоставляет возможность проверить статус URL на странице:

Rambler
В этой поисковой машине статус URL можно проверить двумя способами.

  • В разделе "Расширеный поиск" путем указания имени сервера в качестве маски в одной из опций Верхние 100 слов на Rambler

Классификация

По области поиска (условно)

Локальные

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

Глобальные

Предназначены для поиска информации по всей сети Интернет либо по значительной её части. Представителями таких поисковых машин являются поисковые системы Google , Яндекс и т. п. Поисковые машины осуществляют поиск информации различного типа, например текстов, видео, изображений, географических объектов, персональных данных и др. При этом файлы, с которыми может работать поисковая машина, могут быть как текстового формата (например.html, .htm, .txt, .doc, .rtf…), так и графического (.gif, .png, .svg…) или мультимедийного (видео и звук). Пока наиболее распространённым является именно поиск по текстовым документам.

Поисковый запрос

Исходной информацией для поиска является поисковый запрос .

Функции

Поисковые машины выполняют несколько функций:

Поиск ссылок

Поиск ссылок на страницы и другие документы сайтов.

Автоматический

Ручной режим

Пользователи сами добавляют в базу данных поисковой машины ссылки на страницы своих сайтов

Индексация документов сайтов

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

Поиск по базе данных проиндексированных документов

Может состоять из нескольких этапов

Нахождение документов, соответствующих поисковому запросу

Ранжирование документов в соответствии с их релевантностью поисковым запросам

Кластеризация документов

Примечания

См. также


Wikimedia Foundation . 2010 .

Смотреть что такое "Поисковая машина" в других словарях:

    Поисковая машина - (searching engine): веб сервер, проводящий индексацию веб страниц на доступных серверах (например, Yandex)... Источник: ИНТЕРНЕТ РЕСУРСЫ. ТРЕБОВАНИЯ ДОСТУПНОСТИ ДЛЯ ИНВАЛИДОВ ПО ЗРЕНИЮ. ГОСТ Р 52872 2007 (утв. Приказом Ростехрегулирования от… … Официальная терминология

    поисковая машина - Веб сервер, проводящий индексацию веб страниц на доступных серверах (например, Yandex). [ГОСТ Р 52872 2007] Тематики информационные технологии в целом EN searching engine … Справочник технического переводчика

    В Интернет специальный веб сайт, на котором пользователь по заданному запросу может получить ссылки на сайты, соответствующие этому запросу. Поисковая система состоит из трех компонент: 1 поискового робота; 2 индекса системы; и 3 программы,… … Финансовый словарь

    В Internet поисковая машина, которая: отсылает запрос на поиск в несколько поисковых систем; и генерирует из полученных ответов сводку (на одной странице). По английски: Meta search engine Синонимы: Мета гусеница Синонимы английские: Metacrawler… … Финансовый словарь

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

    Поисковая система - – (англ. search engine, синонимы: искалка, поисковый сервер, поисковая машина) – Инструмент для поиска информации в Интернете. Как правило, работа поисковой машины состоит из двух этапов. Специальная программа (поисковый робот, автомат, агент,… … Энциклопедический словарь СМИ - Поисковая система веб сайт, предоставляющий возможность поиска информации в Интернете. Большинство поисковых систем ищут информацию на сайтах Всемирной паутины, но существуют также системы, способные искать файлы на ftp серверах, товары в… … Википедия

Книги

  • К вопросу об эффективности поиска конкретики в Интернете , И. А. Семёнов. Согласно исследованиям Berkley, объём информации в Интернете по состоянию на 2003 год оценивался в 258, 85 терабайта, и это только общедоступные данные. По данным Internet World Stats, рост… электронная книга

Введение………………………………………………………………………….2

1 Поисковые машины: состав, функции, принцип работы

1.1 Состав поисковых систем………………………………….………………3

1.2 Особенности поисковых машин…………………………………………..4

1.3 Принципы работы поисковых систем……………………………………..4

2 Обзор функционирования поисковых систем

2.1 Зарубежные поисковые системы: состав и принципы работы…………12

2.2 Русскоязычные поисковые системы: состав и принципы работы….…..14

Вывод………………………………………………………………..……………16

Список используемой литературы…………………………………..………….17

Введение

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

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

Пространственный масштаб, в котором работает ИПС,

И ее специализация.

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

1 Поисковые машины: состав, функции, принцип работы

1.1 Состав поисковых систем

Поисковая система - это программно-аппаратный комплекс, предназначенный для осуществления поиска в сети Интернет и реагирующий на запрос пользователя, задаваемый в виде текстовой фразы (поискового запроса), выдачей списка ссылок на источники информации, в порядке релевантности (в соответствии запросу). Наиболее крупные международные поисковые системы: «Google», «Yahoo», «MSN». В русском Интернете это – «Яндекс», «Рамблер», «Апорт».

Аналогично, поисковая машина состоит из двух частей: так называемого робота (или паука), который обходит серверы Сети и формирует базу данных поискового механизма.

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

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

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

1.2 Особенности поисковых систем

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

Фиксация информационной потребности на естественном языке;

Выбор нужных поисковых сервисов сети и точная формализация записи информационной потребности на конкретных информационно-поисковых языках (ИПЯ);

Выполнение созданных запросов;

Предварительная обработка и выборка полученных списков ссылок на документы;

Обращение по выбранным адресам за искомыми документами;

Предварительный просмотр содержимого найденных документов;

Сохранение релевантных документов для последующего изучения;

Извлечение из релевантных документов ссылок для расширения запроса;

Изучение всего массива сохраненных документов;

Если информационная потребность не полностью удовлетворена, то возврат к первому этапу.

1.3 Принципы работы поисковых систем

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

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

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

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

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

Поисковые системы состоят из пяти отдельных программных компонент:

spider (паук): браузероподобная программа, которая скачивает веб-страницы.

crawler: «путешествующий» паук, который автоматически идет по всем ссылкам, найденным на странице.

indexer (индексатор): «слепая» программа, которая анализирует веб-страницы, скаченные пауками.

the database (база данных): хранилище скаченных и обработанных страниц.

search engine results engine (система выдачи результатов): извлекает результаты поиска из базы данных.

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

Crawler: Как и паук скачивает страницы, он может «раздеть» страницу и найти все ссылки. Это его задача – определять, куда дальше должен идти паук, основываясь на ссылках или исходя из заранее заданного списка адресов.

Indexer: Индексатор разбирает страницу на различные ее части и анализирует их. Элементы типа заголовков страниц, заголовков, ссылок, текста, структурных элементов, элементов BOLD, ITALIC и других стилевых частей страницы вычленяются и анализируются.

Database: База данных – это хранилище всех данных, которые поисковая система скачивает и анализирует. Это часто требует огромных ресурсов.

Search Engine Results: Система выдачи результатов занимается ранжированием страниц. Она решает, какие страницы удовлетворяют запросу пользователя, и в каком порядке они должны быть отсортированы. Это происходит согласно алгоритмам ранжирования поисковой системы. Эта информация является наиболее ценной и интересной для нас – именно с этим компонентом поисковой системы взаимодействует оптимизатор, пытаясь улучшить позиции сайта в выдаче, поэтому в дальнейшем мы подробно рассмотрим все факторы, влияющие на ранжирование результатов.

Работа поискового указателя происходит в три этапа, из кото­рых два первых являются подготовительными и незаметны для пользователя. Сначала поисковый указатель собирает инфор­мацию из World Wide Web . Для этого используют специальные программы, аналогичные браузеры. Они способны скопи­ровать заданную Web-страницу на сервер поискового указателя, просмотреть ее, найти все гипетэссылки, которые на ней имеютте ресурсы, которые найдены там, снова разыскать имеющиеся в них гиперссылки и т. д. Подобные программы называют червяками, пауками, гусеницами, краулерами, спайдерами и другими подобными именами. Каждый поисковый указатель эксплуатирует для этой цели свою уникальную программу, которую нередко сам и разрабатывает. Многие современные поисковые системы родились из экспериментальных проектов, связанных с разработкой и внедрением автоматических про­грамм, занимающихся мониторингом Сети. Теоретически, при удачном входе спайдер способен прочесать все Web-простран­ство за одно погружение, но на это надо очень много времени, а ему еще необходимо периодически возвращаться к ранее посе­щенным ресурсам, чтобы контролировать происходящие там изменения и выявлять «мертвые» ссылки, т. е. потерявшие актуальность.

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

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

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

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

Этапы составления индекса и поиска по нему:

Сбор адресов веб-страниц в Интернете

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

Выкачивание страниц

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

Составление индекса

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

Поиск

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

Качество поисковой машины

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

Еще одним важным критерием качества работы поисковика является точность .

Точность – это мера качества выданных результатов, она вычисляется как количество релевантных страниц в общем объеме страниц, выданных в результатах поиска. Однако важна не только точность поиска, но и ранжирование результатов поиска.

Ранжирование – расположение результатов поиска по релевантности.

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

Как работают пои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. Он преобразует запрос в ключевые слова, которые затем и использует при индексировании сайтов. Этот подход работает только в случае простых запросов. Однако, прогресс не стоит на месте, возможно, что совсем скоро мы будем "разговаривать" с поисковыми машинами на своем, "человеческом языке".



Понравилась статья? Поделиться с друзьями: