СИСТЕМА УПРАВЛЕНИЯ ИНДЕКСАЦИЕЙ ПАРТНЕРСКИХ ОБЪЯВЛЕНИЙ Российский патент 2017 года по МПК G06F17/00 

Описание патента на изобретение RU2609078C2

Область техники

Настоящая технология относится к области поисковых систем в общем смысле, и в частности - к системе и способу управления индексацией партнерских объявлений.

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

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

В определенных условиях, пользователь может быть заинтересован, например, в покупке б/у автомобиля. Данный пользователь может с этой целью получить доступ к Интернету для просмотра рекламных объявлений (называются также «реклама» и «предложения»), связанной с б/у автомобилями, выставленными на продажу. Для поиска подобной информации существует множество способов. Например, если пользователь находится в Нью-Йорке, он может получить доступ к поисковой системе и ввести запрос «продажа б/у автомобилей, Нью-Йорк». Другой пользователь может получить доступ к одной из множества доступных досок объявлений (например, "Craiglist" или "Kijiji") и просматривает соответствующие разделы досок объявлений. Еще какой-то пользователь может получить доступ к агрегатору рекламных каналов, агрегатор отвечает за агрегирования рекламных каналов из нескольких источников.

В патенте США 8447120 раскрыта технология, в которой система поиска изображений обновляется постепенно по мере того, как новые изображения становятся доступными. Обновление постепенно выполняется и инициируется в тех случаях, когда новые изображения являются достаточно большими или достаточно сильно отличаются от уже имеющихся изображений, используемых в поиске изображений. Происходит постепенное обновление листовых узлов словарного дерева на основе новых изображений. Частотная характеристика каждого листового узла оценивается с помощью верхних и/или нижних пороговых значений, для изменения узлов словарного дерева на основе частотной характеристики. После завершения постепенного обновления, сервер, который выполнял постепенное обновление, переключается в активное состояние для обработки клиентских запросов по поиску изображений, а другой сервер, который обрабатывал клиентские запросы, переключается в неактивное состояние, ожидая последующих дополнительных обновлений, до тех пор, пока не переключится обратно в активное состояние.

В патентной публикации США 2003/0101183 раскрыта возможность одновременного использования обратного индекса, применяемого для идентификации документов в ходе поиска информации, для индексации во время обновления обратного индекса при поступлении новых документов. Прерывание при использовании индекса сохраняется на приемлемом уровне путем разбиения индекса и обновления только одиночных секций индекса в данный момент времени, и далее - путем дальнейшего разделения индекса на высокоскоростную дополнительную часть, которая может быть скорректирована одновременно в режиме реального времени, и периодически объединяться с более крупной основной частью. Эти две структуры объединяются во время чтения после краткой блокировки с перемещением указателя.

Раскрытие технологии

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

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

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

В некоторых вариантах осуществления технологии способ дополнительно включает в себя подготовку обновленной части раздела для индексации, предшествующую обновлению поискового индекса. Эта подготовка может содержать один или несколько следующих этапов: (i) десериализацию; (ii) унификацию; (iii) проверку раздела на соответствие бизнес-логике; (iv) обработку изображений; (v) подсчет статической релевантности; (vi) кластеризацию рекламных объявлений; (vii) проверку объема кластера и (viii) сериализацию обработанных разделов.

В некоторых вариантах осуществления технологии сервер обновляет только ту часть раздела, которая связана с обновленным партнерским объявлением.

В некоторых вариантах осуществления технологии, в том случае, когда обновленное партнерское объявление свидетельствует о том, что первое ранее известное партнерское объявление или второе ранее известное партнерское объявление более не активно, способ включает в себя удаление соответствующего первого или второго ранее известного партнерского объявления. Если обновленное партнерское объявление свидетельствует о том, что новое партнерское объявление отличается от первого ранее известного партнерского объявления и второго ранее известного партнерского объявления, способ дополнительно включает в себя создание нового партнерского объявления в разделе, содержащем первое ранее известное партнерское объявление и второе ранее известное партнерское объявление. Если обновленное партнерское объявление свидетельствует о том, что первое ранее известное партнерское объявление или второе ранее известное партнерское объявление были изменены, способ дополнительно включает в себя обновление соответствующего первого или второго ранее известного партнерского объявления.

В некоторых вариантах осуществления технологии, обновленное партнерское объявление реализовано в виде XML-канала. Обновленное партнерское объявление, первое ранее известное партнерское объявление и второе ранее известное партнерское объявление могут представлять собой рекламные объявления.

В другом аспекте, варианты осуществления настоящей технологии предусматривают систему управления индексацией партнерских объявлений, система включает в себя устройство обработки объявлений. Устройство обработки объявлений выполнено с возможностью: получения обновленного партнерского объявления; определения раздела, связанного с обновленным партнерским объявлением, раздел включает в себя первое ранее известное партнерское объявление и второе ранее известное партнерское объявление, первое ранее известное партнерское объявление и второе ранее известное партнерское объявление сгруппированы в раздел на основе характеристики, являющейся общей для первого ранее известного партнерского объявления и второго ранее известного партнерского объявления; в ответ на индикацию того, что обновленное партнерское объявление отличается от первого ранее известного партнерского объявления и второго ранее известного партнерского объявления, обновление раздела на основе обновленного партнерского объявления.

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

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

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

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

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

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

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

Техническим результатом, на который направлено настоящее изобретение является увеличение скорости обновления индекса партнерских объявлений. Поскольку индексация каждого нового партнерского объявления не требует перестройки всего индекса, то оно попадает в индекс, а значит становится доступным для поиска гораздо быстрее, чем при использовании существующих методов индексации.

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

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

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

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

На Фиг. 1 изображена принципиальная схема системы 100, система 100 реализована в соответствии с вариантами осуществления настоящей технологии, не ограничивающими ее объем.

На Фиг. 2 схематически представлен контент первого партнерского сообщения, передающегося между компонентами системы 100, изображенной на Фиг. 1.

На Фиг. 3 схематически представлены данные, хранящиеся в постоянном хранилище 300, которое поддерживается в рамках базы данных партнерских объявлений 132, являющейся частью системы 100, изображенной на Фиг. 1.

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

На Фиг. 4 представлен не ограничивающий вариант осуществления постоянного хранилища 300', обновление которого осуществляется как часть выполнения этапа 406 способа 400, показанного на Фиг. 4.

Осуществление технологии

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

Система 100 включает в себя устройство 102 обработки объявлений. Устройство 102 обработки объявлений может быть выполнено в виде сервера (отдельно не пронумерован). В альтернативном варианте осуществления технологии устройство 102 обработки объявлений может быть выполнено в распределенном виде, в котором некоторые или все компоненты устройства 102 обработки объявлений, описанные ниже, будут реализованы на различных вычислительных машинах. Например, в варианте осуществления настоящей технологии, не ограничивающем ее объем, устройство 102 обработки объявлений может представлять собой сервер Dell™ PowerEdge™, на котором используется операционная система Microsoft™ Windows Server™. Излишне говорить, что устройство 102 обработки объявлений может представлять собой любое другое подходящее аппаратное и/или прикладное программное, и/или системное программное обеспечение или их комбинацию.

Устройство 102 обработки объявлений содержит кластер 103 индексации. Кластер 103 индексации включает в себя разделитель 104. В общем случае, разделитель 104 выполнен с возможностью заполнения базы данных обработанных партнерских объявлений (будет описана ниже), содержащей партнерские объявления, на получение обновленных партнерских объявлений, на инициацию индексации обновленных партнерских объявлений и т.д. С этой целью, разделитель 104 содержит или, как показано на Фиг. 1, имеет доступ к хранилищу 106 партнерских данных. Теперь следует отметить, что, несмотря на то, что в варианте осуществления настоящей технологии, не ограничивающего ее объем, изображенном на Фиг. 1, хранилище 106 партнерских данных представляет собой единое физическое хранилище, в других вариантах осуществления настоящей технологии, не ограничивающих ее объем, хранилище 106 партнерских данных может быть выполнено в распределенном виде. В качестве примера в других вариантах осуществления настоящей технологии, не ограничивающих ее объем, хранилище 106 партнерских данных может быть выполнено в виде множества устройств для хранения данных (не показаны), каждое из множества устройств для хранения данных может быть связано, например, с конкретным партнером и соответствующими партнерскими объявлениями или подгруппой партнеров и соответствующей подгруппой партнерских объявлений.

Также следует отметить, что термин «партнерский» в термине «хранилище партнерских данных» или «партнерское объявление» не подразумевает каких-либо особых отношений между источником данных в хранилище 106 партнерских данных и оператором, управляющим устройством 102 обработки объявлений. Например, в некоторых вариантах осуществления, не ограничивающих объем настоящей технологии, хранилище 106 партнерских данных может хранить данные от нескольких источников, каждый из которых не имеет никаких особых отношений с оператором, управляющим устройством 102 обработки объявлений. В этих примерах, каждый источник может загружать свои данные в хранилище 106 партнерских данных без вступления в какие-либо деловые отношения с оператором, управляющим устройством 102 обработки объявлений.

В других вариантах осуществления настоящей технологии, не ограничивающих ее объем, хранилище 106 партнерских данных может хранить данные от нескольких источников, причем каждый источник (или, по меньшей мере, некоторые из источников) находится в соглашении с оператором, управляющим устройством 102 обработки объявлений. То, как именно выглядит структура этого соглашения, никак конкретно не ограничено, и может включать в себя неоплачиваемую подписку на данные от источника, оплачиваемую подписку на данные от источника, подписку в обмен на предоставление рекламных баннеров или даже подписку «обратной оплаты», в рамках которой источник данных получает оплату за загрузку его данных на хранилище 106 партнерских данных.

Кроме того, в некоторых вариантах осуществления настоящей технологии, не ограничивающих ее объем, хранилище 106 партнерских данных может принадлежать и/или управляться и/или контролироваться тем же лицом, что и оператор, управляющий устройством 102 обработки объявлений. В других вариантах осуществления настоящей технологии, не ограничивающих ее объем, хранилище 106 партнерских данных может принадлежать и/или управляться и/или контролироваться лицом, отличным от того, которое контролирует оператора устройства 102 обработки объявлений. В этих примерах, хранилище 106 партнерских данных может принадлежать и/или управляться и/или контролироваться одним из лиц, загружающих данные на устройство 102 обработки объявлений (которое будет выступать в качестве агрегатора объявлений от различных источников), либо же третьей стороной, которая будет выступать в качестве агрегатора данных от различных источников.

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

Также на Фиг. 1 изображен первый партнер 108, второй партнер 110 и третий партнер 112, все они хотят предоставить партнерские объявления, содержащие рекламные объявления о продаже б/у автомобилей. Следует отметить, что число партнеров, потенциально присутствующих в системе 100, никак конкретно не ограничено. В вышеупомянутом примере предполагается, что каждый из партнеров - первый партнер 108, второй партнер 110 и третий партнер 112 - хочет загрузить свои соответствующие рекламные объявления, связанные с продажей б/у автомобилей, в хранилище 106 партнерских данных.

В некоторых вариантах осуществления настоящей технологии, не ограничивающих ее объем, каждый из партнеров - первый партнер 108, второй партнер 110 и третий партнер 112 - выполнен с возможностью передачи хранилищу 106 партнерских данных соответствующего объявления, содержащего подробности рекламного объявления, причем соответствующее объявление представляет собой первое партнерское объявление 118, второе партнерское объявление 120 и третье партнерское объявление 122. В некоторых вариантах осуществления настоящей технологии, не ограничивающих ее объем, каждое партнерское объявление - первое партнерское объявление 118, второе партнерское объявление 120 и третье партнерское объявление 122 - может быть реализовано на расширяемом языке разметки (XML). В других вариантах осуществления настоящей технологии, не ограничивающих ее объем, каждое партнерское объявление - первое партнерское объявление 118, второе партнерское объявление 120 и третье партнерское объявление 122 - может быть реализовано в любом другом подходящем коммерчески доступном или собственном формате.

Контент каждого партнерского объявления - первого партнерского объявления 118, второго партнерского объявления 120 и третьего партнерского объявления 122 - никак конкретно не ограничен и, естественно, будет зависеть от типа информации, содержащейся в хранилище 106 партнерских данных. Пример контента первого партнерского объявления 118, второго партнерского объявления 120 и третьего партнерского объявления 122 будет приведен со ссылкой на Фиг. 2, на которой изображен контент первого партнерского объявления 118 (только для иллюстрации). Следует отметить, что остальные - второе партнерское объявление 120 и третье партнерское объявление 122 - могут быть выполнены по существу аналогичным (но не обязательно идентичным) образом.

Первое партнерское объявление 118 включает в себя индикатор 202 источника, который обычно указывает на имя источника, отправляющего первое партнерское объявление 118. В этом примере, индикатор 202 источника указывает на первого партнера 108, являющегося источником первого партнерского объявления 118. В некоторых вариантах осуществления настоящей технологии, не ограничивающих ее объем, индикатор 202 источника может содержать уникальный идентификатор, связанный с источником партнерского объявления, название компании источника партнерского объявления или Единый Указатель Ресурсов (URL), связанный с расположением конкретного рекламного объявления на конкретном партнерском веб-сайте, с которым связано первое партнерское объявление 118.

Первое партнерское объявление 118 дополнительно включает в себя первую рекламную часть 204, вторую рекламную часть 206, третью рекламную часть 208 и N-ную рекламную часть 210. Естественно, число рекламных частей 204, 206, 208, 210, содержащихся в первом партнерском объявлении 118, не ограничивается представленными здесь. Таким образом, можно предположить, что данное первое партнерское объявление 118 может включать в себя один экземпляр первой рекламной части 204 - посвященный, соответственно, только одному рекламному объявлению. С другой стороны, данное первое партнерское объявление 118 может включать в себя множество N рекламных частей 210, каждая из которых представляет соответствующее рекламное объявление. Поэтому можно говорить, что данное первое партнерское объявление 118 может представлять собой одно рекламное объявление или несколько рекламных объявлений.

Контент каждой из рекламных частей - первой рекламной части 204, второй рекламной части 206, третьей рекламной части 208 и N-ной рекламной части 210 - будет зависеть, конечно, от природы рекламного объявления. Возвращаясь к используемому примеру, рекламное объявление о продаже б/у автомобилей, каждая из рекламных частей - первая рекламная часть 204, вторая рекламная часть 206, третья рекламная часть 208 и N-ная рекламная часть 210 - будет включать в себя некоторые или все следующие аспекты: (i) год выпуска автомобиля; (ii) марку автомобиля; (iii) модель автомобиля; (iv) цену; (v) изображение или изображения автомобиля; (vi) дополнительную информацию об автомобиле.

