Close Menu
    Telegram
    SEO HARDCORE
    • Разборы патентов
      • Патенты Google
      • Патенты Яндекс
    • Скоро
      SEO инструменты
    • Скоро
      SEO аналитика
    SEO HARDCORE
    Разборы патентов • Патенты Google

    Как Google использует отпечатки документов (Simhash) для выявления и игнорирования дубликатов на этапе сканирования

    NEAR-DUPLICATE DOCUMENT DETECTION FOR WEB CRAWLING (Обнаружение почти дубликатов документов при веб-краулинге)
    • US8140505B1
    • Google LLC
    • 2012-03-20
    • 2005-03-31
    2005 Антиспам Индексация Краулинг Патенты Google

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

    • Описание
    • Детальный разбор
    • Выводы
    • Практика
    • Вопросы и ответы
    • Наверх

    Описание

    Какую задачу решает

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

    Что запатентовано

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

    Как это работает

    Система работает следующим образом:

    • Генерация отпечатка: Для нового документа извлекаются признаки (features) с весами (weights) и генерируется компактный fingerprint (например, Simhash). Схожие документы получают схожие отпечатки.
    • Перестановка битов: К отпечатку применяется несколько заранее определенных перестановок (permutations), создавая несколько версий отпечатка с измененным порядком битов.
    • Быстрый поиск кандидатов: Система ищет совпадения в таблицах ранее сохраненных (и также переставленных) отпечатков. Поиск осуществляется только по определенной последовательности битов (префиксу), что значительно ускоряет процесс.
    • Валидация схожести: Найденные кандидаты проверяются на существенную схожесть (substantially similar). Если разница не превышает порогового значения k битов, документ помечается как near-duplicate.
    • Действие: Если обнаружен дубликат, документ отбрасывается, и его исходящие ссылки не сканируются.

    Актуальность для SEO

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

    Важность для SEO

    Патент имеет высокое значение (7/10) для технического SEO и управления краулинговым бюджетом. Он не описывает факторы ранжирования, но детально раскрывает механизм, определяющий, будет ли страница обработана и будут ли учтены ее исходящие ссылки. Если страница классифицируется как near-duplicate на этом раннем этапе сканирования, она может быть отброшена, что подчеркивает важность уникальности контента для обеспечения индексации и учета ссылок.

    Детальный разбор

    Термины и определения

    Document (Документ)
    Любой машиночитаемый продукт, сканируемый краулером (веб-страница, файл и т.д.).
    Features / Tokens (Признаки / Токены)
    Элементы, извлекаемые из документа для генерации отпечатка (слова, числа, основы слов, синонимы). Стоп-слова могут исключаться.
    Fingerprint / Hash Value (Отпечаток / Хеш-значение)
    Компактное значение (например, 64-битное), генерируемое для документа. Ключевое свойство: у схожих документов отпечатки также схожи.
    k / Hamming distance (Расстояние Хэмминга)
    Количество битов, в которых отличаются два отпечатка. Используется как мера схожести. Порог k — максимально допустимое различие для признания документов дубликатами (например, k=3).
    Near-duplicate document (Почти дубликат документа)
    Документ, чей контент является точной копией, существенной копией или очень похож на контент другого документа.
    Permutation (Перестановка, xix_ixi​)
    Процесс изменения порядка битов в отпечатке по заранее определенному правилу.
    Permuted Fingerprint (Переставленный отпечаток)
    Отпечаток после применения к нему перестановки.
    Sequence of bit positions / Prefix (Последовательность битовых позиций / Префикс, pip_ipi​)
    Часть отпечатка (меньше, чем весь отпечаток), используемая для быстрого поиска кандидатов на совпадение.
    Simhash
    Пример хеширующей техники, упомянутый в патенте, который удовлетворяет свойству схожести отпечатков для схожих документов.
    Tables (Таблицы, TiT_iTi​)
    Структуры данных, хранящие переставленные отпечатки ранее просканированных документов. Используются для эффективного поиска.
    Weights (Веса)
    Значения, присваиваемые признакам (features) документа в зависимости от их важности (например, слова в заголовке имеют больший вес, чем слова в рекламе).

    Ключевые утверждения (Анализ Claims)

    Claim 1 (Независимый пункт): Описывает основной метод обнаружения дубликатов.

    1. Система сканирует документ и определяет его fingerprint.
    2. Система ищет кандидатов среди сохраненных отпечатков. Ключевой механизм: поиск осуществляется путем сравнения только части отпечатка (sequence of bit positions), а не всего отпечатка.
    3. Для найденных кандидатов система определяет, являются ли они substantially similar к новому отпечатку. Схожесть определяется как отличие не более чем на k битов (где k > 0).
    4. Если найден схожий отпечаток, новый документ идентифицируется как near-duplicate.

    Claim 2 (Зависимый от 1): Детализирует генерацию отпечатка.

    Отпечаток генерируется путем извлечения признаков (set of features), присвоения им весов (weight) и вычисления отпечатка на основе этих взвешенных признаков.

    Claim 7 (Зависимый от 6 и 1): Описывает механизм эффективного хранения.

    Система применяет несколько перестановок (plurality of permutations) к каждому отпечатку. В каждой из нескольких таблиц хранятся отпечатки, обработанные соответствующей перестановкой. Это позволяет реализовать быстрый поиск по части битов (Claim 1).

    Claim 8 (Зависимый от 1): Описывает действие при обнаружении дубликата.

    Исходящие ссылки (outgoing links) в документе игнорируются, если он идентифицирован как near-duplicate.

    Claim 22 (Независимый пункт): Описывает распределенную систему для пакетной обработки (batch mode).

    1. Координатор получает новые документы, определяет их отпечатки и рассылает их группе устройств.
    2. Устройства поддерживают основную таблицу (First table) существующих отпечатков и создают временную таблицу (Second table) для нового пакета.
    3. Устройства определяют схожесть между отпечатками в таблицах, используя тот же механизм: совпадение по последовательности битов и проверка отличия не более чем на k битов.
    4. При обнаружении схожести новый отпечаток помечается как дубликат.

    Где и как применяется

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

    CRAWLING – Сканирование и Сбор данных
    Это основная область применения патента. Система (Web Crawler Engine) использует этот механизм сразу после загрузки документа (fetched) для принятия решения о его дальнейшей обработке.

    • Взаимодействие компонентов: Fetch Bots загружают документ и передают его в Duplicate Document Detector. Детектор использует Set of Tables (базу отпечатков) для проверки. Результат передается в Content Manager.
    • Принятие решений: Если документ — дубликат, Content Manager игнорирует его исходящие ссылки. Если нет — извлекает ссылки и добавляет их в очередь сканирования (Address List).

    INDEXING – Индексирование и извлечение признаков
    Патент косвенно влияет на этот этап. Если документ отброшен на этапе CRAWLING как дубликат, он не передается на индексацию. Процесс извлечения признаков (Feature Extraction) и расчет весов, необходимые для генерации fingerprint, также происходят на ранних этапах обработки.

    Входные данные:

    • Содержимое только что загруженного документа.
    • База данных отпечатков ранее просканированных документов (Set of Tables).
    • Параметры конфигурации (k, f, pip_ipi​, перестановки xix_ixi​).

    Выходные данные:

    • Решение: является ли документ near-duplicate.
    • Список исходящих ссылок (если документ не дубликат).
    • Обновленная база данных отпечатков (если документ не дубликат).

    На что влияет

    • Типы контента: Влияет на все типы сканируемого контента, особенно текстовые документы (веб-страницы, PDF).
    • Конкретные ниши: Наибольшее влияние в нишах с высоким уровнем дублирования: синдикация контента, агрегация новостей, зеркалирование сайтов, E-commerce с похожими описаниями товаров.
    • Структура сайтов: Сайты с большим количеством шаблонного контента (boilerplate) или техническими дублями (например, из-за параметров URL, фасеточной навигации) подвержены риску классификации страниц как near-duplicate.

    Когда применяется

    • Условия работы: Алгоритм применяется к каждому документу, загруженному Fetch Bot в процессе сканирования (в реальном времени или пакетном режиме).
    • Триггеры активации: Факт загрузки документа является триггером для запуска процесса.
    • Пороговые значения: Ключевым порогом является значение k (расстояние Хэмминга). Если отпечатки отличаются на k битов или меньше, система считает документы дубликатами. В примере патента используется k=3 для 64-битного отпечатка.

    Пошаговый алгоритм

    Процесс обработки нового документа

    1. Идентификация и загрузка: Система идентифицирует адрес (URL) и загружает документ.
    2. Генерация отпечатка (Fingerprint Generation):
      1. Из документа извлекается набор признаков (features).
      2. Каждому признаку присваивается вес (weight) в зависимости от его важности (например, заголовок важнее рекламы).
      3. На основе признаков и весов генерируется f-битный отпечаток (F) с использованием хеширующей функции (например, Simhash).
    3. Генерация переставленных отпечатков: К отпечатку F применяется набор заранее определенных перестановок (x1,

    Выводы

    1. Обнаружение дубликатов происходит на этапе сканирования: Это критически важный вывод. Система предназначена для повышения эффективности краулера (CRAWLING), а не для ранжирования. Если страница помечена как near-duplicate, ее исходящие ссылки не будут добавлены в очередь сканирования, и сама страница может быть не передана на индексацию.
    2. Определение схожести основано на взвешенных признаках: Система не просто сравнивает текст. Она извлекает признаки (features) и присваивает им веса (weights). Изменения в важных (с высоким весом) частях документа сильнее изменят fingerprint, чем изменения в менее важных частях (реклама, футер, boilerplate).
    3. Чувствительность системы настраивается: Порог k (расстояние Хэмминга) определяет строгость определения дубликата. Малое значение k (например, 3 бита из 64) означает, что допускаются лишь очень незначительные различия.
    4. Эффективность и масштабируемость: Основная часть патента посвящена методу быстрого поиска схожих хешей в огромной базе данных с помощью перестановок и таблиц (техника, схожая с Approximate Nearest Neighbor search). Это позволяет применять механизм в глобальном масштабе.
    5. Влияние на краулинговый бюджет: Для крупных сайтов этот механизм напрямую влияет на расход краулингового бюджета. Наличие большого количества near-duplicate страниц приводит к неэффективному сканированию, так как Googlebot загружает страницы, но затем отбрасывает их и не сканирует их ссылки.

    Практика

    Best practices (это мы делаем)

    • Обеспечение уникальности основного контента: Убедитесь, что основной контент страницы существенно отличается от других страниц. Поскольку признаки из важных частей документа имеют больший вес при генерации fingerprint, уникальность должна фокусироваться именно на них.
    • Минимизация шаблонного текста (Boilerplate): Сокращайте объем повторяющегося шаблонного текста (меню, сайдбары, футеры) по отношению к уникальному контенту. Если уникальный контент составляет малую часть документа, риск признания страницы near-duplicate возрастает.
    • Управление синдикацией и агрегацией: Если вы публикуете контент, доступный в других источниках, необходимо добавлять существенную ценность (уникальный анализ, дополнительные данные), чтобы fingerprint страницы значительно отличался от оригинала.
    • Контроль технических дубликатов: Активно управляйте дублями, возникающими из-за фасеточной навигации, параметров сортировки, UTM-меток. Этот патент показывает, что Google алгоритмически отсеивает такие дубли уже на этапе сканирования, но лучше помочь системе с помощью явной каноникализации или блокировки сканирования.

    Worst practices (это делать не надо)

    • Создание страниц с минимальными отличиями (Дорвеи, Спиннинг): Генерация большого количества страниц, отличающихся только несколькими словами (например, названием города или модели товара). Такие страницы с высокой вероятностью будут иметь близкие fingerprints и будут отброшены краулером.
    • Копирование контента без добавления ценности: Полное или частичное копирование контента с других сайтов. Система Simhash эффективно обнаруживает такие заимствования.
    • Игнорирование соотношения уникального и шаблонного контента: Размещение короткого уникального текста на странице с массивным футером и сайдбаром. Веса шаблонных элементов могут «перевесить» уникальный контент при генерации отпечатка.

    Стратегическое значение

    Патент подчеркивает стратегическую важность эффективности инфраструктуры Google. Борьба с дубликатами критична для экономии ресурсов. Для SEO-специалистов это означает, что уникальность контента — это не просто фактор ранжирования, а входной билет для прохождения этапа CRAWLING и попадания в INDEXING. Система обнаружения near-duplicate является одним из первых и самых строгих фильтров контента.

    Практические примеры

    Сценарий: Оптимизация страниц товаров в E-commerce

    1. Ситуация: Интернет-магазин имеет 50 страниц для одного товара разных цветов. Описания идентичны, меняется только слово, обозначающее цвет, и изображение.
    2. Применение механизма: Googlebot сканирует первую страницу (F1). При сканировании второй страницы генерируется отпечаток F2. Из-за минимальных отличий F1 и F2 отличаются, например, на 1 бит (меньше порога k=3).
    3. Результат: Вторая и последующие 48 страниц помечаются как near-duplicate. Их исходящие ссылки (например, на похожие товары) не сканируются.
    4. SEO-действие: Если требуется индексация вариаций, необходимо добавить уникальный контент (уникальные описания для разных цветов, разные блоки отзывов), чтобы fingerprint каждой страницы отличался более чем на k битов. В противном случае следует использовать rel=canonical на основную версию.

    Сценарий: Перепечатка пресс-релиза

    1. Ситуация: Компания публикует пресс-релиз. Несколько новостных сайтов копируют его дословно.
    2. Применение механизма: Google определяет fingerprint оригинала. При сканировании новостных сайтов система обнаруживает, что их отпечатки идентичны или почти идентичны оригиналу.
    3. Результат: Страницы на новостных сайтах классифицируются как near-duplicate. Google проигнорирует ссылки с этих страниц и выберет одну версию для дальнейшей обработки.

    Вопросы и ответы

    Что такое Simhash в контексте этого патента?

    Simhash упоминается как пример хеширующей техники, подходящей для этой задачи. В отличие от криптографических хешей (MD5, SHA-1), где малое изменение документа полностью меняет хеш, Simhash генерирует схожие хеш-значения (fingerprints) для схожих документов. Это позволяет сравнивать отпечатки и быстро определять степень схожести контента по расстоянию Хэмминга.

    На каком этапе Google применяет этот механизм: сканирование, индексирование или ранжирование?

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

    Что произойдет, если моя страница будет признана почти дубликатом (near-duplicate)?

    Согласно патенту, если страница признана near-duplicate, система игнорирует ее исходящие ссылки (они не добавляются в очередь сканирования). Также патент указывает, что сам документ может быть отброшен (discarded), что означает, что он, скорее всего, не будет передан на индексацию.

    Как Google определяет, какие части страницы более важны для генерации отпечатка?

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

    Насколько разными должны быть две страницы, чтобы не считаться дубликатами?

    Это определяется порогом k (расстояние Хэмминга). Если отпечатки двух документов отличаются более чем на k битов, они считаются уникальными. В примере патента используется k=3 для 64-битного отпечатка, что подразумевает очень высокую степень схожести для классификации в качестве дубликата.

    Поможет ли изменение порядка слов или блоков контента сделать страницу уникальной для этой системы?

    Это зависит от метода извлечения признаков (features). Если признаки основаны на отдельных словах или коротких n-граммах, изменение порядка блоков может незначительно повлиять на итоговый fingerprint, особенно если общий набор взвешенных признаков останется прежним. Для обеспечения уникальности лучше изменять сам контент, а не только его верстку.

    Как этот механизм влияет на краулинговый бюджет?

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

    Может ли этот механизм ошибочно принять уникальную страницу за дубликат?

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

    Отличается ли этот механизм от каноникализации через rel=canonical?

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

    Что делать, если мне нужно иметь похожие страницы на сайте (например, для разных регионов)?

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

    Навигация
    • Описание
    • Детальный разбор
    • Выводы
    • Практика
    • Вопросы и ответы
    • Наверх
    Telegram
    © 2025 SEO HARDCORE

    Type above and press Enter to search. Press Esc to cancel.