Способ создания аннотированного поискового индекса и сервер, используемый в нем

Иллюстрации

Показать все

Изобретение относится к способу и серверу для создания аннотированного поискового индекса. Технический результат заключается в повышении полноты поисковых результатов. В способе выполняют извлечение части поисковой сессии из истории для первого поискового запроса, включающей в себя первый и второй ресурс, релевантные первому поисковому запросу, первый ресурс включает в себя некоторые из поисковых терминов из первого поискового запроса, и первый ресурс был проиндексирован по включенным в него поисковым терминам в первом поисковом индексе, второй ресурс не включает в себя ни один из поисковых терминов из первого поискового запроса и не был проиндексирован по поисковым терминам в первом поисковом индексе, создание параметра связи для второго ресурса, причем параметр связи основан на первом параметре истории, являющемся числом переходов между первым ресурсом и вторым ресурсом в поисковой сессии из истории и втором параметре истории, являющемся временем, проведенным предыдущим пользователем во взаимодействии со вторым ресурсом в поисковой сессии из истории, и в ответ на то, что параметр связи для второго ресурса превышает заранее определенный порог, связывание второго ресурса с первым ресурсом и включенными в него поисковыми терминами, что создает аннотированный поисковый индекс для этих поисковых терминов. 2 н. и 12 з.п. ф-лы, 4 ил.

Реферат

Область техники, к которой относится изобретение

[01] Настоящее техническое решение относится к области поисковых систем в целом и в частности к способу и устройству для создания аннотированного поискового индекса.

Уровень техники

[02] Интернет предоставляет доступ к широкому спектру ресурсов, например видеофайлам, файлам изображений, аудиофайлам или веб-страницам, содержащим контент по специфическим тематикам, к выдержкам из книг и новостным статьям. Поисковая система в ответ на получение поискового запроса может выбрать один или несколько ресурсов. Поисковый запрос представляет собой данные, которые пользователь отправляет (или инициирует, сознательно или неосознанно, их передачу или получение) поисковой системе для осуществления поиска с целью удовлетворения своих информационных потребностей. Поисковые запросы почти всегда содержат данные в виде текста - например, один или несколько терминов поискового запроса, - а также другую информацию. Для предоставления результатов поиска, связанных с выбранными ресурсами, поисковая система выбирает и оценивает ресурсы на основе их соответствия поисковому запросу и относительной важности по сравнению с другими ресурсами. Поисковые результаты обычно ранжируются по порядку в соответствии с оценками и выводятся в соответствии с этим порядком.

[03] Современные большие центры обработки данных обрабатывают наборы данных, содержащих миллиарды элементов данных. В таких больших наборах поиск конкретных элементов, которые отвечают условиям данного поискового запроса, является задачей, которая требует значительных вычислительных ресурсов. Эта задача также требует значительного количества времени, даже при обработке на наиболее мощных многопроцессорных компьютерных системах. Во многих приложениях время ответа на поисковый запрос является решающим, либо из-за конкретных технических требований, либо из-за ожиданий пользователей. Чтобы уменьшить время выполнения поискового запроса, используются различные общеизвестные способы.

[04] Обычно при формировании системы управления набором данных с возможностью поиска элементы данных индексируются в соответствии с некоторыми или всеми возможными поисковыми терминами, которые могут содержаться в поисковых запросах. Системой создается (а также сохраняется и обновляется) "инвертированный индекс" набора данных для использования при выполнении поисковых запросов. Инвертированный индекс состоит из ряда "списков словопозиций". Каждый список словопозиций соответствует поисковому термину и содержит ссылки на элементы данных, содержащие данный поисковый термин (или иным образом удовлетворяющие некоторым иным условиям, которые выражаются поисковым термином). Например, если элементы данных являются текстовыми документами, что часто встречается в работе поисковых интернет-систем, то поисковые термины являются индивидуальными словами (и/или некоторыми наиболее часто используемыми их комбинациями), а инвертированные индексы содержат один список словопозиций для каждого слова, которое встретилось по меньшей мере в одном документе. В другом примере набор данных является базой данных, содержащей одну или несколько очень длинных таблиц. Элементы данных являются индивидуальными записями (т.е. строками в таблице) с рядом характеристик, представленных определенными значениями в подходящих столбцах таблицы. Поисковые термины являются конкретными значениями характеристик или иными условиями или характеристиками. Список словопозиций для поискового термина является списком ссылок (индексов, порядковых номеров) на записи, которые удовлетворяют поисковому термину.