Следует отметить, что в рамках вариантов осуществления технологии, представленных выше, первое партнерское объявление 118 связано с одним поставщиком объявлений (например, первым партнером 108). Естественно, возможно, что данное партнерское объявление 118, в других вариантах осуществления настоящей технологии, не ограничивающих ее объем, фактически может быть связано с объявлениями от нескольких партнеров. Таким образом, возможно, что данное первое партнерское объявление 118 будет включать в себя несколько индикаторов 202 источника. Например, каждый индикатор 202 источника может быть связан с соответствующей рекламной частью - первой рекламной частью 204, второй рекламной частью 206, третьей рекламной частью 208 и N-ной рекламной частью 210. Даже если первое партнерское объявление 118 связано с одним поставщиком объявлений, оно, тем не менее, может содержать несколько индикаторов 202 источника, каждый индикатор 202 источника связан с соответствующей рекламной частью - первой рекламной частью 204, второй рекламной частью 206, третьей рекламной частью 208 и N-ной рекламной частью 210.

Кластер 103 индексации, изображенный на Фиг. 1, дополнительно включает базу 132 данных обработанных партнерских объявлений. База 132 данных обработанных партнерских объявлений получает обработанные партнерские объявления от разделителя 104 и хранит их, как будет более подробно описано ниже. Кластер 103 индексации дополнительно включает индексатор 134. В общем случае, задачей индексатора 143 является создание индексов на основе обработанных партнерских объявлений, хранящихся в базе данных обработанных партнерских объявлений 132, и обновление индексов на основе обновлений объявлений, полученных от хранилища 106 партнерских данных.

Даже если индексатор 134 изображен как одна физическая единица, в других вариантах осуществления настоящей технологии, не ограничивающих ее объем, индексатор 134 может быть реализован в распределенном виде. В этих вариантах осуществления настоящей технологии, не ограничивающих ее объем, когда индексатор 134 реализован в распределенном виде, передача информации между разделителем 104 и одним из множества индексаторов 132 может быть реализована путем распределения нагрузки. Другими словами, разделитель 134 может выбирать один из множества доступных индексаторов 132 на основе того, например, насколько загружен данный индексатор из множества индексаторов 132 по сравнению с другими из множества доступных индексаторов 132.

Далее будет описана функция разделителя 104 в контексте того, как разделитель 104 обрабатывает новые партнерские объявления. Тем не менее, некоторые из описанных процессов, применяемых к новым партнерским объявлениям, могут быть с соответствующими изменениями применены к получению и обработке обновленных партнерских объявлений (будет описано ниже). Разделитель 104 получает объявление из хранилища 106 партнерских данных (объявление было загружено в хранилище 106 партнерских данных одним или несколькими партнерами - первым партнером 108, вторым партнером 110 или третьим партнером 112). Следует отметить, что в некоторых вариантах осуществления настоящей технологии, не ограничивающих ее объем, новое (или обновленное) партнерское объявление, полученное из хранилища 106 партнерских данных может отражать информацию от одного из партнеров - первого партнера 108, второго партнера 110 и третьего партнера 112. В других вариантах осуществления настоящей технологии, не ограничивающих ее объем, новое (или обновленное) партнерское объявление, полученное из хранилища 106 партнерских данных может отражать информацию от нескольких партнеров - первого партнера 108, второго партнера 110 и третьего партнера 112.

В некоторых вариантах осуществления настоящей технологии, не ограничивающих ее объем, разделитель 104 получает доступ к хранилищу 106 партнерских данных для получения объявления. Получение доступа может осуществляться на периодической или случайной основе, например, каждые 15 минут, каждый час, каждый день, каждую неделю, каждый понедельник, вторник, пятницу данной недели или в любой комбинации из вышеприведенных вариантов. Эти варианты осуществления можно рассматривать как «pull» технологию. В других вариантах осуществления настоящей технологии, не ограничивающих ее объем, хранилище 106 партнерских данных может передавать объявление разделителю 104. Передача также может осуществляться на периодической или случайной основе, например, каждые 15 минут, каждый час, каждый день, каждую неделю, каждый понедельник, вторник, пятницу данной недели или в любой комбинации из вышеприведенных вариантов. Эти варианты осуществления можно рассматривать как «push» технологию. Естественно, комбинация обоих подходов также может быть использована.

Как только разделитель 104 получает объявление, разделитель 104 разбирает полученное объявление на множество рекламных объявлений, потенциально содержащихся в нем. В данном примере рассматривается первое партнерское объявление 118 (Фиг. 2), разделитель 104 извлекает индикатор 202 и затем разбирает первое партнерское объявление 118 на первое рекламное объявление, содержащее первую рекламную часть 204, второе рекламное объявление, содержащее вторую рекламную часть 206, третье рекламное объявление, содержащее третью рекламную часть 208; и N-ное рекламное объявление, содержащее N-ную рекламную часть 210.

Разделитель 104 затем выполняет функцию унификации каждого из сгенерированных подобным образом рекламных объявлений. Более конкретно, функцией разделителя 104 является проверка того, чтобы каждое из рекламных объявлений содержало ключевые поля, сформированные одним и тем же образом. Функция унификации может быть особенно полезной в том случае, если формат предоставления партнерских объявлений никак заранее не был определен. Естественно, в тех случаях, когда формат предоставления партнерских объявлений был заранее определен, функция унификации может не выполняться.

Для целей данного примера, представленных ниже, ключевыми полями являются «марка», «модель» и «год», связанные с продажей б/у автомобилей. Естественно, в тех вариантах осуществления настоящей технологии, где предметом рекламных объявлений является объект другого типа, ключевые поля будут выглядеть иначе. Также следует отметить, что число ключевых полей не ограничено. В общем случае, число и содержимое ключевых полей может быть выбрано таким образом, что ключевые поля идентифицируют предмет рекламного объявления, и позволяют их разделить, как будет описано ниже.

На основе ключевых полей для каждого данного рекламного объявления, разделитель 104 определяет раздел, к которому следует отнести данное рекламное объявление (или, в общем, партнерское объявление). В общем случае, «раздел» представляет собой набор рекламных объявлений, сгруппированных в соответствии с характеристиками, связанными с ними. В этом примере, характеристикой может являться совокупность года, марки и модели данного продающегося б/у автомобиля. Разделитель 104 затем создает разделы (т.е. группы рекламных объявлений на основе выбранных характеристик ключевых полей) и сохраняет их в базе 132 данных обработанных партнерских объявлений. Следует отметить, что выбор года, марки и модели данного автомобиля был использован только в качестве примера. Важно иметь в виду, что любое число ключевых полей может быть использовано в качестве характеристики для группировки рекламных объявлений по разделам.

На Фиг. 3 изображен пример постоянного хранилища 300, расположенного в пределах базы 132 данных обработанных партнерских объявлений. В рамках этого примера, постоянное хранилище 300 содержит три раздела: первый раздел 302, второй раздел 304 и третий раздел 306, число разделов (три) выбрано произвольно только в качестве примера.

Для иллюстрационных целей предполагается, что первый раздел 302 был создан на основе следующих характеристик: "<Год><2011>", "<Марка><Ford>", "<Модель><Escort>". Второй раздел был создан на основе следующих характеристик: "<Год><2009>", "<Марка><BMW>", "<Модель><325>". Третий раздел был создан на основе следующих характеристик: "<Год><2010>", "<Марка><Mazda>", "<Модель><3>".

Соответственно на основе вышеприведенных характеристик, следующие партнерские объявления были сгруппированы в соответствующие разделы. Первый раздел 302 содержит "<партнер 1><предложение 1>", что соответствует первому предложению от первого партнера 108, "<партнер 2><предложение 2>", что соответствует второму предложению от второго партнера 110, и "<партнер 3><предложение 1>", что соответствует третьему предложению от третьего партнера 112.

