Driver86
@Driver86
Немодератор toster.ru

Как устроен поисковый индекс Google?

Интересует технические моменты. Очевидно, там информации на несколько петабайт и более. Но запросы отдаются за доли секунды. Почему? Гугление толкового не выдаёт. Понятно, что "секрет фирмы", но аналоги открытые есть?
Давно слышал, у них в качестве ОС модифицированный Linux. Хотелось бы подробностей.
  • Вопрос задан
  • 352 просмотра
Решения вопроса 2
mayton2019
@mayton2019
Bigdata Engineer
Google использует шаблон map-reduce. Это когда исходная выборка (индекс) может быть разрезана на беконечно большое число partitions. Можно резать по хешу от hostname. Это дает возможность запускать ваш поисковый запрос не на 1 хосте а сразу на 1000 hosts и потом просто выдать сортированный union первых top n релевантных результатов. Кроме того google может кешировать ответы. Это снижает нагрузку на дубли поисков.

Этот шаблон известен. Просто google первый поставил задачу отказа от сверх-дорогих и ресурсоёмких серверов и перешел к использованию множества дешевых серверов но соединенных в поисковый grid. Кроме того файловые системы навроде hdfs дают возможность на обычных жлобских HDD делать бесконечно большую файловую систему. У этой ФС конечно есть недостатки. В частности она может быть не консистентна. Но для периодически обновляющегося текстового индекса - это норм. Типа eventual consistancy.
Ответ написан
Комментировать
firedragon
@firedragon
Не джун-мидл-сеньор, а трус-балбес-бывалый.
Где то так https://habr.com/ru/amp/post/20724/
Хотя это скорее Яндекс.
Могу предположить что первым отрабатывает анализатор запроса потом идёт запрос в keyvalue хранилище по всем ключевикам
Потом идёт корреляция по нахождению фраз
Потом корреляция по национальности.

По реализации ищите FTS engine.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы