Патент Google, описывающий инфраструктуру поискового индекса, основанного на фразах, а не только на отдельных словах. Система распределяет индекс по разным уровням (Tiers) в зависимости от стоимости обработки фраз и разбивает данные на разделы (Shards). Это позволяет оптимизировать хранение данных и значительно ускорить обработку запросов за счет минимизации связи между серверами во время поиска.
Описание
Какую задачу решает
Патент решает проблему неэффективности традиционных архитектур индексирования в крупномасштабных системах. В стандартных распределенных системах часто требуется, чтобы каждый индексный сервер обрабатывал каждый термин запроса, что замедляет общую скорость ответа (ограничиваясь самым медленным сервером) и требует значительных затрат на межсерверную коммуникацию. Также патент решает проблему вычислительной сложности и высоких требований к памяти для индексирования и поиска концепций, выраженных фразами, а не отдельными словами.
Что запатентовано
Запатентована архитектура системы для хранения и извлечения индекса, основанного на фразах (Phrase-based Index). Ключевыми элементами являются использование Tiers (уровней) для группировки фраз по стоимости обработки (например, по длине списка документов) и Shards (шардов) для разделения списков документов на партиции. Архитектура разработана для распределения данных по индексным серверам таким образом, чтобы минимизировать связь между серверами во время выполнения запроса. Также описаны методы оптимизации выполнения запросов (Query Scheduling) и обновления индекса (Segments).
Как это работает
Система извлекает фразы из корпуса документов и индексирует документы по этим фразам, создавая Phrase Posting Lists. Эти списки назначаются на разные уровни (Tiers) серверов в зависимости от стоимости их обработки. Внутри каждого уровня списки разделяются на Shards на основе идентификаторов документов. Критически важным является математическое отношение между уровнями: количество шардов на уровне N является целым кратным (k) количеству шардов на уровне N-1 (Sn = k * Sn-1). Это гарантирует, что сервер на уровне N должен связываться только с ограниченным числом серверов (k) на уровне N+1 во время поиска (query intersection), что ускоряет обработку. Запросы пользователей также разбиваются на фразы (Phrasification), и их выполнение оптимизируется для использования этой архитектуры.
Актуальность для SEO
Высокая. Хотя этот патент является продолжением заявок, восходящих к 2007 году, концепции многоуровневого хранения (Tiering) и шардирования (Sharding) являются фундаментальными для современных распределенных систем, таких как Google Search. Понимание на основе фраз (Phrase-based understanding) стало еще более критичным с развитием NLP. Этот патент описывает базовую инфраструктуру, которая обеспечивает работу поиска в масштабе.
Важность для SEO
Низкое прямое влияние на SEO-стратегии (3/10). Это инфраструктурный патент. Он не описывает сигналы качества, релевантности или ранжирования. Он объясняет, как Google физически организует свой индекс для обеспечения быстрого поиска на основе фраз, а не почему один сайт ранжируется выше другого. Основная ценность для SEO заключается в подтверждении того, что инфраструктура Google изначально построена для эффективного понимания, индексирования и поиска именно фраз, а не только отдельных ключевых слов.
Детальный разбор
Термины и определения
- Bifurcated Document Relevance Scoring (Бифуркационная оценка релевантности)
- Модель оценки, разделенная на два этапа. Первая оценка (релевантность фразы документу) вычисляется во время индексирования. Вторая (финальная) оценка вычисляется во время обработки запроса.
- Index Server (Индексный сервер)
- Сервер, хранящий часть индекса (шарды) и отвечающий за обработку запросов к этим данным.
- Index Shard File (Файл индексного шарда)
- Итоговый файл индекса, содержащий объединенные данные из соответствующих Segment Shard Files. Загружается индексными серверами для обслуживания запросов.
- Phrase Assignment Function (Функция назначения фраз)
- Функция, которая определяет, на какой уровень (Tier) должна быть назначена Phrase Posting List. Обычно основывается на стоимости обработки (например, длине списка).
- Phrase Posting List (Список соответствия фразы)
- Структура данных (инвертированный индекс) для конкретной фразы, содержащая список документов, в которых эта фраза встречается, и, возможно, информацию о значимости фразы для документа.
- Phrasification (Фразификация)
- Процесс разбора входного текста (например, запроса) на все возможные комбинации фраз и выбора наилучшего набора фраз, представляющего смысл текста.
- Query Schedule (Расписание/План запроса)
- Оптимизированный план выполнения запроса. Представляет собой дерево фраз, где каждый узел аннотирован информацией о том, какие индексные серверы должны его выполнить и в каком порядке.
- Segments (Сегменты)
- Разделение всего корпуса документов на независимые части для облегчения обновления индекса. Обновления обрабатываются на уровне сегментов.
- Segment Shard File (Файл шарда сегмента)
- Файл, содержащий данные индекса только для документов, принадлежащих определенному сегменту и определенному шарду.
- Shards (Шарды)
- Вертикальное разделение Phrase Posting Lists на несколько частей. Каждый шард хранит подмножество документов из списка.
- Shard Assignment Function (Функция назначения шардов)
- Функция, которая определяет, в какой шард должен попасть конкретный документ. Гарантирует, что документ всегда попадает в один и тот же шард, независимо от фразы (например, Doc ID Modulo S).
- Text Breaks (Разрывы текста)
- Семантические границы в документе (конец предложения, абзаца, заголовок, изменение шрифта), используемые во время извлечения фраз для идентификации кандидатов.
- Tiers (Уровни)
- Горизонтальное группирование Phrase Posting Lists. Каждому уровню назначается набор индексных серверов.
Ключевые утверждения (Анализ Claims)
Патент US9652483B1 является продолжением (continuation) более ранних патентов и фокусируется конкретно на архитектуре серверов.
Claim 1 (Независимый пункт): Описывает архитектуру системы индексирования на основе фраз.
- Система включает первый уровень (Tier) индексных серверов с N серверами. Каждый хранит часть Phrase Posting List для набора фраз.
- Система включает M дополнительных уровней индексных серверов.
- Ключевое ограничение архитектуры:
- Если M=1 (т.е. всего два уровня), то этот уровень имеет T серверов, где T является целым кратным N (T = k * N).
- Если M>=2, то каждый M-й уровень имеет T серверов, где T является целым кратным количеству серверов на предыдущем уровне (M-1).
Ядром изобретения является строгое математическое соотношение между количеством серверов (и, соответственно, шардов) на последовательных уровнях. Это соотношение (Sn = k * Sn-1) является основой для оптимизации выполнения запросов, так как оно ограничивает количество серверов, с которыми необходимо взаимодействовать при пересечении результатов (query intersection).
Claim 3 (Зависимый от 1): Уточняет механизм шардирования. Документы назначаются на индексный сервер (шард) на основе Document Identifier.
Claim 4 (Зависимый от 1): Уточняет механизм назначения уровней. Фразы назначаются на уровень (Tier) на основе стоимости (cost) соответствующего Phrase Posting List.
Claim 6 (Зависимый от 1): Описывает результат применения архитектуры из Claim 1. Индексный сервер на первом уровне взаимодействует не более чем с целым кратным (k) числа N серверов на следующем уровне (M=1) во время обработки запроса. Это подтверждает цель минимизации межсерверных коммуникаций.
Где и как применяется
Изобретение описывает фундаментальную инфраструктуру поисковой системы и затрагивает несколько этапов ее работы.
INDEXING – Индексирование и извлечение признаков
На этом этапе происходит основная работа по построению и организации индекса:
- Извлечение фраз (Phrase Extraction): Система анализирует документы, используя Text Breaks и статистические модели для идентификации значимых фраз.
- Индексирование по фразам: Создаются Phrase Posting Lists.
- Организация индекса: Индекс структурируется с использованием Tiers (на основе стоимости фраз), Shards (на основе ID документов) и Segments (для управления обновлениями).
QUNDERSTANDING – Понимание Запросов
На этом этапе применяется механизм Phrasification. Входной запрос пользователя преобразуется из дерева слов (Boolean Word Tree) в дерево фраз (Boolean Phrase Tree) путем генерации и оценки всех возможных разбиений запроса на фразы.
RANKING – Ранжирование (L1 Retrieval/Отбор кандидатов)
Основное применение патента происходит на этапе извлечения данных из индекса:
- Query Scheduling и Optimization: Система создает оптимизированное расписание запроса (Query Schedule), определяя, какие серверы и в каком порядке будут обрабатывать части запроса, основываясь на архитектуре Tiers и Shards.
- Query Execution: Индексные серверы выполняют запрос, извлекая и пересекая Phrase Posting Lists. Архитектура минимизирует объем передаваемых данных между серверами.
Входные данные (Индексирование):
- Коллекция документов.
- База данных фраз (Phrase Data).
Выходные данные (Индексирование):
- Segment Shard Files и Index Shard Files, организованные по уровням и шардам.
Входные данные (Поиск):
- Запрос пользователя (Boolean Word Tree).
Выходные данные (Поиск):
- Набор релевантных документов (Search Result Set).
На что влияет
Это инфраструктурный патент. Он влияет на скорость, стоимость и масштабируемость поисковой системы в целом. Он не нацелен на конкретные типы контента, запросов или ниши (например, YMYL), а определяет физическую структуру индекса и методы доступа к нему для всех типов данных.
Когда применяется
Постоянно. Описанная архитектура Tiers и Shards — это способ хранения индекса. Процессы Phrasification, Query Scheduling и Query Execution применяются при обработке каждого запроса пользователя. Процессы обновления индекса (Segments) выполняются периодически для поддержания свежести данных.
Пошаговый алгоритм
Процесс А: Организация Индекса (Tiers и Shards)
- Извлечение фраз и Индексирование: Анализ документов, идентификация фраз, создание Phrase Posting Lists.
- Расчет стоимости: Для каждого Phrase Posting List определяется стоимость обработки (например, длина списка/частотность фразы).
- Назначение уровней (Tier Assignment): Определение порогов стоимости для каждого уровня (Tier). Назначение Phrase Posting Lists на соответствующий уровень с помощью Phrase Assignment Function.
- Определение структуры шардов: Определение количества шардов (S) для каждого уровня, соблюдая правило: Sn = k * Sn-1 (количество шардов на уровне N кратно количеству шардов на уровне N-1).
- Шардирование (Sharding): Разделение каждого Phrase Posting List на S частей с помощью Shard Assignment Function (например, Doc ID Modulo S).
- Размещение: Сохранение шардов на соответствующих индексных серверах.
Процесс Б: Обработка Запроса
- Фразификация (Phrasification): Получение запроса. Генерация всех возможных разбиений на фразы. Оценка и выбор лучших вариантов. Создание Boolean Phrase Tree.
- Планирование запроса (Query Scheduling): Нормализация дерева фраз. Рекурсивный обход дерева, назначение стоимости и индексных серверов каждому узлу. Для узлов AND дети сортируются по возрастанию стоимости.
- Оптимизация запроса (Query Optimization): Анализ дерева на возможность реструктуризации (например, инверсия де Моргана) для снижения общей стоимости выполнения. Создание Query Schedule.
- Выполнение запроса (Query Execution): Рекурсивный спуск по Query Schedule.
- Если узел не назначен текущему серверу, перенаправить поддерево на назначенный сервер.
- Если узел назначен текущему серверу:
- Фраза: извлечь локальные шарды списка.
- Оператор (AND/OR/NOT): выполнить локальные дочерние узлы.
- Если есть удаленные дочерние узлы (для AND): создать новый запрос, где локальный результат становится явными данными (explicit data node), и переслать его на удаленные серверы.
- Оптимизация передачи данных: При пересылке списка документов на несколько серверов, отправлять на каждый сервер только те документы, которые соответствуют его шардам (используя Shard Assignment Function).
- Агрегация результатов: Сбор и объединение списков документов от всех задействованных серверов.
Какие данные и как использует
Данные на входе
Патент фокусируется на инфраструктуре и использует преимущественно системные и структурные данные. Он не описывает использование традиционных SEO-факторов (ссылочных, поведенческих) для ранжирования.
- Системные/Структурные факторы:
- Document Identifiers (ID документов): Критически важны для шардирования.
- Phrase Posting Lists: Основные данные индекса.
- Query Processing Costs: Метрики (например, длина списка, частотность фразы), используемые для назначения уровней (Tiers) и оптимизации запросов.
- Phrase Probability/Frequency: Вероятность встречи фразы в корпусе, используется при фразификации запроса.
- Контентные факторы (только для извлечения фраз): Во время начального извлечения фраз (Phrase Extraction) используются семантические и визуальные маркеры в документе (Text Breaks), такие как границы предложений, абзацев, заголовки, анкорный текст (anchor text), а также характеристики шрифта (typeface).
Какие метрики используются и как они считаются
- Query Cost (Стоимость запроса): Метрика, используемая для планирования и оптимизации запросов. Может быть основана на уровне (Tier), длине Phrase Posting List или оценке стоимости поддерева (Subtree cost).
- Shard ID (Идентификатор шарда): Вычисляется с помощью Shard Assignment Function. В одном из вариантов: Shard ID = Document Identifier (Modulo S), где S — количество шардов на данном уровне.
- Tier Assignment (Назначение уровня): Определяется путем сравнения стоимости Phrase Posting List с предопределенными порогами для каждого уровня.
- Phrase Score (Оценка фразы при извлечении): Оценка, указывающая, насколько вероятно, что последовательность слов является реальной фразой. Учитывает позицию в документе, тип разрыва (Initial, Medial, Final, Exact) и визуальные характеристики.
- Phrasification Score (Оценка фразификации запроса): Оценка для выбора лучшего разбиения запроса на фразы. Использует вероятность фраз, их количество и параметры для настройки баланса точности/полноты (Precision/Recall).
Выводы
- Инфраструктура для фраз: Патент подтверждает, что архитектура Google изначально спроектирована для эффективной работы с индексом, основанным на фразах (Phrase Posting Lists), а не только на отдельных словах. Это не просто алгоритмический слой, а фундаментальная структура хранения данных.
- Оптимизация скорости через архитектуру: Ключевое изобретение — это специфическая связь между уровнями (Tiers) и шардами (Shards), где Sn = k * Sn-1. Это математически гарантирует минимизацию межсерверного трафика во время пересечения списков (query intersection), что критически важно для скорости ответа системы.
- Фразификация как ключевой этап понимания запроса: Система не просто ищет слова из запроса. Она активно пытается определить наилучший способ группировки этих слов в значимые фразы (Phrasification), используя статистические данные о вероятности фраз, прежде чем начать поиск.
- Масштабируемое обновление индекса: Использование Segments и механизма слияния (merging) позволяет обновлять индекс непрерывно и постепенно, минимизируя время недоступности данных во время обновлений.
- Ограниченное значение для тактического SEO: Патент описывает внутренние механизмы хранения и извлечения данных (Information Retrieval), но не содержит информации о факторах ранжирования (Ranking), качестве контента или ссылочном профиле.
Практика
Best practices (это мы делаем)
Хотя патент инфраструктурный, он дает важное понимание того, как Google обрабатывает язык, что влияет на контент-стратегию.
- Фокус на естественном языке и реальных фразах: Поскольку система построена на извлечении и индексировании «реальных фраз» (Real Phrases), необходимо использовать естественный язык и те словосочетания, которые имеют высокую вероятность использования в корпусе. Это важнее, чем насыщение текста отдельными ключевыми словами.
- Четкая структура документа: Система использует Text Breaks (заголовки, абзацы, списки, изменения форматирования) для идентификации кандидатов во фразы. Четкая, логичная и семантически верная структура документа помогает системе корректно идентифицировать ключевые фразы и концепции на странице.
- Использование фраз в значимых местах: В описании патента указано, что фразы, расположенные в значимых местах (например, в Title, anchor text) или выделенные визуально (typeface), получают более высокий балл (Phrase Score) при извлечении. Это подтверждает важность использования ключевых фраз в заголовках и акцентных элементах.
Worst practices (это делать не надо)
- Игнорирование словосочетаний в пользу отдельных слов: Стратегии, ориентированные только на отдельные высокочастотные ключевые слова, игнорируют тот факт, что инфраструктура индекса и процесс понимания запроса (Phrasification) сфокусированы на фразах.
- Неструктурированный контент («Полотно текста»): Отсутствие четких семантических границ (Text Breaks) затрудняет системе эффективное извлечение значимых фраз из контента, что может повлиять на полноту индексации концепций страницы.
Стратегическое значение
Этот патент имеет высокое стратегическое значение, так как он описывает фундамент, на котором построены возможности Google по семантическому поиску. Он демонстрирует переход от индекса, основанного на словах (keyword-based index), к индексу, основанному на концепциях и фразах (phrase-based index). Это подтверждает долгосрочный вектор развития поиска в сторону понимания естественного языка и интента, а не простого сопоставления терминов.
Практические примеры
Сценарий: Оптимизация статьи под запрос «Уход за кожей зимой» (Понимание Phrasification и Phrase Extraction)
- Анализ запроса системой: Google применяет Phrasification. Варианты: («Уход за кожей» + «зимой»), («Уход» + «за кожей зимой»). Система выберет вариант с наибольшей вероятностью на основе данных индекса.
- Действия SEO-специалиста: Необходимо убедиться, что контент содержит эти «реальные фразы» и что они корректно извлекаются.
- Реализация в контенте: Использовать фразу «уход за кожей» в заголовке (например, H1: «Эффективный уход за кожей зимой»). Согласно описанию процесса Phrase Extraction в патенте, это увеличивает Phrase Score, так как фраза находится в значимом месте (Title) и ограничена Text Breaks (тегами заголовка).
- Ожидаемый результат: Система эффективно идентифицирует и индексирует страницу по ключевым фразам, что является необходимым условием для ранжирования, когда система ищет именно эти фразы в своем индексе.
Вопросы и ответы
Описывает ли этот патент факторы ранжирования?
Нет. Это инфраструктурный патент. Он описывает, как Google хранит индекс, основанный на фразах, и как он оптимизирует скорость извлечения данных из этого индекса (Information Retrieval). Он не содержит информации о том, как Google оценивает качество сайта, контента или ссылок для определения позиций в выдаче (Ranking).
В чем разница между Tiers (Уровни) и Shards (Шарды)?
Tiers (Уровни) — это горизонтальное группирование фраз по стоимости их обработки (например, частые фразы отдельно от редких). Shards (Шарды) — это вертикальное разделение списка документов для одной фразы на части для параллельной обработки. Эти два механизма используются совместно для оптимального распределения нагрузки и данных по серверам.
Что такое «Phrasification» (Фразификация) и почему это важно для SEO?
Phrasification — это процесс разбора запроса пользователя на наиболее вероятные комбинации фраз. Например, запрос «new york restaurants» может быть понят как («new york» + «restaurants») или («new» + «york restaurants»). Это важно, потому что Google ищет в своем индексе именно те фразы, которые он определил на этом этапе, что подчеркивает необходимость оптимизации контента под реальные словосочетания.
Как Google определяет, какие последовательности слов являются фразами?
Патент описывает процесс извлечения фраз (Phrase Extraction), который учитывает структуру документа (заголовки, абзацы, изменения шрифта, анкорный текст — Text Breaks) и статистический анализ частоты совместной встречаемости слов по всему корпусу документов. Цель — идентифицировать «реальные фразы», используемые в языке.
Ускоряет ли эта архитектура поиск и как?
Да, значительно. Главная оптимизация достигается за счет специфической связи между уровнями (Sn = k * Sn-1, правило кратности). Это ограничивает количество серверов, с которыми должен общаться любой данный сервер во время выполнения запроса (query intersection), минимизируя сетевой трафик и время ожидания.
Что такое бифуркационная оценка релевантности (Bifurcated Scoring)?
Это двухэтапный процесс оценки, упомянутый в патенте. На первом этапе (при индексировании) рассчитывается релевантность фразы документу. На втором этапе (при запросе) рассчитывается финальная релевантность документа запросу, используя предварительные оценки. Это повышает эффективность обработки запросов.
Связан ли этот патент с алгоритмами BERT или MUM?
Прямой связи нет, но этот патент описывает базовую инфраструктуру (базу данных индекса), которая позволяет быстро извлекать информацию. Современные NLP-модели, такие как BERT или MUM, полагаются на подобную эффективную инфраструктуру для получения данных, которые они затем анализируют на более поздних этапах ранжирования.
Что такое «Text Breaks» и как это использовать в SEO?
Text Breaks — это семантические границы в тексте: конец предложения, тег заголовка, начало абзаца, изменение форматирования. Они используются системой для определения границ потенциальных фраз. В SEO это подчеркивает важность чистой, структурированной верстки и логичного форматирования контента для помощи системе в извлечении фраз.
Как эта архитектура влияет на длиннохвостые (long-tail) запросы?
Архитектура эффективно поддерживает long-tail запросы. Длинные и редкие фразы (характерные для long-tail) обычно имеют низкую стоимость обработки и хранятся на уровнях (Tiers) с небольшим количеством шардов. Это позволяет эффективно хранить огромное количество таких фраз и быстро извлекать их без лишней нагрузки на систему.
Как эта система обновляет индекс?
Патент описывает механизм обновления с использованием Segments. Индекс разделен на сегменты. Обновления накапливаются в виде Segment Shard Files, которые затем сливаются (merged) с основными Index Shard Files. Этот процесс позволяет обновлять индекс постепенно, не прекращая обслуживание запросов.