Второй раздел 304 содержит "<партнер 2><предложение 2>", что соответствует второму предложению от второго партнера 110, и "<партнер 3><предложение 2>", что соответствует третьему предложению от третьего партнера 112.

Наконец, третий раздел содержит "<партнер 1><предложение 3>", что соответствует первому предложению от первого партнера 108, и "<партнер 3><предложение 3>", что соответствует третьему предложению от третьего партнера 112.

Возвращаясь к описанию Фиг. 1, когда разделитель 104 заполнил постоянное хранилище 300, расположенное в пределах базы 132 данных обработанных партнерских объявлений, он передает первый раздел 302, второй раздел 304 и третий раздел 306 индексатору 134.

В общем случае, задачей индексатора 134 является индексация разделов (например, первого раздела 302, второго раздела 304 и третьего раздела 306) для создания постоянного индекса, который может быть использован для поиска рекламных объявлений. В некоторых вариантах осуществления настоящей технологии, не ограничивающих ее объем, индексатор 134 выполнен с возможностью индексацией разделов независимо друг от друга. В других вариантах осуществления настоящей технологии, не ограничивающих ее объем, индексатор 134 выполнен с возможностью параллельной индексации разделов. В других вариантах осуществления настоящей технологии, не ограничивающих ее объем, индексатор 134 выполнен с возможностью индексации по меньшей мере некоторых разделов параллельно и независимо друг от друга.

Более конкретно, индексатор 134 получает от разделителя 104 данные от постоянного хранилища 300, а точнее - данные от первого раздела 302, второго раздела 304 и третьего раздела 306 (эти данные могут рассматриваться как «обработанные партнерские объявления»).

Индексатор 134 может затем выполнять одну или несколько следующих операций. В некоторых вариантах осуществления настоящей технологии, не ограничивающих ее объем, индексатор 134 подготавливает данные к индексации. Фактически индексатор 134 может выполнять одну или несколько следующих функций: (i) десериализацию; (ii) унификацию; (iii) проверку раздела на соответствие бизнес-логике; (iv) обработку изображений; (v) подсчет статической релевантности; (vi) кластеризацию рекламных объявлений; (vii) проверку объема кластера и (viii) сериализацию обработанных разделов.

Далее некоторые из этих функций будут описаны более подробно.

Индексатор 134 может выполнять процесс десериализации, сначала конвертируя полученные партнерские объявления из компактного формата, подходящего для передачи по сети, в формат более подходящий для использования, как будет более подробно описано ниже. В некоторых вариантах осуществления технологии функция десериализации может быть выполнена разделителем 104 после получения партнерского объявления. Индексатор 134 может дополнительно отдельно выполнять функцию сериализации.

Индексатор 134 может выполнять функцию унификации путем перевода ключевых полей каждого из партнерских полей в унифицированный формат. В рамках представленных здесь вариантов осуществления технологии индексатор 134 получает гарантии в том, что все поля - марка, модель, года - будут записаны в одном формате. С этой целью индексатор 134 может получить доступ к тезаурусу или другим базам данных синонимов. Те партнерские объявления, которые в виде части ключевых полей содержат слова, которые не могут быть унифицированы, могут быть просто проигнорированы индексатором 134. В некоторых вариантах осуществления технологии, функция унификации может быть выполнена разделителем 104 после получения партнерского объявления. Индексатор 134 может дополнительно отдельно выполнять функцию унификации.

Индексатор 134 выполняет функцию проверки, точнее проверку раздела на соответствие бизнес-логике. В некоторых вариантах осуществления настоящей технологии, не ограничивающих ее объем, индексатор 134 нацелен на определение того, не является ли какое-либо из рекламных объявлений, содержащихся в первом разделе 302, втором разделе 304 и третьем разделе 306, несуществующим, мошенническим или по каким-либо иным причинам не должно быть отображено пользователям, выполняющим этот поиск.

Индексатор 134 может выполнять обработку изображений, содержащихся в данных, хранящихся в постоянном хранилище 300. В некоторых вариантах осуществления настоящей технологии, не ограничивающих ее объем, индексатор 134 обрабатывает изображения путем изменения их размера - например, создавая изображения меньшего разрешения и/или меньшего размера. Индексатор 134 может выполнять изменение размера с помощью доступа к модулю изменения размера изображений 136. Изображения с измененным размером могут храниться в кэше 138 изображений с измененным размером.

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

Кроме того, индексатор 134 может выполнять кластеризацию данных, содержащихся в постоянном хранилище 300. В некоторых вариантах осуществления настоящей технологии, не ограничивающих ее объем, в качестве этапа выполнения функции кластеризации, индексатор 134 анализирует данные, хранящиеся в постоянном хранилище 300 для того, чтоб проверить их на наличие дубликатов. В общем случае, дубликаты могут появляться в тех случаях, когда одно и то же рекламное объявление было передано дважды (или несколько раз), что может происходить время от времени, когда агрегатор повторно отправляет оригинал рекламного объявления от одного из партнеров - первого партнера 108, второго партнера 110 и третьего партнера 112. Естественно, дубликаты могут возникать и по другим причинам. Если какие-то дубликаты обнаруживаются на этапе выполнения функции кластеризации, индексатор 134 может инициировать удаление дубликатов из базы 132 данных обработанных партнерских объявлений.

Индексатор 134 может дополнительно выполнять проверку объема кластера, определяя, не превышает ли размер данного раздела средний размер предыдущих разделов. Наконец, индексатор 134 может осуществлять сериализацию обработанных разделов в формат, подходящий для хранения и/или передачи.

После того, как индексатор 134 закончил обработку данных, хранящихся в постоянном хранилище 300, он передает их поисковой машине 140 и, точнее, устройству 142 приема индекса поисковой машины 140. Устройство 142 приема индексов отвечает за получение обработанных разделов от индексатора 134 и создание постоянных индексов для возможности проведения поиска. В некоторых вариантах осуществления настоящей технологии, не ограничивающих ее объем, устройство 142 приема индексов сначала преобразует полученные разделы в формат поисковых индексов, который может представлять собой, например, формат библиотеки Lucent или любой другой коммерчески доступный или собственный формат.

После преобразования, устройство 142 приема индексов создает поисковые индексы для разделов в хранилище 144 индексов. Поисковые индексы в хранилище 144 индексов доступны поисковому устройству 146 при выполнении поиска по запросу от внешнего устройства 150. Не несущий ограничений пример индекса, содержащегося в хранилище 144 индексов, может выглядеть следующим образом:

Также на Фиг. 1 изображено устройство 152 вспомогательной информации. Устройство 152 вспомогательной информации отвечает за получение, хранение и управление дополнительной информацией, необходимой для управления процессами в устройстве 102 обработки объявлений. Примеры информации, которая может быть получена, сохранена на и управляться устройством 152 вспомогательной информации, включают в себя (в частности): каталоги различных автомобилей, словари для перевода и унификации названий, курсы валют, региональные ценовые категории и т.п. Естественно, в других вариантах осуществления настоящей технологии, не ограничивающих ее объем, когда партнерское объявление не связано с продажей б/у автомобилей, устройство 152 вспомогательной информации может быть выполнен с возможностью получения, хранения и управления информацией другого рода.

С учетом данной архитектуры системы 100, изображенной на Фиг. 1, возможно выполнение способа управления индексацией партнерских объявлений. На Фиг. 4 изображена схематическая блок-схема этапов способа 400, способ 400 реализуется в соответствии с вариантами осуществления настоящей технологии, не ограничивающими ее объем. Выполнение способа может быть осуществлено на устройстве 102 обработки объявлений. В этом случае, устройство 102 обработки объявлений включает в себя используемый компьютером носитель информации, который содержит машиночитаемые инструкции, при выполнении которых, инициируют выполнение устройством 102 обработки объявлений этапов способа 400.