[05] Чтобы сократить время, требуемое на выполнение поискового запроса, инвертированный индекс обычно сохраняется в устройстве быстродействующей памяти (например, в ОЗУ) одной или нескольких компьютерных систем, в то время как сами элементы данных сохраняются на большем, но функционирующем медленнее носителе (например, на магнитных или лазерных дисках или иных сходных устройствах большой емкости). Таким образом обработка поискового запроса будет включать в себя поиск в одном или нескольких списках словопозиций инвертированных индексов в устройстве быстродействующей памяти, а не поиск самих элементов данных (в устройстве медленнодействующей памяти). В общем случае это позволяет осуществлять поисковые запросы с гораздо более высокой скоростью.

[06] Учитывая объем информации в Интернете и бессистемность распределения разнообразных ресурсов, пользователю не всегда просто сформулировать поисковый запрос, который легко и быстро приведет к получению нужной информации. Кроме того, во многих случаях интересующий пользователя ресурс не связан напрямую с поисковыми терминами в поисковом запросе или с предложениями поисковых запросов. Страница с высокой релевантностью может быть не включена в списки словопозиций для поискового запроса и таким образом может не быть найдена с помощью обычного инвертированного индекса. Например, документ с высокой релевантностью может быть веб-ресурсом, содержащим только графики-изображения, которые не включают в себя никаких текстовых символов или ссылок на поисковый запрос (например URL, заголовок и т.д.).

[07] Существует необходимость в улучшении существующих поисковых систем для предоставления более полных поисковых результатов и еще более удовлетворительного поискового взаимодействия пользователям.

[08] В публикации патентной заявки США No. US 20070038608 раскрыта компьютерная поисковая система для улучшения ранжирования веб-страниц и их представления на основе дополнительной информации, относящейся к содержимому извлеченного документа. Дополнительная информация напрямую относится к содержимому извлеченных веб-страниц, но не присутствует на извлеченных веб-страницах и/или в структуре ссылки. Новая поисковая система ищет обычный набор веб-страниц, а также базы данных, содержащие публикации и семантические веб-данные, которые предоставляют указанную выше дополнительную информацию. Информация, относящаяся к концепту, затем используется при определении итогового ранжирования страниц, что приводит к более релевантному и объективному ранжированию страниц.

[09] В публикации патентной заявки США No. US 20130132381 раскрыта система разметки элементов с помощью фраз-описаний. Может быть определено множество фраз-описаний, связанных с первым доменом на основе анализа первого множества документов для определения совместной встречаемости фраз-описаний с одной или несколькими метками имени, связанными с первым доменом. Может быть получена запись, связанная с первым доменом. Анализ второго множества документов может быть инициирован для идентификации совместной встречаемости упоминаний полученного элемента и одного или нескольких множеств фраз-описаний и контекстов, связанных с каждым из совместной встречаемости упоминаний и фраз-описаний в каждом из второго множества документов. На основе анализа идентифицированных контекстов может быть определена связь через метку-описание между полученным элементом и одной из фраз-описаний.

[10] Патент США No. US 8095538 раскрывает систему и способ аннотированного индекса. В данном патенте описан способ программирования компьютерной системы для извлечения информации в структуре аннотации, обладающей видом инвертированного списка, включая сбор группы документов и сохранение их в цифровом формате, определение группы аннотаций, ссылающихся на группу документов и формирование индекса фрагмента информации с помощью группировки группы аннотаций с помощью уникального идентификатора аннотаций. Способ также включает в себя формирование словаря фрагментов информации, который для каждого уникального идентификатора аннотаций указывает соответствующее положение в индексе фрагментов информации для группы аннотаций, которая имеет этот уникальный идентификатор аннотаций.

