Книга: Веревка вокруг Земли и другие сюрпризы науки
Назад: А все началось с обеда…
Дальше: Моя бесконечность больше твоей!

«Крибле, крабле, гугл!», или Как работают поисковые системы Интернета

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

Лучшую иллюстрацию тех небывалых свершений, на которые способны компьютеры, я вижу всякий раз, как набираю в поисковой системе «Гугл» очередное слово или фразу. Например, напечатав по-английски слово «type» («печатать, печать, шрифт»), я всего за 0,16 секунды (это время отображается на экране) получаю первую страницу списка из приблизительно 2 780 000 000 страниц интернет-сайтов, где встречается это слово. Информация о почти трех миллиардах страниц найдена менее чем за пятую долю секунды. Если вы наберете «movable type» («шрифт из подвижных литер»), всего через 0,2 секунды вам сообщат, что существует около 15 100 000 страниц, содержащих это словосочетание. А если набрать «the phrase “movable type”» («словосочетание “шрифт из подвижных литер”»), через 0,08 секунды придет ответ, что страниц с этой фразой найдено ровно восемь. Точнее, найдено восемь разных страниц, поскольку «Гугл» указывает, что если учитывать копии этих восьми страниц, то общее их число достигнет сорока.

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

Вообще-то, нет. «Гугл» действует гораздо умнее, хотя и не менее поразительно. Он постоянно, по мере создания новых интернет-сайтов, собирает их и добавляет в свою базу данных. Всякий раз, запрашивая ту или иную страницу, он создает список всех слов на этой странице и добавляет эти слова в алфавитный указатель, присвоив каждому слову уникальный адрес, в котором помечена страница, где находится слово. То есть, проще говоря, слово «type» в этом указателе закреплено за 2 780 000 000 или около того страниц. Список этих страниц существовал еще до того, как вы вбили запрос в строку поисковика, так что 0,16 секунды — это время, которое требуется компьютеру, чтобы сообщить вам то, что он и так уже «знал». Выше в этом алфавитном указателе будет и слово «movable» с примерно 25 миллионами ссылок на страницы. Если ввести в поисковик слова «movable» и «type» отдельно друг от друга, то есть без общих кавычек, «Гугл» сравнит два отдельных списка (2 780 000 000 и 25 000 000 адресов страниц) и составит новый список, где будут только страницы, присутствующие в обоих списках, то есть лишь те страницы, на которых содержатся оба слова. Но вот, скажем, я решил набрать слова «movable type» в кавычках, означающих, что мне нужны только те страницы, где эти два слова встречаются вместе, причем «type» следует сразу за «movable». Здесь начинает работать другой тип информации, собранной при составлении указателя. Помимо того факта, что слово «movable» содержится, скажем, в документе 12, указатель также знает, на какой позиции в этом документе находится искомое слово, — допустим, на позиции 31. Теперь вообразите себе, что в указателе содержится серия строк вида (Д12,31), соответствующих слову «movable» и содержащих номер документа и позицию слова. Строки, относящиеся к слову «type», тоже находятся в указателе и имеют несколько иной вид — допустим, (Д 12,32). Сравнивая строки в списках, «Гугл» определяет, что словосочетание «movable type» встречается в документе Д12, где искомые слова находятся на позициях 31 и 32, и включает адрес документа Д12 в список найденных по запросу страниц.

Люди с избытком свободного времени придумали целую игру с использованием поисковой системы «Гугл» — «гугл-вэкинг». Цель игры — найти комбинацию из двух слов, которая встречается в громадном архиве «Гугла» всего на одной странице. Найдя такую комбинацию, гугл-вэкеры сообщают о своем открытии на специальном гугл-вэкерском сайте. «Но в таком случае эта комбинация слов сразу перестанет быть уникальной, — возразите вы. — Ведь теперь она встречается уже на двух сайтах — изначальном и гугл-вэкерском». Однако «Гугл» милостиво исключил сайт гугл-вэкеров из своего поискового процесса, так что парадокса удалось избежать.

Назад: А все началось с обеда…
Дальше: Моя бесконечность больше твоей!