Для представленных ниже целей предполагается, что постоянное хранилище 300 содержит первый раздел 302, второй раздел 304 и третий раздел 306, как показано на Фиг. 3.

Этап 402 - получение обновленного партнерского объявления

Способ 400 начинается с этапа 402, на котором разделитель 104 получает обновленное партнерское объявление. В некоторых вариантах осуществления настоящей технологии, не ограничивающих ее объем, этап 402 может быть выполнен с помощью разделителя 104, получающего доступ к хранилищу 106 партнерских данных для получения обновленного партнерского объявления. Получение доступа может осуществляться на периодической или случайной основе, например, каждые 15 минут, каждый час, каждый день, каждую неделю, каждый понедельник, вторник, пятницу данной недели или в любой комбинации из вышеприведенных вариантов. Эти варианты осуществления технологии можно рассматривать как «pull технологию». В других вариантах осуществления настоящей технологии, не ограничивающих ее объем, хранилище 106 партнерских данных может передавать объявление разделителю 104. Передача также может осуществляться на периодической или случайной основе, например, каждые 15 минут, каждый час, каждый день, каждую неделю, каждый понедельник, вторник, пятницу данной недели или в любой комбинации из вышеприведенных вариантов. Эти варианты осуществления технологии можно рассматривать как «push технологию». Естественно, комбинация обоих подходов также может быть использована.

В рамках настоящего описания под термином «обновленное партнерское объявление» подразумеваются партнерское объявление, которое потенциально имеет обновленную информацию, относящуюся к различным рекламным объявлениям, содержащимся в постоянном хранилище 300. Обновленная информация может принимать форму новых рекламных объявлений. Обновленная информация также может приниматься фору удаленных рекламных объявлений - другими словами, тех рекламных объявлений, которые более недоступны. Наконец, обновленная информация может принимать форму изменений для существующих рекламных объявлений (таких, например, как изменение цены продажи, обновленные изображения и т.п.). Следует также отметить, что обновленное партнерское объявление может быть связано с одним из партнеров - первым партнером 108, вторым партнером 110 или третьим партнером 112. В другом случае, обновленное партнерское объявление может быть связано (и, таким образом, содержать обновления) с более чем одним из партнеров - первым партнером 108, вторым партнером 110 или третьим партнером 112.

Затем происходит переход к выполнению этапа 404 в рамках осуществления способа 400.

Этап 404 - определение раздела, связанного с обновленным партнерским объявлением, и включающего в себя первое ранее известное партнерское объявление и второе ранее известное партнерское объявление, причем первое ранее известное партнерское объявление и второе ранее известное партнерское объявление сгруппированы в раздел на основе характеристики, являющейся общей для первого ранее известного партнерского объявления и второго ранее известного партнерского объявления.

Способ 400 затем, на этапе 404, определяет раздел, связанный с обновленным партнерским объявлением, раздел включает в себя первое ранее известное партнерское объявление и второе ранее известное партнерское объявление, первое ранее известное партнерское объявление и второе ранее известное партнерское объявление сгруппированы в раздел на основе характеристики, являющейся общей для первого ранее известного партнерского объявления и второго ранее известного партнерского объявления. В проиллюстрированном варианте осуществления постоянного хранилища, изображенного на Фиг. 3, один из разделов - первый раздел 302, второй раздел 304 и третий раздел 306 - будет использован для определения того, к какому из разделов принадлежит обновленное партнерское объявление. Содержащиеся там записи будут являться примерами первого ранее известного партнерского объявления и второго ранее известного партнерского объявления.

Для того, чтобы определить раздел, разделитель 104 сначала разбирает полученное обновленное партнерское объявление, аналогично тому, как это было описано ранее по отношению к новому партнерскому объявлению. Таким образом, разделитель 104 получает различные рекламные объявления, содержащиеся в обновленном партнерском объявлении. Разделитель 104 затем унифицирует ключевые поля, как было описано выше.

На основе унифицированных таким образом ключевых полей, разделитель 104 определяет один или несколько разделов, связанных с контентом обновленного партнерского объявления. Теперь следует вспомнить о том, что различные разделы, представленные в постоянном хранилище 300, обладают множеством уже хранящихся там партнерских объявлений (т.е. первым ранее известным партнерским объявлением и вторым ранее известным партнерским объявлением), множество партнерских объявлений было сгруппировано в соответствии с характеристикой, как было ранее описано в виде части работы разделителя 104.

Это означает, что данный раздел - первый раздел 302, второй раздел 304 или третий раздел 306 - может содержать:

(a) первое ранее известное партнерское объявление и второе ранее известное партнерское объявление, причем обновленное партнерское объявление может отличаться от первого ранее известного партнерского объявления и второго ранее известного партнерского объявления, таким образом, свидетельствуя о наличие нового рекламного объявления, которое следует добавить в данный раздел;

(b) первое ранее известное партнерское объявление и второе ранее известное партнерское объявление, причем одно из ранее известных партнерских объявлений - первое или второе - по существу аналогично обновленному партнерскому объявлению с некоторыми изменениями, свидетельствуя о том, что одно из ранее известных партнерских объявлений - первое или второе - требует обновления на основе обновленного партнерского объявления;

(c) первое ранее известное партнерское объявление и второе ранее известное партнерское объявление, причем одно из ранее известных партнерских объявлений - первое или второе - совпадает с обновленным партнерским объявлением, поскольку обновленное партнерское объявление содержит то же рекламное объявление, никакие изменения не будут внесены в первое ранее известное партнерское объявление и второе ранее известное партнерское объявление.

С другой стороны обновленное партнерское объявление может свидетельствовать о том, что рекламное объявление, которое содержалось в ранее известной версии партнерского объявления, может быть удалено (например, б/у автомобиль был продан или его владелец передумал продавать автомобиль). Например, обновленное партнерское объявление может не обладать частью, соответствующей одному из первого ранее известного партнерского объявления и второго ранее известного партнерского объявления, таким образом указывая на то, что соответствующее объявление из первого ранее известного партнерского объявления и второго ранее известного партнерского объявления было удалено. Обновленное партнерское объявление, таким образом, может содержать указание на тот факт, что одно или несколько из первого ранее известного партнерского объявления и второго ранее известного партнерского объявления следует удалить.

Затем происходит переход к выполнению этапа 406 в рамках осуществления способа 400.

Этап 406 - в ответ на индикацию того, что обновленное партнерское объявление отличается от первого ранее известного партнерского объявления и второго ранее известного партнерского объявления, обновление раздела на основе обновленного партнерского объявления

Далее, на этапе 406, в ответ на индикацию того, что обновленное партнерское объявление отличается от первого ранее известного партнерского объявления и второго ранее известного партнерского объявления, разделитель 104 обновляет раздел на основе обновленного партнерского объявления. При выполнении этапа 406 возможны различные сценарии.

В том случае, когда обновленное партнерское объявление свидетельствует о том, что рекламное объявление, содержащееся в ранее известной версии партнерского объявления, было удалено, разделитель 104 удаляет запись в постоянном хранилище 300, причем запись была связана с ранее известной версией партнерского объявления.

В том случае, когда обновленное партнерское объявление свидетельствует о том, что рекламное объявление, содержащееся в ранее известной версии партнерского объявления было изменено, разделитель 104 обновляет запись в постоянном хранилище 300, запись была связана с ранее известной версией партнерского объявления.