Раскрытие изобретения

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

[12] Первым объектом настоящего технического решения является способ создания аннотированного поискового индекса (поискового индекса с примечаниями). Способ может выполняться на сервере. Способ включает в себя: извлечение части поисковой сессии из истории для первого поискового запроса, причем эта часть включает в себя первый ресурс и второй ресурс, которые релевантны первому поисковому запросу, первый ресурс включает в себя по меньшей мере некоторые из поисковых терминов первого поискового запроса и был проиндексирован по включенным в него поисковым терминам в первом поисковом индексе, а второй ресурс не включает в себя ни одного поискового термина первого поискового запроса, и он не был проиндексирован по поисковым терминам в первом поисковом индексе; создание параметра связи для второго ресурса, причем параметр связи основан на первом параметре истории и втором параметре истории; и, в ответ на то, что параметр связи для второго ресурса превышает заранее определенный порог, связывание второго ресурса с одним или несколькими первыми ресурсами и включенными в него или них поисковыми терминами, что создает аннотированный поисковый индекс для этих поисковых терминов.

[13] Первый параметр истории является числом переходов между первым ресурсом и вторым ресурсом в поисковой сессии из истории. Второй параметр истории является временем, проведенным предыдущим пользователем во взаимодействии со вторым ресурсом в поисковой сессии из истории.

[14] В некоторых вариантах осуществления настоящего технического решения параметр связи находится выше предварительно определенного порога, когда первый параметр истории является одним из следующего: 1, 2 или 3 перехода, а второй параметр истории составляет по меньшей мере 30 секунд. В других вариантах осуществления настоящего технического решения параметр связи находится выше предварительно определенного порога, когда первый параметр истории является одним из следующего: 1 или 2 перехода, а второй параметр истории составляет по меньшей мере 30 секунд. Число переходов между первым поисковым запросом и первым ресурсом обычно равно 1, но в некоторых вариантах осуществления настоящего технического решения оно может быть более 1.

[15] В некоторых вариантах осуществления настоящего технического решения аннотированный поисковой индекс создается путем связывания второго ресурса с первым ресурсом и включенными в него поисковыми терминами. В альтернативных вариантах осуществления настоящего технического решения аннотированный поисковой индекс создается связыванием второго ресурса с одним или несколькими первыми ресурсами и включенными в него или них поисковыми терминами.

[16] В некоторых вариантах осуществления настоящего технического решения первый и второй ресурс независимо являются одним или несколькими пунктами из списка: документ, изображение, аудиофайл, веб-страница, твит (запись в Твиттере), ссылка, заголовок документа и фрагмент документа.

[17] В варианте осуществления настоящего технического решения первый поисковый индекс является инвертированным индексом; первый ресурс и включенные в него поисковые термины связаны друг с другом в списке (списках) словопозиций в инвертированном индексе; и ссылка на второй ресурс вставлена в подходящий список (списки) словопозиций в инвертированном индексе, что создает аннотированный поисковой индекс. В альтернативном варианте осуществления настоящего технического решения второй ресурс связан с одним или несколькими первыми ресурсами и включенными в него или них поисковыми терминами во втором поисковом индексе, причем созданный аннотированный поисковый индекс включает в себя второй поисковый индекс и отличается от первого поискового индекса. Второй поисковый индекс может быть, например, трех- или четырехмерным массивом данных (т.е. с 3 или 4 уровнями данных). 3 или 4 измерения включают один или несколько пунктов из списка: docID (ID документа), breakID (ID разрыва), regionID (ID области) и sourceID (ID источника).

