Выбрать книгу по жанру
Фантастика и фэнтези
- Боевая фантастика
- Героическая фантастика
- Городское фэнтези
- Готический роман
- Детективная фантастика
- Ироническая фантастика
- Ироническое фэнтези
- Историческое фэнтези
- Киберпанк
- Космическая фантастика
- Космоопера
- ЛитРПГ
- Мистика
- Научная фантастика
- Ненаучная фантастика
- Попаданцы
- Постапокалипсис
- Сказочная фантастика
- Социально-философская фантастика
- Стимпанк
- Технофэнтези
- Ужасы и мистика
- Фантастика: прочее
- Фэнтези
- Эпическая фантастика
- Юмористическая фантастика
- Юмористическое фэнтези
- Альтернативная история
Детективы и триллеры
- Боевики
- Дамский детективный роман
- Иронические детективы
- Исторические детективы
- Классические детективы
- Криминальные детективы
- Крутой детектив
- Маньяки
- Медицинский триллер
- Политические детективы
- Полицейские детективы
- Прочие Детективы
- Триллеры
- Шпионские детективы
Проза
- Афоризмы
- Военная проза
- Историческая проза
- Классическая проза
- Контркультура
- Магический реализм
- Новелла
- Повесть
- Проза прочее
- Рассказ
- Роман
- Русская классическая проза
- Семейный роман/Семейная сага
- Сентиментальная проза
- Советская классическая проза
- Современная проза
- Эпистолярная проза
- Эссе, очерк, этюд, набросок
- Феерия
Любовные романы
- Исторические любовные романы
- Короткие любовные романы
- Любовно-фантастические романы
- Остросюжетные любовные романы
- Порно
- Прочие любовные романы
- Слеш
- Современные любовные романы
- Эротика
- Фемслеш
Приключения
- Вестерны
- Исторические приключения
- Морские приключения
- Приключения про индейцев
- Природа и животные
- Прочие приключения
- Путешествия и география
Детские
- Детская образовательная литература
- Детская проза
- Детская фантастика
- Детские остросюжетные
- Детские приключения
- Детские стихи
- Детский фольклор
- Книга-игра
- Прочая детская литература
- Сказки
Поэзия и драматургия
- Басни
- Верлибры
- Визуальная поэзия
- В стихах
- Драматургия
- Лирика
- Палиндромы
- Песенная поэзия
- Поэзия
- Экспериментальная поэзия
- Эпическая поэзия
Старинная литература
- Античная литература
- Древневосточная литература
- Древнерусская литература
- Европейская старинная литература
- Мифы. Легенды. Эпос
- Прочая старинная литература
Научно-образовательная
- Альтернативная медицина
- Астрономия и космос
- Биология
- Биофизика
- Биохимия
- Ботаника
- Ветеринария
- Военная история
- Геология и география
- Государство и право
- Детская психология
- Зоология
- Иностранные языки
- История
- Культурология
- Литературоведение
- Математика
- Медицина
- Обществознание
- Органическая химия
- Педагогика
- Политика
- Прочая научная литература
- Психология
- Психотерапия и консультирование
- Религиоведение
- Рефераты
- Секс и семейная психология
- Технические науки
- Учебники
- Физика
- Физическая химия
- Философия
- Химия
- Шпаргалки
- Экология
- Юриспруденция
- Языкознание
- Аналитическая химия
Компьютеры и интернет
- Базы данных
- Интернет
- Компьютерное «железо»
- ОС и сети
- Программирование
- Программное обеспечение
- Прочая компьютерная литература
Справочная литература
Документальная литература
- Биографии и мемуары
- Военная документалистика
- Искусство и Дизайн
- Критика
- Научпоп
- Прочая документальная литература
- Публицистика
Религия и духовность
- Астрология
- Индуизм
- Православие
- Протестантизм
- Прочая религиозная литература
- Религия
- Самосовершенствование
- Христианство
- Эзотерика
- Язычество
- Хиромантия
Юмор
Дом и семья
- Домашние животные
- Здоровье и красота
- Кулинария
- Прочее домоводство
- Развлечения
- Сад и огород
- Сделай сам
- Спорт
- Хобби и ремесла
- Эротика и секс
Деловая литература
- Банковское дело
- Внешнеэкономическая деятельность
- Деловая литература
- Делопроизводство
- Корпоративная культура
- Личные финансы
- Малый бизнес
- Маркетинг, PR, реклама
- О бизнесе популярно
- Поиск работы, карьера
- Торговля
- Управление, подбор персонала
- Ценные бумаги, инвестиции
- Экономика
Жанр не определен
Техника
Прочее
Драматургия
Фольклор
Военное дело
Наследник $$$ уровня VI (СИ) - Еслер Андрей - Страница 12
Я открыл рот, но ничего не сказал.
Справедливо.
— Хорошо. На какой ты стадии?
Вот теперь Игнасио действительно оживился. Он развернул ко мне второй монитор и придвинул клавиатуру.
— Сам паук уже почти не требует моего внимания. Есть очередь адресов, проверка повторов, ограничения для мусорных узлов, журнал ошибок и повторные попытки для недоступных страниц. Из двадцати трёх миллионов примерно восемь миллионов я уже прогнал через обработчик.
(window.adrunTag = window.adrunTag || []).push({v: 1, el: 'adrun-4-144', c: 4, b: 144})— Что значит «обработчик»?
— Вынимаю из страницы всё полезное. Заголовок, основной текст, ссылки и подписи к ним. Разметку выбрасываю. Потом текст разбивается на слова, слова нормализуются и записываются отдельно.
Он открыл ещё одно окно. Передо мной возникли длинные столбцы цифр, адресов и отдельных слов.
— Это обратный индекс.
Я посмотрел на экран, потом на Лунтика.
— Мы опять дошли до слов, значение которых я должен угадывать по выражению твоего лица.
Игнасио нахмурился, явно пытаясь понять, что именно здесь было непонятно.
— Если просто хранить двадцать миллионов страниц, то при каждом запросе придётся заново искать по двадцати миллионам страниц. Это бессмысленно. Поэтому делаем наоборот. Вот слово «автомобиль».
Он быстро что-то набрал.
На экране появился огромный список номеров.
— Это документы, в которых оно встречается. Рядом хранится положение слова, количество повторений, наличие в названии страницы, заголовке и тексте ссылок. Пользователь вводит запрос, а система не читает весь интернет заново. Она сразу достаёт готовые списки и работает только с ними.
— Уже ищет?
— Пока по восьми миллионам обработанных страниц.
Я посмотрел на него.
— То есть я могу написать что-нибудь прямо сейчас?
— Можете.
Игнасио открыл совершенно пустую белую страницу. Посередине находилось единственное поле ввода и маленькая кнопка рядом.
Я набрал название одной из столичных газет и нажал ввод.
Ответ появился почти мгновенно.
Первым действительно стоял официальный сайт газеты. Ниже шли несколько страниц, где она часто упоминалась, потом новостная заметка, какая-то региональная подборка и совершенно посторонняя статья, каким-то чудом оказавшаяся на шестой позиции.
Я перевёл взгляд на Игнасио.
— Работает.
— Плохо, — немедленно заключил Лунтик.
— За семь дней я бы позволил ему работать плохо.
— Я нет.
Разумеется.
Игнасио закрыл выдачу и снова вернулся к своим таблицам.
— Сейчас совпадения считаются слишком примитивно. Слова в названии получают больший вес. В заголовке меньше. В основном тексте ещё меньше. Если несколько слов запроса стоят рядом, добавляется коэффициент. Этого хватает, чтобы находить подходящие страницы, но не хватает, чтобы стабильно ставить лучшую наверх.
— И ты понял, что мне нужен PageRank?
Впервые за весь разговор он посмотрел на меня с неподдельным интересом.
— Я понял, зачем вы заставили нас сохранять все связи между страницами.
Игнасио взял карандаш, перевернул один из исписанных листов чистой стороной и нарисовал несколько кружков.
— Обычный текстовый поиск смотрит внутрь страницы. Ваш PageRank должен смотреть ещё и на сеть вокруг неё. Если на страницу ссылаются другие сайты, она получает вес. Если на неё ссылается страница, которая сама считается важной, вес ссылки должен быть выше.
Он начал соединять кружки стрелками.
— Получается граф. Каждая страница становится узлом, каждая ссылка связью между узлами. Сам алгоритм я ещё не написал, но все нужные данные паук уже собирает.
— Сколько их?
— Сейчас больше шестидесяти миллионов уникальных адресов в очереди и около ста миллионов обнаруженных связей между страницами. Часть отсеется. Часть адресов окажется мёртвой. Но для первых экспериментов данных уже достаточно.
Я некоторое время смотрел на исписанный лист.
Семь дней.
Я попросил человека собирать ссылки семь дней назад.
— Допустим, ты всё это сделаешь. Что потом?
Игнасио отложил карандаш.
— Потом нужно решить, что именно вы хотите построить.
— Поисковик.
Он покачал головой.
— Это как сказать, что вы хотите автомобиль. Один автомобиль возит семью, другой сорок тонн груза. Формально и то и другое автомобиль, но строятся они совсем по-разному.
Я сделал приглашающий жест.
— Продолжай.
— Если вам нужен поисковик только для Валентии, задача относительно простая. Национальный сегмент сети я сейчас оцениваю примерно в пятьдесят-шестьдесят миллионов действительно полезных страниц. Возможно, до ста миллионов, если собирать всё подряд, включая архивы, дубли и почти заброшенные сайты. При нынешней скорости до приемлемого покрытия мы доберёмся за несколько недель.
— А дальше?
— Дальше надо закончить индексатор, сделать нормальное ранжирование, посчитать ссылочный вес, научить систему лучше работать с формами слов и собрать всё так, чтобы индекс можно было постоянно обновлять, не останавливая поиск. Понадобится ещё резервное хранение и нормальное распределение нагрузки. Если один сервер упадёт, весь поиск падать не должен.
— Люди?
Игнасио задумался всего на несколько секунд.
— Если не отбирать их у Виды, ещё шесть человек.
— Почему именно шесть?
— Двое займутся индексом и ядром. Двое инфраструктурой, серверами и распределением данных. Один языком. Ещё один ранжированием вместе со мной. Лучше восемь, но с шестью можно начать.
— Срок?
— Через два месяца можно открыть поиск для пользователей. Через три-четыре он перестанет выглядеть как студенческая работа.
Я поднял бровь.
— Для всей страны?
— Да.
Это звучало слишком легко.
Не в том смысле, что задача действительно была лёгкой. Просто после всех разговоров о сложности поиска я ожидал услышать годы, сотни специалистов и суммы, от которых захочется лечь на пол. Вместо этого Лунтик сидел передо мной в медицинской маске и совершенно буднично рассказывал, как через несколько месяцев собирается дать целой стране собственный поисковик.
Я немного подумал.
— А если я хочу весь мир?
Игнасио замолчал.
Потом медленно откинулся на спинку кресла.
— Вот тогда начинается веселье.
— Я так и думал.
Он снова придвинул к себе лист.
— Национальный поиск — это десятки миллионов полезных страниц. Мировой уже на старте означает сотни миллионов. А если вы хотите не просто написать на главной странице, что ищете по всему миру, а действительно покрывать значительную часть известной сети, надо готовиться к миллиарду страниц и нескольким миллиардам обнаруженных адресов.
Я посмотрел на нарисованные кружочки.
— Если страниц в десять раз больше, значит работы тоже в десять раз больше?
— К сожалению, нет. Сами страницы можно просто добавить. Главная проблема начинается, когда всё перестаёт помещаться в одной системе. Индекс приходится делить между машинами. Запрос одновременно отправляется в несколько частей, после чего ответы собираются обратно и сортируются. Ссылочный вес приходится считать уже не на десятках миллионов страниц, а на сотнях миллионов. И всё это нельзя посчитать один раз и забыть.
— Почему?
— Потому что сеть меняется постоянно. Пока мы обходим вторую половину интернета, первая уже успевает измениться. Какие-то страницы появляются, какие-то исчезают, содержимое обновляется, ссылки меняются. Чем больше индекс, тем больше ресурсов уходит просто на поддержание его в актуальном состоянии.
— Сколько людей?
— Для первого мирового этапа двадцать пять-тридцать.
Я невольно поднял брови.
— Ты быстро вырос из шести человек.
— Вы быстро выросли из Валентии до всей планеты.
Туше.
— Это только программисты?
(window.adrunTag = window.adrunTag || []).push({v: 1, el: 'adrun-4-145', c: 4, b: 145})— Нет. Вся поисковая команда первого этапа. Ядро, индекс, пауки, ранжирование, инфраструктура. Потом понадобится больше. Если сервис станет популярным, появятся отдельные люди для борьбы со спамом. Отдельные команды для языков. Потом качество выдачи, новые типы документов, изображения, новости. Чем больше людей будут пытаться обмануть поиск, тем больше людей понадобится, чтобы им мешать.
- Предыдущая
- 12/55
- Следующая