В том случае, когда обновленное партнерское объявление свидетельствует о наличии нового рекламного объявления, которое следует добавить в конкретный раздел, разделитель 104 создает новую запись в данном разделе, причем новая запись соответствует обновленному партнерскому объявлению.

Исключительно в качестве примера, предполагается, что обновленное партнерское объявление содержит следующие указания. Обновленное партнерское объявление указывает на тот факт, что<Партнер 1><Предложение 2>было удалено, и что есть новое предложение от третьего партнера 112, точнее <Партнер 3><Предложение 4>. Поэтому разделитель 104 определяет, что первый раздел 302 необходимо обновить (точнее, удалить <Партнер 1><Предложение 2>).

Разделитель 104 дополнительно анализирует контент<Партнер 1><Предложение 4>, точнее его ключевые поля (которые в данном примере представляют собой год, марку и модель б/у автомобиля, выставленного на продажу). На основе этого анализа, предполагается, что раздел 104 определил, что <Партнер 1><Предложение 4> относится к третьему разделу 306. Таким образом, разделитель 104 определяет, что третий раздел 306 необходимо обновить и создать новую запись для <Партнер 1><Предложение 4>.

Разделитель 104 затем обновляет только те разделы, которые необходимо обновить, точнее, в данном случае, первый раздел 302 и третий раздел 306. Для того, чтобы определить конкретный раздел, который необходимо обновить, разделитель 104 может выполнить, в качестве примера, следующую функцию:

Получившееся обновление постоянного хранилища 300' представлено на Фиг. 5. На Фиг. 5 изображен не ограничивающий вариант осуществления постоянного хранилища 300', причем постоянное хранилище 300' было обновлено в ходе выполнения этапа 406 способа 400. Постоянное хранилище 300' включает в себя первый раздел 302' (который представляет собой обновленную версию первого раздела 302), второй раздел 304 (который не был обновлен относительно того, как он был изображен на Фиг. 3) и третий раздел 306' (который представляет собой обновленную версию третьего раздела 306).

Первый раздел 302' был обновлен так, чтобы удалить указание <Партнер 1><Предложение 2>, а третий раздел 306' был обновлен так, чтобы включать в себя новое рекламное объявление для <Партнер 1><Предложение 4>. Следует отметить, что второй раздел 304 не был обновлен - поскольку обновленное партнерское объявление не указывало ни на какие изменения, которые следовало бы внести во второй раздел 304.

Поэтому можно говорить о том, что в некоторых вариантах осуществления настоящей технологии, не ограничивающих ее объем, в ходе выполнения этапа 406, разделитель 104 получает доступ только к тем из разделов - первого раздела 302, второго раздела 304 и третьего раздела 306 - которые необходимо обновить на основе сравнения, сделанного на этапе 304.

Разделитель 104 затем передает обновленные разделы индексатору 134. В некоторых вариантах осуществления настоящей технологии, не ограничивающих ее объем, индексатор 134 может выполнять одну или несколько из следующих функций: (i) десериализацию; (ii) унификацию; (iii) проверку раздела на соответствие бизнес-логике; (iv) обработку изображений; (v) подсчет статической релевантности; (vi) кластеризацию рекламных объявлений; (vii) проверку объема кластера и (viii) сериализацию обработанных разделов.

Индексатор 134 затем реализует способ выполнения постепенной индексации. В общем случае, при выполнении постепенной индексации, индексатор 134 инициирует обновление только тех индексов, которые были связанны с обновленными разделами. Другими словами, вместо переиндексации всего постоянного индекса 300', индексатор 134 инициирует обновление только тех индексов, которые связаны с первым разделом 302' и третьим разделом 306'.

Аналогично тому, как это был описано выше, индексатор 134 передает обновленные разделы - первый раздел 302' и третий раздел 306' - устройству 142 приема индексов. После того как индексатор 134 завершил обработку данных, хранящихся в постоянном хранилище 300, он передает их поисковой машине 140 и, точнее, устройству 142 приема индексов поисковой машины 140. Устройство 142 приема индексов обрабатывает полученные обновленные разделы и определяет то, какие из постоянных индексов, хранящихся в хранилище 144 индексов, необходимо обновить. Устройство 142 приема индексов далее преобразует полученные обновленные разделы в формат поисковых индексов. Далее, после преобразования, устройство 142 приема индексов получает доступ к поисковому индексу обновленных разделов в хранилище 144 индексов и обновляет части поискового индекса, связанного с обновленными разделами.

Аналогично разделителю 104, который обновляет только те разделы, которые необходимо обновить, устройство 142 приема индексов также обновляет только те части поискового индекса, которые необходимо обновить (в соответствии с изменениями в обновленных разделах). Можно сказать, что в некоторых вариантах осуществления настоящей технологии, не ограничивающих ее объем, может проявляться технический эффект, связанный с возможностью управления возрастающим числом рекламных объявлений, содержащихся в возрастающем числе партнерских объявлений (считается, что их число возрастает на 30-50 процентов ежегодно). В дополнительных или альтернативных вариантах осуществления технологии другой технический эффект может быть связан с возможностью индексировать обновленные объявления достаточно быстро, благодаря, по меньшей мере частично, тому факту, что обновляются только те разделы, которые необходимо обновить, и тому, что только те части постоянного индекса, которые связаны с обновленными объявлениями, переиндексируются.

В некоторых вариантах осуществления настоящей технологии, не ограничивающих ее объем, число индексаторов 134 может быть увеличено. Это особенно удобно применяется в тех случаях, когда число партнерских объявлений, которые необходимо обработать (т.е. разобрать и затем индексировать) велико. Как уже упоминалось, в этих вариантах осуществления, разделитель 104 может распределять нагрузку, причем его индексатор 134 отвечает за подготовку обновленных партнерских объявлений для индексации. В некоторых вариантах осуществления настоящей технологии, не ограничивающих ее объем, при росте числа обновленных партнерских объявлений разделитель 104 может создавать дополнительные разделы, т.е. отличные от первого раздела 202, второго раздела 204 и третьего раздела 206. Например, в некоторых вариантах осуществления настоящей технологии может быть принято решение о том, что каждый из разделов - первый раздел 202, второй раздел 204 и третий раздел 206 - не должен превышать десяти или двадцати рекламных объявлений (или любого другого их количества, по выбору оператора устройства 102 индексации объявлений). Следует отметить, что технический эффект, проявляющийся при ограничении числа записей в каждом разделе, может заключаться в увеличении скорости индексации (или переиндексации).

Предполагается, что специалисты в данной области техники, обладающие данным описанием, могут легко реализовать варианты осуществления настоящей технологии, не ограничивающие ее объем. Тем не менее, для иллюстрационных целей будут представлены некоторые конкретные детали осуществления примеров.

В некоторых вариантах осуществления настоящей технологии, не ограничивающих ее объем, части устройства 102 обработки объявлений выполнены на языках программирования Scala и Java. Некоторые из процессов, выполняемых в рамках устройства 102 обработки объявлений, выполнены на платформе Spring. Процессы индексации могут быть реализованы с помощью Throughput GC. Мониторинг и общее управление процессами в рамках устройства 102 обработки объявлений могут быть реализованы с использованием таких компонентов как Akka, Jetty, Apache HTTP-клиент и т.п.

В некоторых вариантах осуществления настоящей технологии, не ограничивающих ее объем, разделитель 104 и индексатор 134 могут взаимодействовать через Akka-протокол, используя akka-удаленный модуль протокола. Индексатор 134, устройство 142 приема индексов и устройство 152 вспомогательной информации могут связываться с помощью ZeroMQ Publish-Subscribe (через TCP). Некоторые или все данные, хранящиеся в различных базах данных, могут быть сериализованы с помощью Protocol Buffers.