[18] Другим объектом настоящего технического решения является система создания аннотированного поискового индекса, причем система включает в себя сервер. Сервер включает в себя интерфейс передачи данных для передачи данных по сети передачи данных поисковому кластеру, у которого есть доступ к базе данных, память и процессор, функционально соединенный с интерфейсом передачи данных и памятью, причем процессор выполнен с возможностью сохранять объекты в памяти. Процессор дополнительно выполнен с возможностью осуществлять: извлечение части поисковой сессии из истории для первого поискового запроса, причем эта часть включает в себя первый ресурс и второй ресурс, которые релевантны первому поисковому запросу, первый ресурс включает в себя по меньшей мере некоторые из поисковых терминов первого поискового запроса и был проиндексирован по включенным в него поисковым терминам в первом поисковом индексе, а на втором ресурсе нет ни одного поискового термина из первого поискового запроса, и он не был проиндексирован по поисковым терминам в первом поисковом индексе; создание параметра связи для второго ресурса, причем параметр связи основан на первом параметре истории и втором параметре истории; и в ответ на то, что параметр связи для второго ресурса превышает заранее определенный порог, связывание второго ресурса с одним или несколькими первыми ресурсами и включенными в него или них поисковыми терминами, что создает аннотированный поисковый индекс для этих поисковых терминов.

[19] В некоторых вариантах осуществления настоящего технического решения процессор выполнен с возможностью связывать второй ресурс с первым ресурсом и включенными в него поисковыми терминами для создания аннотированного поискового индекса. В других вариантах осуществления настоящего технического решения процессор выполнен с возможностью связывать второй ресурс с одним или несколькими первыми ресурсами и включенными в него или них поисковыми терминами для создания аннотированного поискового индекса.

[20] В одном варианте осуществления настоящего технического решения первый поисковый индекс является инвертированным индексом; первый ресурс и включенные в него поисковые термины связаны друг с другом в списке (списках) словопозиций в инвертированном индексе; и процессор выполнен с возможностью вставлять ссылку на второй ресурс в подходящий список (списки) словопозиций в инвертированном индексе, что создает аннотированный поисковой индекс. В другом варианте осуществления настоящего технического решения процессор выполнен с возможностью связывать второй ресурс с одним или несколькими первыми ресурсами и включенными в него или них поисковыми терминами во втором поисковом индексе, причем созданный аннотированный поисковый индекс включает в себя второй поисковый индекс и отличается от первого поискового индекса. Второй поисковый индекс может быть, например, трех- или четырехмерным массивом данных, причем 3 или 4 измерения содержат один или несколько пунктов из списка: docID (ID документа), breakID (ID разрыва), regionID (ID области) и sourceID (ID источника).

[21] В контексте настоящего описания «сервер» подразумевает под собой компьютерную программу, работающую на соответствующем оборудовании, которая способна получать запросы (например, от клиентских устройств) по сети и выполнять эти запросы или инициировать выполнение этих запросов. Оборудование может представлять собой один физический компьютер или одну физическую компьютерную систему, но ни то, ни другое не является обязательным для настоящего технического решения. В контексте настоящего технического решения использование выражения «сервер» не означает, что каждая задача (например, полученные команды или запросы, извлечение поисковых сессий из истории) или какая-либо конкретная задача будет получена, выполнена или инициирована к выполнению одним и тем же сервером (то есть одним и тем же программным обеспечением и/или аппаратным обеспечением); это означает, что любое количество элементов программного обеспечения или аппаратных устройств может быть вовлечено в прием/передачу, выполнение или инициирование выполнения любого запроса или последствия любого запроса, связанного с клиентским устройством, и все это программное и аппаратное обеспечение может быть одним сервером или несколькими серверами, оба варианта включены в выражение «сервер».

[22] В контексте настоящего описания «клиентское устройство» подразумевает под собой аппаратное устройство, способное работать с программным обеспечением, подходящим к решению соответствующей задачи. Таким образом, примерами клиентских устройств (среди прочего) могут служить персональные компьютеры (настольные компьютеры, ноутбуки, нетбуки и т.п.), смартфоны, планшеты, а также сетевое оборудование, такое как маршрутизаторы, коммутаторы и шлюзы. Следует иметь в виду, что устройство, ведущее себя как клиентское устройство в настоящем контексте, может вести себя как сервер по отношению к другим клиентским устройствам. Использование выражения «клиентское устройство» не исключает возможности использования множества клиентских устройств для получения/отправки, выполнения или инициирования выполнения любой задачи или запроса, или же последствий любой задачи или запроса, или же этапов любого вышеописанного способа.

[23] В контексте настоящего описания «база данных» подразумевает под собой любой структурированный набор данных, не зависящий от конкретной структуры, программного обеспечения по управлению базой данных, аппаратного обеспечения компьютера, на котором данные хранятся, используются или иным образом оказываются доступны для использования. База данных может находиться на том же оборудовании, выполняющем процесс, который сохраняет или использует информацию, хранящуюся в базе данных, или же она может находиться на отдельном оборудовании, например выделенном сервере или множестве серверов.

[24] В контексте настоящего описания «информация» включает в себя информацию любого рода или типа, которая может храниться в базе данных. Таким образом, информация включает в себя, среди прочего, аудиовизуальные произведения (изображения, видео, звукозаписи, презентации и т.д.), данные (данные о местоположении, цифровые данные и т.д.), текст (мнения, комментарии, вопросы, сообщения и т.д.), документы, таблицы и т.д.

[25] В контексте настоящего описания «компонент» подразумевает под собой программное обеспечение (соответствующее конкретному аппаратному контексту), которое является необходимым и достаточным для выполнения конкретной(ых) указанной(ых) функции(й).

[26] В контексте настоящего описания «используемый компьютером носитель компьютерной информации» подразумевает под собой носитель абсолютно любого типа и характера, включая ОЗУ, ПЗУ, диски (компакт диски, DVD-диски, дискеты, жесткие диски и т.д.), USB флеш-накопители, твердотельные накопители, накопители на магнитной ленте и т.д.

[27] В контексте настоящего описания, как было описано ранее, "список словопозиций" для данного поискового термина - это обычно список ссылок на элементы данных в наборе данных, который включает в себя этот поисковый термин. В этом случае понятно, что чем более общим является поисковый термин, тем большим будет число ссылок в списке словопозиций. Для широко распространенных поисковых терминов, например, артикля "the" в английском языке, список словопозиций будет включать в себя ссылки на каждый элемент данных в наборе данных. Почти для всех других поисковых терминов такого не происходит, однако, будут существовать разрывы между элементами данных в наборе данных, содержащими данный поисковый термин, причем эти разрывы образованы элементами данных, которые не содержат этот термин. Так, например, принимая, что ссылки в списке словопозиций указывали на номера документов, соответствующие разрывы в номерах документов будут присутствовать в списке словопозиций.

[28] Список словопозиций для данного общего поискового термина (т.е. поисковый термин, который можно обнаружить в относительно большом числе документов, но не во всех) будет содержать ссылки в форме номеров документов, на те документы, в которых этот поисковый термин появляется. Ссылки в списках словопозиций сами по себе пронумерованы по порядку, но при отсутствии поискового термина в документах образуются разрывы между номерами документов из-за пропущенных документов. Длина списка словопозиций может быть различной в зависимости от числа элементов данных в наборе данных, которые включают в себя поисковый термин. Длина списка словопозиций может быть нулевой, при отсутствии в наборе данных документов, в которых встречается поисковый термин из запроса.

[29] В контексте настоящего описания, как было описано выше, "инвертированный индекс" содержит ряд списков словопозиций.

[30] В некоторых вариантах осуществления настоящего технического решения каждый из множества списков словопозиций соответствует множеству ссылок поисковых терминов на множество индексированных элементов, причем проиндексированные элементы последовательно пронумерованы. Как было описано выше, такую схему используют поисковые интернет-системы, причем проиндексированные элементы последовательно пронумерованы номерами документов.

[31] В некоторых вариантах осуществления настоящего технического решения каждый из множества списков словопозиций соответствует множеству ссылок поисковых терминов на множество индексированных элементов, причем проиндексированные элементы сгруппированы в порядке понижения их релевантности, не зависящей от запроса. Эту схему обычно используют поисковые интернет-системы, в которых элементы данных не вносятся в набор данных бессистемно. Обычно элементы в наборе данных расположены в порядке понижения их релевантности, не зависящей от запроса. Таким образом, элементы данных, вероятность которых оказаться частью поисковых результатов любого данного поискового запроса статистически выше, будут расположены таким образом, чтобы их можно было найти в начале поиска. Поэтому более вероятно, что они будут найдены быстрее, чем данные в наборе данных, которые были введены бессистемно.