Естественно, любой другой подходящий протокол, языки программирования, реализации стека, аппаратное обеспечение, прикладное программное и/или системное программное обеспечение могут быть использованы для реализации вариантов осуществления настоящей технологии. Кроме того, следует иметь в виду, что, несмотря на то, что некоторые компоненты устройства 102 обработки объявлений изображены как раздельные физические единицы, другие варианты осуществления настоящей технологии, не ограничивающие ее объем, функциональность некоторых или всех из этих компонентов устройства 102 обработки объявлений может быть объединена. Например, функциональность разделителя 104 и индексатора 134 может быть объединена и расположена на одно устройстве.

Важно иметь в виду, что не все упомянутые здесь технические результаты могут проявляться в каждом из вариантов осуществления настоящей технологии. Например, варианты осуществления настоящей технологии могут быть реализованы без проявления пользователю некоторых из представленных технических результатов, одновременно с тем, другие варианты осуществления могут быть реализованы с проявлениями пользователю других или вовсе никаких технических результатов.

Модификации и усовершенствования вышеописанных вариантов осуществления настоящей технологии могут быть очевидны для специалистов в данной области техники. Приведенное выше описание дано в качестве примеров, а не для установления ограничений. Объем данной технологии, таким образом, может быть ограничен только объемом прилагаемой формулы изобретения.

Похожие патенты RU2609078C2

название год авторы номер документа
СПОСОБ ФОРМИРОВАНИЯ ИЕРАРХИЧЕСКОЙ СТРУКТУРЫ ДАННЫХ, СПОСОБ ПОИСКА ДАННЫХ С ПОМОЩЬЮ ИЕРАРХИЧЕСКОЙ СТРУКТУРЫ ДАННЫХ, СЕРВЕР И ПОСТОЯННЫЙ МАШИНОЧИТАЕМЫЙ НОСИТЕЛЬ 2014
  • Налчаджи Леонид Леонидович
RU2632414C2
СПОСОБ И СИСТЕМА ДЛЯ ОБНОВЛЕНИЯ БАЗЫ ДАННЫХ ПОИСКОВОГО ИНДЕКСА 2018
  • Шлюнкин Алексей Валерьевич
  • Фокин Александр Павлович
  • Попов Петр Сергеевич
RU2733482C2
Способ и система обработки поисковых запросов 2015
  • Беляев Борис Михайлович
  • Хромов Денис Валерьевич
RU2632134C2
УСТРОЙСТВО, А ТАКЖЕ СПОСОБ ВЫБОРА И РАЗМЕЩЕНИЯ ЦЕЛЕВЫХ СООБЩЕНИЙ НА СТРАНИЦЕ РЕЗУЛЬТАТОВ ПОИСКА 2014
  • Ворожцов Артем Викторович
RU2629449C2
СПОСОБ ОБРАБОТКИ ЦЕЛЕВОГО СООБЩЕНИЯ, СПОСОБ ОБРАБОТКИ НОВОГО ЦЕЛЕВОГО СООБЩЕНИЯ И СЕРВЕР (ВАРИАНТЫ) 2014
  • Зеленков Сергей Юрьевич
RU2589856C2
СПОСОБ И СИСТЕМА ДЛЯ ОПРЕДЕЛЕНИЯ ВРЕДОНОСНЫХ ДЕЙСТВИЙ ОПРЕДЕЛЕННОГО ВИДА 2019
  • Статьев Сергей Вячеславович
  • Чигин Антон Олегович
RU2757007C2
СПОСОБ И СИСТЕМА ПОСТРОЕНИЯ ПОИСКОВОГО ИНДЕКСА С ИСПОЛЬЗОВАНИЕМ АЛГОРИТМА МАШИННОГО ОБУЧЕНИЯ 2018
  • Филонов Егор Андреевич
  • Коростелев Иван Владимирович
  • Акулов Ярослав Викторович
RU2720954C1
СПОСОБ И СИСТЕМА ОПРЕДЕЛЕНИЯ ОПТИМАЛЬНОГО ЗНАЧЕНИЯ ПАРАМЕТРА АУКЦИОНА ДЛЯ ЦИФРОВОГО ОБЪЕКТА 2015
  • Алипов Вячеслав Вячеславович
  • Гулин Андрей Владимирович
  • Мищенко Андрей Сергеевич
RU2637431C2
ПРЕДСТАВЛЕНИЕ ПОТОКОВОГО ВИДЕО, НАПРИМЕР, В СРЕДЕ ВИДЕОИГР ИЛИ МОБИЛЬНЫХ УСТРОЙСТВ 2006
  • Нови Майкл К.
  • Хорнер Деррик
  • Стерман Дэвид Дж.
RU2417113C2
СИСТЕМА И СПОСОБ ИНТЕРАКТИВНОГО ДИСТАНЦИОННОГО ПРОСМОТРА ФИЛЬМОВ, ПЛАНИРОВАНИЯ И СОЦИАЛЬНОГО ВЗАИМОДЕЙСТВИЯ 2014
  • Вонг Абрахам Чи Шан
  • Грув Элисон Элиз
  • Ли Еуджен М.
  • Симард Стефани Энн
RU2672620C2

Иллюстрации к изобретению RU 2 609 078 C2

Реферат патента 2017 года СИСТЕМА УПРАВЛЕНИЯ ИНДЕКСАЦИЕЙ ПАРТНЕРСКИХ ОБЪЯВЛЕНИЙ

Изобретение относится к области поисковых систем, а именно к средствам управления индексацией партнерских объявлений. Техническим результатом является повышение быстродействия, за счет увеличения скорости обновления индекса партнерских объявлений. Способ включает в себя получение обновленного партнерского объявления; определение раздела, связанного с обновленным партнерским объявлением, раздел включает в себя первое ранее известное партнерское объявление и второе ранее известное партнерское объявление, первое ранее известное партнерское объявление и второе ранее известное партнерское объявление сгруппированы в раздел на основе общей характеристики; проверку того, что обновленное партнерское объявление отличается от первого ранее известного партнерского объявления и второго ранее известного партнерского объявления, обновление поискового индекса на основе обновленного раздела, которое включает определение части поискового индекса, связанной с обновленной частью раздела, и переиндексацию только упомянутой части. Система реализует указанный способ. 2 н. и 40 з.п. ф-лы, 4 ил.

Формула изобретения RU 2 609 078 C2

1. Способ управления индексацией партнерских объявлений, способ выполняется на сервере, способ включает в себя:

получение обновленного партнерского объявления;

определение раздела, связанного с обновленным партнерским объявлением и включающего в себя первое ранее известное партнерское объявление и второе ранее известное партнерское объявление, сгруппированные в раздел на основе характеристики, являющейся общей для первого ранее известного партнерского объявления и второго ранее известного партнерского объявления;

проверку того, что обновленное партнерское объявление отличается от первого ранее известного партнерского объявления и второго ранее известного партнерского объявления;

обновление раздела на основе обновленного партнерского объявления; и

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

2. Способ по п. 1, дополнительно содержащий подготовку обновленной части раздела к индексации, предшествующую упомянутому обновлению поискового индекса.

3. Способ по п. 2, в котором упомянутая подготовка содержит один или несколько следующих этапов: (i) десериализацию; (ii) унификацию; (iii) проверку раздела на соответствие бизнес-логике; (iv) обработку изображений; (v) подсчет статической релевантности; (vi) кластеризацию рекламных объявлений; (vii) проверку объема кластера и (viii) сериализацию обработанных разделов.