[32] В контексте настоящего описания слова «первый», «второй», «третий» и т.д. используются в виде прилагательных исключительно для того, чтобы отличать существительные, к которым они относятся, друг от друга, а не для целей описания какой-либо конкретной связи между этими существительными. Так, например, следует иметь в виду, что использование терминов "первый сервер" и "третий сервер" не подразумевает какого-либо порядка, отнесения к определенному типу, хронологии, иерархии или ранжирования (например) серверов/между серверами, равно как и их использование (само по себе) не предполагает, что некий "второй сервер" обязательно должен существовать в той или иной ситуации. В дальнейшем, как указано здесь в других контекстах, упоминание "первого" элемента и "второго" элемента не исключает возможности того, что это один и тот же фактический реальный элемент. Так, например, в некоторых случаях, "первый" сервер и "второй" сервер могут являться одним и тем же программным и/или аппаратным обеспечением, а в других случаях они могут являться разным программным и/или аппаратным обеспечением.

[33] Каждый вариант осуществления настоящего технического решения преследует по меньшей мере одну из вышеупомянутых целей. Следует иметь в виду, что некоторые объекты настоящего технического решения, полученные в результате попыток достичь вышеупомянутой цели, могут удовлетворять и другим целям, отдельно не указанным здесь.

[34] Дополнительные и/или альтернативные характеристики, аспекты и преимущества вариантов осуществления настоящего технического решения станут очевидными из последующего описания, прилагаемых чертежей и прилагаемой формулы изобретения.

Краткое описание чертежей

[35] Для лучшего понимания настоящего изобретения, а также других его вариантов осуществления и характерных черт сделана ссылка на следующее описание, которое должно использоваться в сочетании с прилагаемыми чертежами, где:

[36] На Фиг. 1 представлена принципиальная схема системы, реализованной в соответствии с вариантами осуществления настоящего технического решения, не ограничивающими его объем.

[37] На Фиг. 2 представлена поисковая сессия из истории в соответствии с вариантами осуществления настоящего технического решения, не ограничивающими его объем.

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

[39] На Фиг. 4 представлена блок-схема способа, выполняемого в рамках системы, изображенной на Фиг. 1, и выполненного в соответствии с вариантами осуществления настоящего технического решения, не ограничивающими его объем.

Осуществление изобретения

[40] На Фиг. 1 представлена принципиальная схема системы 100, выполненной в соответствии с вариантами осуществления настоящего технического решения, не ограничивающими его объем. Важно иметь в виду, что нижеследующее описание системы 100 представляет собой описание показательных вариантов осуществления настоящего технического решения. Таким образом, все последующее описание представлено только как описание показательного примера настоящего технического решения. Это описание не предназначено для определения объема или установления границ настоящего технического решения. Некоторые полезные примеры модификаций системы 100 также могут быть охвачены нижеследующим описанием. Целью этого является также исключительно помощь в понимании, а не определение объема и границ настоящего технического решения. Эти модификации не представляют собой исчерпывающий список, и специалистам в данной области техники будет понятно, что возможны и другие модификации. Кроме того, это не должно интерпретироваться так, что там, где это еще не было сделано, т.е. там, где не были изложены примеры модификаций, никакие модификации невозможны, и/или что то, что описано, является единственным вариантом осуществления этого элемента настоящего технического решения. Как будет понятно специалисту в данной области техники, это, скорее всего, не так. Кроме того, следует иметь в виду, что система 100 представляет собой в некоторых конкретных проявлениях достаточно простой вариант осуществления настоящего технического решения, и в подобных случаях он представлен здесь с целью облегчения понимания. Как будет понятно специалисту в данной области техники, многие варианты осуществления настоящего технического решения будут обладать гораздо большей сложностью.

[41] В общем случае система 100 выполнена с возможностью получать поисковые запросы и проводить поиски (например, обычные и вертикальные поиски) в ответ на эти запросы, а также создавать аннотированные поисковые индексы в соответствии с вариантами осуществления настоящего технического решения, не ограничивающими его объем. Поэтому любой вариант системы, выполненный с возможностью обрабатывать поисковые запросы пользователя и создавать аннотированные поисковые индексы, может быть адаптирован специалистом к выполнению вариантов осуществления настоящего технического решения после того, как специалистом было прочитано настоящее описание.

[42] Система 100 включает в себя электронное устройство 102. Электронное устройство 102 обычно связано с пользователем (не показан) и, таким образом, иногда может упоминаться как «клиентское устройство». Следует отметить, что тот факт, что электронное устройство 102 связано с пользователем, не подразумевает какого-либо конкретного режима работы, равно как и необходимости входа в систему, регистрации, или чего-либо подобного.

[43] Варианты электронного устройства 102 конкретно не ограничены, но в качестве примера электронного устройства 102 могут использоваться персональные компьютеры (настольные компьютеры, ноутбуки, нетбуки и т.п.), устройства беспроводной связи (смартфоны, мобильные телефоны, планшеты и т.п.), а также сетевое оборудование (маршрутизаторы, коммутаторы или шлюзы). Электронное устройство 102 включает в себя аппаратное и/или прикладное программное, и/или системное программное обеспечение (или их комбинацию), как известно в данной области техники, для использования поискового приложения 104. В общем случае, целью поискового приложения 104 является предоставление возможности пользователю (не показан) выполнять поиск, например, сетевой поиск с помощью поисковой системы.

[44] Реализация поискового приложения 104 никак конкретно не ограничена. Одним из примеров выполнения поискового приложения 104 является доступ пользователем на веб-сайт, соответствующий поисковой системе, для получения доступа к поисковому приложению 104. Например, поисковое приложение может быть вызвано путем ввода URL, связанного с поисковой системой Яндекс (Yandex™): www.yandex.ru. Важно иметь в виду, что поисковое приложение 104 может быть вызвано с помощью любой другой коммерчески доступной или собственной поисковой системы.

[45] В других вариантах осуществления настоящего технического решения, не ограничивающих его объем, поисковое приложение 104 может представлять собой браузерное приложение на портативном устройстве (например, беспроводном устройстве связи). Для тех случаев (но не только), когда электронное устройство 102 является портативным устройством, таким как, например, Samsung™ Galaxy™ Sill, электронное устройство может использовать приложение Яндекс-браузер. Важно иметь в виду, что любое другое коммерчески доступное или собственное браузерное приложение может быть использовано для реализации вариантов осуществления настоящего технического решения, не ограничивающих его объем.

[46] В общем случае, поисковое приложение 104 включает в себя интерфейс 106 поисковых запросов и интерфейс результатов 108 поиска. Основной задачей интерфейса 106 поисковых запросов является предоставление возможности пользователю (не показан) вводить свой запрос или «поисковый запрос». Основной задачей интерфейса 108 результатов поиска является предоставление результатов поиска, отвечающих пользовательскому поисковому запросу 210, который был введен в интерфейс 106 поисковых запросов.

[47] К сети передачи данных также присоединен сервер 116. Сервер 116 может представлять собой обычный компьютерный сервер. В примере варианта осуществления настоящего технического решения сервер 116 может представлять собой сервер Dell™ PowerEdge™, на котором используется операционная система Microsoft™ Windows Server™. Излишне говорить, что сервер 116 может представлять собой любое другое подходящее аппаратное, и/или прикладное программное, и/или системное программное обеспечение. В представленном варианте осуществления настоящего технического решения, не ограничивающем его объем, сервер 116 является одиночным сервером. В других вариантах осуществления настоящего технического решения, не ограничивающих его объем, функциональность сервера 116 может быть разделена и может выполняться с помощью нескольких серверов.

[48] Электронное устройство 102 выполнено с возможностью обмениваться данными с сервером 116 через линию 112 передачи данных. В общем случае линия 112 передачи данных предоставляет электронному устройству 102 выполнять доступ к серверу 116 через сеть передачи данных (не показана). В некоторых вариантах осуществления настоящего технического решения, не ограничивающих его объем, сеть передачи данных (не показана) может представлять собой Интернет. В других вариантах осуществления настоящего технического решения сеть передачи данных (не показана) может быть реализована иначе - в виде глобальной сети передачи данных, локальной сети передачи данных, частной сети передачи данных и т.п.