4. Способ по п. 2, в котором упомянутая подготовка включает в себя десериализацию обновленного партнерского объявления, и в котором упомянутая десериализация включает в себя конвертацию обновленного партнерского объявления из первого формата во второй.

5. Способ по п. 2, в котором упомянутая подготовка включает в себя унификацию ключевых полей обновленного партнерского объявления.

6. Способ по п. 2, в котором упомянутая подготовка включает в себя проверку обновленного партнерского объявления на соответствие бизнес-логике.

7. Способ по п. 2, в котором упомянутая подготовка включает в себя обработку изображений.

8. Способ по п. 7, в котором упомянутая обработка изображений включает в себя изменение размера изображений, содержащихся в обновленном партнерском объявлении.

9. Способ по п. 2, в котором упомянутая подготовка включает в себя подсчет статической релевантности.

10. Способ по п. 2, в котором упомянутая подготовка включает в себя проверку обновленного партнерского объявления, первого ранее известного партнерского объявления и второго ранее известного партнерского объявления на наличие дубликатов.

11. Способ по п. 2, в котором упомянутая подготовка включает в себя проверку размера раздела.

12. Способ по п. 1, в котором упомянутое определение раздела, связанного с обновленным партнерским объявлением, включает разбор обновленного партнерского объявления.

13. Способ по п. 12, в котором упомянутое определение раздела, связанного с обновленным партнерским объявлением, дополнительно включает в себя, в ответ на упомянутый разбор, определение ключевых полей, связанных с обновленным партнерским объявлением, ключевые поля отражают характеристики обновленного партнерского объявления.

14. Способ по любому из пп. 12 и 13, в котором упомянутый разбор включает в себя выполнение функции унификации.

15. Способ по п. 1, в котором упомянутое обновление раздела на основе обновленного партнерского объявления включает в себя обновление только части раздела, связанного с обновленным партнерским объявлением.

16. Способ по п. 1, в котором характеристика, являющаяся общей для первого ранее известного партнерского объявления и второго ранее известного партнерского объявления, определяется на основе ключевых полей, связанных с первым ранее известным партнерским объявлением и вторым ранее известным партнерским объявлением.

17. Способ по п. 1, в котором, в том случае, когда обновленное партнерское объявление свидетельствует о том, что первое ранее известное партнерское объявление или второе ранее известное партнерское объявление более не активно, упомянутое обновление включает в себя удаление соответствующего первого или второго ранее известного партнерского объявления.

18. Способ по п. 1, в котором, в том случае, когда обновленное партнерское объявление свидетельствует о том, что новое партнерское объявление отличается от первого ранее известного партнерского объявления и второго ранее известного партнерского объявления, упомянутое обновление включает в себя создание новых партнерских объявлений в разделе, содержащем первое ранее известное партнерское объявление и второе ранее известное партнерское объявление.

19. Способ по п. 1, в котором обновленное партнерское объявление свидетельствует о том, что первое ранее известное партнерское объявление или второе ранее известное партнерское объявление были изменены, упомянутое обновление включает в себя обновление соответствующего первого или второго ранее известного партнерского объявления.

20. Способ по п. 1, в котором обновленное партнерское объявление реализовано в виде XML-канала.

21. Способ по п. 1, в котором обновленное партнерское объявление, первое ранее известное партнерское объявление и второе ранее известное партнерское объявление представляют собой рекламные объявления.

22. Система управления индексацией партнерских объявлений, включающая:

устройство обработки объявлений, выполненное с возможностью:

получения обновленного партнерского объявления;

определения раздела, связанного с обновленным партнерским объявлением и включающего первое ранее известное партнерское объявление и второе ранее известное партнерское объявление, сгруппированные в раздел на основе характеристики, являющейся общей для первого ранее известного партнерского объявления и второго ранее известного партнерского объявления;

выполнения проверки того, что обновленное партнерское объявление отличается от первого ранее известного партнерского объявления и второго ранее известного партнерского объявления;

обновления раздела на основе обновленного партнерского объявления; и

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

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

24. Система по п. 23, в которой для подготовки обновленной части раздела устройство обработки объявлений выполнено с возможностью выполнения одного или нескольких следующих этапов: (i) десериализации; (ii) унификации; (iii) проверки раздела на соответствие бизнес-логике; (iv) обработки изображений; (v) подсчета статической релевантности; (vi) кластеризации рекламных объявлений; (vii) проверки объема кластера и (viii) сериализации обработанных разделов.

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

26. Система по п. 23, в которой для подготовки обновленной части раздела устройство обработки объявлений выполнено с возможностью унификации ключевых полей в обновленном партнерском объявлении.

27. Система по п. 23, в которой для подготовки обновленной части раздела устройство обработки объявлений выполнено с возможностью проверки раздела на соответствие бизнес-логике.

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

29. Система по п. 28, в которой для подготовки обновленной части раздела устройство обработки объявлений выполнено с возможностью изменения размера изображений, содержащихся в обновленном партнерском объявлении.

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

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

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

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

34. Система по п. 24, в которой для определения раздела, связанного с обновленным партнерским объявлением, устройство обработки объявлений дополнительно выполнено с возможностью, в ответ на упомянутый разбор, определения ключевых полей, связанных с обновленным партнерским объявлением, причем ключевые поля отражают характеристики обновленных партнерских объявлений.

35. Система по любому из пп. 33 и 34, в которой для разбора устройство обработки объявлений выполнено с возможностью выполнения функции унификации.

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

37. Система по п. 22, в которой характеристика, являющаяся общей для первого ранее известного партнерского объявления и второго ранее известного партнерского объявления, определяется на основе ключевых полей, связанных с первым ранее известным партнерским объявлением и вторым ранее известным партнерским объявлением.

38. Система по п. 22, в которой, в том случае, когда обновленное партнерское объявление свидетельствует о том, что первое ранее известное партнерское объявление или второе ранее известное партнерское объявление более не активно, устройство обработки объявлений выполнено с возможностью удаления соответствующего первого или второго ранее известного партнерского объявления.

39. Система по п. 22, в которой в том случае, когда обновленное партнерское объявление свидетельствует о том, что новое партнерское объявление отличается от первого ранее известного партнерского объявления и второго ранее известного партнерского объявления, устройство обработки объявлений выполнено с возможностью создания нового партнерского объявления в разделе, содержащем первое ранее известное партнерское объявление и второе ранее известное партнерское объявление.

40. Система по п. 22, в которой обновленное партнерское объявление свидетельствует о том, что первое ранее известное партнерское объявление или второе ранее известное партнерское объявление были изменены, устройство обработки объявлений выполнено с возможностью обновления соответствующего первого или второго ранее известного партнерского объявления.

41. Система по п. 22, в которой обновленное партнерское объявление реализовано в виде XML-канала.

42. Система по п. 22, в которой обновленное партнерское объявление, первое ранее известное партнерское объявление и второе ранее известное партнерское объявление представляют собой рекламные объявления.

Документы, цитированные в отчете о поиске Патент 2017 года RU2609078C2

Станок для изготовления деревянных ниточных катушек из цилиндрических, снабженных осевым отверстием, заготовок 1923
  • Григорьев П.Н.
SU2008A1
Пресс для выдавливания из деревянных дисков заготовок для ниточных катушек 1923
  • Григорьев П.Н.
SU2007A1
RU 2010130865 A,27.02.2012
RU 2007139524 А, 27.04.2009.

RU 2 609 078 C2

Авторы

Качмар Дмитрий Игоревич

Цесько Вадим Александрович

Даты

2017-01-30Публикация

2013-08-29Подача