[49] Реализация линии 112 передачи данных не ограничена и будет зависеть от того, какое электронное устройство 102 используется. В качестве примера, но не ограничения, в данных вариантах осуществления настоящего технического решения в случаях, когда электронное устройство 102 представляет собой беспроводное устройство связи (например, смартфон), линия 112 передачи данных представляет собой беспроводную сеть передачи данных (например, среди прочего, линия передачи данных 3G, линия передачи данных 4G, беспроводной интернет Wireless Fidelity или коротко WiFi®, Bluetooth® и т.п.). В тех примерах, где электронное устройство 102 представляет собой портативный компьютер, линия передачи данных может быть как беспроводной (беспроводной интернет Wireless Fidelity или коротко WiFi®, Bluetooth® и т.п), так и проводной (соединение на основе сети Ethernet).

[50] Сервер 116 соединен функционально (или иным образом имеет доступ) с поисковым кластером 118. В соответствии с этими вариантами осуществления настоящего технического решения поисковый кластер 118 выполняет общий и/или вертикальный поиск в ответ на поисковый запрос пользователя, введенный с помощью интерфейса 106 поисковых запросов, и выводит результаты поиска для представления их пользователю с помощью интерфейса результатов поиска 108. В рамках этих вариантов осуществления настоящего технического решения, не ограничивающих его объем, поисковый кластер 118 включает в себя или имеет доступ к базе данных 122. Как известно специалистам в данной области техники, база данных 122 хранит информацию, связанную со множеством ресурсов, потенциально доступных через сеть передачи данных (например, эти ресурсы доступны по интернету). База данных 122 также сохраняет информацию и данные, например характеристики поисковых историй в отношении конкретного поискового запроса 210 (например, поисковых сессий из истории), инвертированному индексу и т.д. Процесс заполнения и ведения базы данных 122 общеизвестен как "сбор данных" ("кроулинг" от англ. "crawling").

[51] Осуществление базы данных 122 никак конкретно не ограничено. Следует понимать, что может быть использовано любое подходящее для хранения данных оборудование. В некоторых вариантах осуществления настоящего технического решения база данных 122 может быть физически совмещена с поисковым кластером 118, т.е. нет необходимости в том, чтобы они являлись отдельными частями аппаратного оборудования, как это изображено, хотя они могут являться отдельными частями аппаратного оборудования. В представленном варианте осуществления настоящего технического решения, не ограничивающем его объем, база данных 122 является одиночной базой данных. В альтернативных неограничивающих вариантах осуществления настоящего технического решения база данных 122 может быть разделена на одну или несколько отдельных баз данных (не изображены). Эти отдельные базы данных могут являться частями той же самой физической базы данных или могут быть реализованы как самостоятельные физические единицы. Например, одна база данных в, допустим, базе данных 122 может хранить инвертированный индекс, а другая база данных в базе данных 122 может хранить доступные ресурсы, а еще одна база данных в базе данных 122 может хранить характеристики поисковых историй, относящихся к конкретным поисковым запросам (т.е. поисковым сессиям в истории). Излишне упоминать, что вышеприведенный пример является только иллюстрацией, и возможны другие дополнительные возможности для реализации вариантов осуществления настоящего технического решения.

[52] Важно иметь в виду, что для упрощения нижеследующего описания конфигурация поискового кластера 118 и базы данных 122 была сильно упрощена. Считается, что специалисты в данной области техники смогут понять подробности реализации поискового кластера 118 и его компонентов и базы данных 122.

[53] В общем случае поисковый запрос 210 может быть рассмотрен как серии одного или нескольких поисковых терминов, а поисковые термины этих запросов могут быть представлены как Т1, Т2, … Tn. Таким образом поисковый запрос 210 может пониматься как запрос поисковому приложению 104 определить каждый документ в наборе данных (не изображен), сохраненный в базе данных 122, содержащей каждый поисковый тер