RU2645266C1 - Способ и устройство для планирования web-обходчиков в соответствии с поиском по ключевым словам - Google Patents

Способ и устройство для планирования web-обходчиков в соответствии с поиском по ключевым словам Download PDF

Info

Publication number
RU2645266C1
RU2645266C1 RU2016132573A RU2016132573A RU2645266C1 RU 2645266 C1 RU2645266 C1 RU 2645266C1 RU 2016132573 A RU2016132573 A RU 2016132573A RU 2016132573 A RU2016132573 A RU 2016132573A RU 2645266 C1 RU2645266 C1 RU 2645266C1
Authority
RU
Russia
Prior art keywords
memory segment
pages
page numbers
addresses
tasks
Prior art date
Application number
RU2016132573A
Other languages
English (en)
Inventor
Яохуа ЛЯО
Сяовэй ЛИ
Original Assignee
Бэйцзин Цзиндун Шанкэ Информейшн Текнолоджи Ко., Лтд.
Бэйцзин Цзиндун Сенчури Трэйдинг Ко., Лтд.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Бэйцзин Цзиндун Шанкэ Информейшн Текнолоджи Ко., Лтд., Бэйцзин Цзиндун Сенчури Трэйдинг Ко., Лтд. filed Critical Бэйцзин Цзиндун Шанкэ Информейшн Текнолоджи Ко., Лтд.
Application granted granted Critical
Publication of RU2645266C1 publication Critical patent/RU2645266C1/ru

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/951Indexing; Web crawling techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/16File or folder operations, e.g. details of user interfaces specifically adapted to file systems
    • G06F16/162Delete operations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Software Systems (AREA)
  • Human Computer Interaction (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

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

Description

ОБЛАСТЬ ТЕХНИКИ
Настоящее изобретение относится к области техники, касающейся поисковых агентов для сети Интернет (Web crawler, Web-обходчиков, пауков), в частности, к способу и системе для планирования Web-обходчиков в соответствии с поиском по ключевым словам.
ПРЕДШЕСТВУЮЩИЙ УРОВЕНЬ ТЕХНИКИ
Поисковые агенты для сети Интернет (Web) (Web-обходчики, Web-сборщики, ʺчервякиʺ, краулеры), основанные на поиске по ключевым словам, являются основой для получения информации ключевых слов. Однако обновление информации вызвало бы случаи повторных или неполных обходов Web-обходчиков, особенно на целевых вебсайтах, где информация обновляется довольно часто, например, вебсайтах микроблогов, таких как Sina Microblog, и поисковых вебсайтах, таких как Baidu и т.д. В случае популярных ключевых слов, для Web-обходчиков было бы затруднительно получить полный обход данных вследствие довольно быстрого обновления информации, в то время как в случае непопулярных ключевых слов будут иметься повторные обходы информации, ввиду относительно медленного обновления информации.
В существующей практике, для ключевых слов устанавливаются различные уровни популярности, и затем ключевые слова обходятся (просматриваются при поиске) в соответствии с их уровнями популярности, так что ключевые слова с высоким уровнем популярности обходятся более часто.
Однако существующая практика имеет следующие недостатки: (1) необходимо получать уровень популярности для каждого ключевого слова и затем устанавливать частоту обхода в соответствии с уровнем популярности; и (2) многие запросы адресов ссылок вторичной загрузки вовлекаются в процесс первоначального запроса, и существующая схема не различает их.
СУЩНОСТЬ ИЗОБРЕТЕНИЯ
Ввиду вышеуказанного, необходимо создать способ и систему для планирования веб-обходчиков в соответствии с поиском по ключевым словам, чтобы решить техническую проблему, состоящую в том, что частота обхода является неточной ввиду необходимости предварительного определения уровня популярности для ключевого слова в существующем уровне техники, когда частота обхода устанавливается посредством установки уровня популярности для ключевого слова.
Способ планирования Web-обходчиков в соответствии с поиском по ключевым словам характеризуется тем, что он содержит:
этап 12 приема планирующей стороной команды запроса задания, посланной выполняющим обход узлом;
этап 13 получения планирующей стороной адреса ссылки вторичной загрузки из приоритетного сегмента памяти, который хранит адреса ссылок вторичной загрузки, генерации заданий, добавления сгенерированных заданий в список заданий, и если достигнуты количества, разрешенные для добавления в список заданий из приоритетного сегмента памяти, выполнения этапа (16), в противном случае выполнения этапа (14), при этом адреса ссылок вторичной загрузки являются адресами ссылок, которые требуют вторичной загрузки, полученными из анализа просмотренных страниц, обход которых выполнен выполняющим обход узлом, в соответствии с заданием в списке заданий;
этап 14 получения планирующей стороной адресов ссылок ключевых слов из динамического сегмента памяти, который хранит адреса многостраничных ссылок ключевых слов, вывода адресов производных ссылок количеств страниц, соответствующих адресам ссылок ключевых слов, генерации заданий количеств страниц в соответствии с адресами производных ссылок количеств страниц, добавления заданий количеств страниц в список заданий, и если количества, разрешенные для добавления в список заданий из динамического сегмента памяти, достигнуты, выполнения этапа (16), в противном случае выполнения этапа (15), при этом адреса ссылок ключевых слов являются адресами ссылок страниц результатов поиска, сгенерированных в целевом вебсайте в соответствии с ключевым словом, и страницы результатов поиска, соответствующие адресам ссылок ключевых слов в динамическом сегменте памяти, составляют количества страниц не меньше, чем предварительно установленный порог для количеств страниц, который не меньше, чем 2;
этап 15 получения планирующей стороной адреса ссылки ключевого слова из базового сегмента памяти, который хранит адреса ссылок ключевых слов, генерации заданий, добавления сгенерированных заданий в список заданий, и если количества, разрешенные для добавления в список заданий из базового сегмента памяти, достигнуты, выполнения этапа (16), при этом адреса ссылок ключевых слов являются адресами ссылок страниц результатов поиска, сгенерированных в целевом вебсайте в соответствии с ключевым словом, и страницы результатов поиска, соответствующие адресам ссылок ключевых слов в базовом сегменте памяти, составляют количества страниц не меньше, чем предварительно установленный порог для количеств страниц, который не меньше, чем 2; и
этап 16 возврата планирующей стороной списка заданий к выполняющему обход узлу, при этом выполняющий обход узел выполняет задание из списка заданий в соответствии с принятым списком заданий.
Система для планирования Web-обходчиков в соответствии с поиском по ключевым словам характеризуется тем, что она содержит планирующую сторону и по меньшей мере один выполняющий обход узел, который осуществляет связь с планирующей стороной,
планирующая сторона содержит:
модуль приема команды запроса задания для приема команды запроса задания, посланной выполняющим обход узлом;
модуль генерации заданий приоритетного сегмента памяти для получения адреса ссылки вторичной загрузки из приоритетного сегмента памяти, который хранит адреса ссылок вторичной загрузки, генерации заданий и добавления сгенерированных заданий в список заданий, и если достигнуты количества, разрешенные для добавления в список заданий из приоритетного сегмента памяти, то исполняется модуль возврата списка заданий, в противном случае исполняется модуль генерации заданий динамического сегмента памяти, при этом адреса ссылок вторичной загрузки являются адресами ссылок, которые требуют вторичной загрузки, полученными из анализа просмотренных страниц, обход которых выполнен выполняющим обход узлом в соответствии с заданием в списке заданий;
модуль генерации заданий динамического сегмента памяти для получения адресов ссылок ключевых слов из динамического сегмента памяти, который хранит адреса многостраничных ссылок ключевых слов, вывода адресов производных ссылок количеств страниц, соответствующих адресам ссылок ключевых слов, генерации заданий количеств страниц в соответствии с адресами производных ссылок количеств страниц, добавления заданий количеств страниц в список заданий, и если количества, разрешенные для добавления в список заданий из динамического сегмента памяти, достигнуты, то исполняется модуль возврата списка заданий, в противном случае исполняется модуль генерации заданий динамического сегмента памяти, при этом адреса ссылок ключевых слов являются адресами ссылок страниц результатов поиска, сгенерированных в целевом вебсайте в соответствии с ключевым словом, и страницы результатов поиска, соответствующие адресам ссылок ключевых слов в динамическом сегменте памяти, составляют количества страниц не меньше, чем предварительно установленный порог для количеств страниц, который не меньше, чем 2;
модуль генерации заданий базового сегмента памяти для получения адреса ссылки ключевого слова из базового сегмента памяти, который хранит адреса ссылок ключевых слов, генерации заданий, добавления сгенерированных заданий в список заданий, и если количества, разрешенные для добавления в список заданий из базового сегмента памяти, достигнуты, то исполняется модуль возврата списка заданий, при этом адреса ссылок ключевых слов являются адресами ссылок страниц результатов поиска, сгенерированных в целевом вебсайте в соответствии с ключевым словом, и страницы результатов поиска, соответствующие адресам ссылок ключевых слов в базовом сегменте памяти, составляют количества страниц не меньше, чем предварительно установленный порог для количеств страниц, который не меньше, чем 2; и
модуль возврата списка заданий к выполняющему обход узлу;
и выполняющий обход узел содержит:
модуль отсылки команды запроса задания для отсылки команды запроса задания к планирующей стороне, и
модуль выполнения задания для выполнения задания из списка заданий в соответствии с принятым списком заданий.
В настоящем изобретении, приоритетный сегмент памяти, динамический сегмент памяти и базовый сегмент памяти все являются виртуальными сегментами памяти. Виртуальные сегменты памяти предоставляются с различными уровнями приоритета, и адреса ссылок различных типов сохраняются в виртуальных сегментах памяти так, что адреса ссылок с относительно высокими уровнями популярности помещаются в виртуальные сегменты памяти с относительно высокими уровнями приоритета. Путем настройки количеств заданий, разрешенных для добавления из каждого виртуального сегмента памяти, количества адресов ссылок различных типов настраиваются гибким образом. Кроме того, уровень популярности адресов ссылок не устанавливается искусственным образом, а устанавливается в соответствии с действительными количествами страниц, просмотренных в соответствии с адресом ссылки, так что популярные ключевые слова просматриваются более часто, чтобы избежать пропуска данных, в то время как повторный просмотр непопулярных ключевых слов сокращается.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
Фиг. 1 - блок-схема последовательности операций способа для планирования Web-обходчиков в соответствии с поиском по ключевым словам в соответствии с настоящим изобретением.
Фиг. 2 - схематичное представление модулей системы для планирования Web-обходчиков в соответствии с поиском по ключевым словам в соответствии с настоящим изобретением.
Фиг. 3 - схематичное представление структуры системы в соответствии с примерным вариантом настоящего изобретения.
Фиг. 4 - блок-схема последовательности операций планировщика сегментов памяти (модуля планирования и управления сегментами памяти) в соответствии с примерным вариантом настоящего изобретения.
Фиг. 5 - блок-схема последовательности операций модуля обновления сегментов памяти в соответствии с примерным вариантом настоящего изобретения.
ДЕТАЛЬНОЕ ОПИСАНИЕ ПРЕДПОЧТИТЕЛЬНЫХ ВАРИАНТОВ ОСУЩЕСТВЛЕНИЯ
Настоящее изобретение описывается ниже детально со ссылками на чертежи и конкретные варианты осуществления.
Фиг. 1 иллюстрирует блок-схему последовательности операций способа для планирования Web-обходчиков в соответствии с поиском по ключевым словам в соответствии с настоящим изобретением, причем способ содержит:
этап 11 посылки выполняющим обход узлом команды запроса задания к планирующей стороне;
этап 12 приема планирующей стороной команды запроса задания, посланной выполняющим обход узлом;
этап 13 получения планирующей стороной адреса ссылки вторичной загрузки из приоритетного сегмента памяти, который хранит адреса ссылок вторичной загрузки, генерации заданий, добавления заданий в список заданий, и если достигнуты количества, разрешенные для добавления в список заданий из приоритетного сегмента памяти, выполнения этапа (16), в противном случае выполнения этапа (14), при этом адреса ссылок вторичной загрузки являются адресами ссылок, которые требуют вторичной загрузки, полученными из анализа просмотренных страниц, обход которых выполнен выполняющим обход узлом, в соответствии с заданием в списке заданий;
этап 14 получения планирующей стороной адресов ссылок ключевых слов из динамического сегмента памяти, который хранит адреса многостраничных ссылок ключевых слов, вывода адресов производных ссылок количеств страниц, соответствующих адресам ссылок ключевых слов, генерации заданий количеств страниц в соответствии с адресами производных ссылок количеств страниц, добавления заданий количеств страниц в список заданий, и если количества, разрешенные для добавления в список заданий из динамического сегмента памяти, достигнуты, то выполнения этапа (16), в противном случае выполнения этапа (15), при этом адреса ссылок ключевых слов являются адресами ссылок страниц результатов поиска, сгенерированных в целевом вебсайте в соответствии с ключевым словом, и страницы результатов поиска, соответствующие адресам ссылок ключевых слов в динамическом сегменте памяти, составляют количества страниц не меньше, чем предварительно установленный порог для количеств страниц, который не меньше, чем 2;
этап 15 получения планирующей стороной адреса ссылки ключевого слова из базового сегмента памяти, который хранит адреса ссылок ключевых слов, генерации заданий, добавления сгенерированных заданий в список заданий, и если количества, разрешенные для добавления в список заданий из базового сегмента памяти, достигнуты, выполнения этапа (16), при этом адреса ссылок ключевых слов являются адресами ссылок страниц результатов поиска, сгенерированных в целевом вебсайте в соответствии с ключевым словом, и страницы результатов поиска, соответствующие адресам ссылок ключевых слов в базовом сегменте памяти, составляют количества страниц не меньше, чем предварительно установленный порог для количеств страниц, который не меньше, чем 2; и
этап 16 возврата планирующей стороной списка заданий к выполняющему обход узлу, при этом выполняющий обход узел выполняет задание из списка заданий в соответствии с принятым списком заданий.
На этапе 13, обработка является специализированной для адресов ссылок вторичной загрузки. Адреса ссылок вторичной загрузки являются адресами ссылок, которые требуют вторичной загрузки, полученными из анализа просмотренных страниц, пройденных выполняющим обход узлом в соответствии с заданием в списке заданий. Например, когда выполняется поиск ʺJingdongʺ в Baidu, страница результатов поиска, включающая в себя множество результатов поиска, будет показывать каждый результат поиска в соответствии с адресом ссылки, и адрес ссылки является адресом ссылки вторичной загрузки. Адреса ссылок, которые требуют вторичной загрузки, могут быть получены из анализа просмотренных страниц, и имеются относительно зрелые методы анализа, которые здесь не будут приводиться повторно.
На этапах 14 и 15 адреса ссылок ключевых слов обозначают адреса ссылок страниц результатов поиска, сгенерированных на целевом вебсайте в соответствии с ключевым словом. Например, когда выполняется поиск ʺJingdongʺ в Baidu, будет показана страница результатов поиска, сгенерированная в соответствии с ключевым словом ʺJingdongʺ. Если ключевое слово является популярным, одна страница результатов поиска не могла бы включать в себя все результаты поиска, и количества страниц будут показаны на странице поиска. Количества страниц используются для указания, что имеются страницы результатов поиска в некоторых количествах страниц, включающих в себя ключевое слово. Так, чем больше количества страниц, тем более популярным является ключевое слово. Таким образом, адреса ссылок ключевых слов с количествами страниц, превышающими предварительно установленный порог для количеств страниц, помещаются в динамический сегмент памяти и обрабатываются с приоритетом на этапе 14. Решение принимается в соответствии с действительными количествами страниц, таким образом, уровень популярности ключевого слова может быть отражен более объективно.
Количества, разрешенные для добавления из приоритетного сегмента памяти, обозначают количества адресов ссылок вторичной загрузки в приоритетном сегменте памяти, разрешенные для добавления в список заданий; количества, разрешенные для добавления из динамического сегмента памяти, обозначают количества адресов ссылок ключевых слов в динамическом сегменте памяти, разрешенные для добавления в список заданий; и количества, разрешенные для добавления из базового сегмента памяти, обозначают количества адресов ссылок ключевых слов в базовом сегменте памяти, разрешенные для добавления в список заданий.
В одном из вариантов осуществления, этап 13 конкретно содержит:
получение адреса ссылки вторичной загрузки из приоритетного сегмента памяти, который хранит адреса ссылок вторичной загрузки;
генерацию заданий;
добавление сгенерированных заданий в список заданий;
удаление адресов ссылок вторичной загрузки, для которых было сгенерировано задание, из приоритетного сегмента памяти; и
если количества, разрешенные для добавления в список заданий из приоритетного сегмента памяти, достигнуты, выполнение этапа 16,
в противном случае, если приоритетный сегмент памяти дополнительно хранит адреса ссылок вторичной загрузки, выполнение этапа 13, и
если все адреса ссылок вторичной загрузки удалены из приоритетного сегмента памяти, выполнение этапа 14.
В этом варианте осуществления, адреса ссылок вторичной загрузки исполняются с приоритетом и удаляются после исполнения только однократно, чтобы избежать повторных обходов.
В одном из вариантов осуществления, этап 14 конкретно содержит:
получение незапланированных адресов ссылок ключевых слов из динамического сегмента памяти, который хранит адреса ссылок ключевых слов;
вывод адресов производных ссылок количеств страниц в соответствии с адресами ссылок ключевых слов;
генерацию заданий количеств страниц в соответствии с адресами производных ссылок количеств страниц и добавление заданий в список заданий;
установку состояний адресов ссылок ключевых слов, для которых были сгенерированы задания, в запланированные; и
если количества, разрешенные для добавления в список заданий из динамического сегмента памяти, достигнуты, выполнение этапа 16, и установку состояний всех адресов ссылок ключевых слов в динамическом сегменте памяти в незапланированные,
в противном случае, если динамический сегмент памяти дополнительно хранит незапланированные адреса ссылок ключевых слов, выполнение этапа 14, и
если динамический сегмент памяти не хранит незапланированные адреса ссылок ключевых слов, выполнение этапа 15.
В данном варианте осуществления, адреса ссылок ключевых слов в динамическом сегменте памяти, в качестве адресов ссылок, соответствующих популярным ключевым словам, будут вызываться многократно, чтобы избежать пропуска обходов (просмотров) популярных ключевых слов.
В одном из вариантов осуществления, базовый сегмент памяти содержит активный сегмент памяти и приостановленный сегмент памяти;
этап 15 конкретно содержит:
получение адреса ссылки ключевого слова с самым ранним временем планирования из активного сегмента памяти, который хранит адреса ссылок ключевых слов, генерацию заданий и добавление сгенерированных заданий в список заданий, и
увеличение времен планирования для адресов ссылок ключевых слов, для которых были сгенерированы задания, на предварительно установленное увеличение времени планирования и затем перемещение их в приостановленный сегмент памяти; и
если количества, разрешенные для добавления в список заданий из базового сегмента памяти, достигнуты, выполнение этапа 16,
в противном случае, если активный сегмент памяти дополнительно содержит адреса ссылок ключевых слов, выполнение этапа 15, и если активный сегмент памяти не хранит адресов ссылок ключевых слов, выполнение этапа 16.
В данном варианте осуществления, поскольку адреса ссылок ключевых слов в базовом сегменте памяти являются адресами ссылок, соответствующих непопулярным ключевым словам, он дополнительно конфигурируется так, что базовый сегмент памяти содержит активный сегмент памяти и приостановленный сегмент памяти, причем адреса ссылок в активном сегменте памяти будут перемещаться в приостановленный сегмент памяти, после того как они исполнены однократно, и исполняться вновь с интервалом увеличения времени планирования, чтобы избегать повторных просмотров непопулярных кодовых слов.
В одном из вариантов осуществления способ дополнительно содержит:
обход выполняющим обход узлом просматриваемых страниц в соответствии с заданием в списке заданий, анализ просмотренных страниц для получения данных анализа, включающих в себя адреса ссылок вторичной загрузки, детали информации или количества страниц, и посылку данных анализа к планирующей стороне;
прием планирующей стороной данных анализа;
если данные анализа являются адресами ссылок вторичной загрузки, помещение адресов ссылок вторичной загрузки в приоритетный сегмент памяти;
если данные анализа являются деталями информации, помещение деталей информации в сегмент памяти данных;
если данные анализа являются количествами страниц, настройку адресов ссылок ключевых слов соответствующих количеству страниц в динамическом сегменте памяти и базовом сегменте памяти.
Различные данные анализа помещаются в различные виртуальные сегменты памяти, чтобы реализовать обновление адресов ссылок в виртуальных сегментах памяти.
В одном из вариантов осуществления, настройка адресов ссылок ключевых слов соответствующих количеству страниц в динамическом сегменте памяти и базовом сегменте памяти планирующей стороной конкретно содержит:
установку количеств страниц, принятых в текущий момент, в качестве новых количеств страниц, и установку количеств страниц, принятых ранее для тех же самых адресов ссылок ключевых слов, в качестве старых количеств страниц; и
если старые количества страниц не согласуются с новыми количествами страниц:
если старые количества страниц составляют не меньше, чем порог для количеств страниц, и новые количества страниц составляют не меньше, чем порог для количеств страниц, то изменение соответствующих количеств страниц, соответствующих адресам ссылок ключевых слов, на новые количества страниц;
если старые количества страниц составляют не меньше, чем порог для количеств страниц, и новые количества страниц составляют меньше, чем порог для количеств страниц, перемещение соответствующих адресов ссылок ключевых слов в базовый сегмент памяти; или
если старые количества страниц составляют меньше, чем порог для количеств страниц, и новые количества страниц составляют не меньше, чем порог для количеств страниц, перемещение соответствующих адресов ссылок ключевых слов в динамический сегмент памяти.
В данном варианте осуществления, имеется дополнительное ограничение, что адреса ссылок ключевых слов, соответствующие количествам страниц в динамическом сегменте памяти и базовом сегменте памяти, настраиваются в соответствии со сравнением старых количеств страниц и новых количеств страниц.
В одном из вариантов осуществления, способ содержит:
обход выполняющим обход узлом просматриваемых страниц в соответствии с заданием в списке заданий, анализ просмотренных страниц для получения данных анализа, включающих в себя адреса ссылок вторичной загрузки, детали информации или количества страниц, и посылку данных анализа к планирующей стороне;
прием планирующей стороной данных анализа;
если данные анализа являются адресами ссылок вторичной загрузки, помещение адресов ссылок вторичной загрузки в приоритетный сегмент памяти;
если данные анализа являются деталями информации, помещение деталей информации в сегмент памяти данных;
если данные анализа являются количествами страниц, установку количеств страниц, принятых в текущий момент, в качестве новых количеств страниц, и установку количеств страниц, принятых ранее для тех же самых адресов ссылок ключевых слов, в качестве старых количеств страниц; и если старые количества страниц не согласуются с новыми количествами страниц:
если старые количества страниц составляют не меньше, чем порог для количеств страниц, и новые количества страниц составляют не меньше, чем порог для количеств страниц, изменение соответствующих количеств страниц, соответствующих адресам ссылок ключевых слов, на новые количества страниц; или
если старые количества страниц составляют не меньше, чем порог для количеств страниц, и новые количества страниц составляют меньше, чем порог для количеств страниц, перемещение соответствующих адресов ссылок ключевых слов в активный сегмент памяти; или
если старые количества страниц составляют меньше, чем порог для количеств страниц, и новые количества страниц составляют не меньше, чем порог для количеств страниц, перемещение соответствующих адресов ссылок ключевых слов в динамический сегмент памяти; или
если старые количества страниц составляют меньше, чем порог для количеств страниц, и новые количества страниц составляют меньше, чем порог для количеств страниц, поиск в приостановленном сегменте памяти и перемещение адресов ссылок ключевых слов, времена планирования для которых в приостановленном сегменте памяти достигли текущего времени, в активный сегмент памяти.
В данном варианте осуществления имеется дополнительное ограничение, что адреса ссылок ключевых слов, соответствующие количествам страниц в динамическом сегменте памяти и базовом сегменте памяти, настраиваются в соответствии со сравнением старых количеств страниц и новых количеств страниц, и в приостановленном сегменте памяти выполняется поиск, если необходимо избегать длительного сохранения адресов ссылок в приостановленном сегменте памяти.
В одном из вариантов осуществления, количества, разрешенные для добавления из динамического сегмента памяти, составляют больше, чем количества, разрешенные для добавления из базового сегмента памяти. За счет конфигурирования таким образом, что количества, разрешенные для добавления из динамического сегмента памяти, составляют больше, чем количества, разрешенные для добавления из базового сегмента памяти, больше ресурсов используется для поиска по популярным ключевым словам.
Фиг. 2 является схематичным представлением модулей системы для планирования Web-обходчиков в соответствии с поиском по ключевым словам в соответствии с настоящим изобретением, характеризуемой тем, что система содержит планирующую сторону 21 и по меньшей мере один выполняющий обход узел 22, который осуществляет связь с планирующей стороной 21,
планирующая сторона 21 содержит:
модуль 211 приема команды запроса задания для приема команды запроса задания, посланной выполняющим обход узлом;
модуль 212 генерации заданий приоритетного сегмента памяти для получения адреса ссылки вторичной загрузки из приоритетного сегмента памяти, который хранит адреса ссылок вторичной загрузки, генерации заданий и добавления сгенерированных заданий в список заданий, и если достигнуты количества, разрешенные для добавления в список заданий из приоритетного сегмента памяти, то исполняется модуль возврата списка заданий, в противном случае исполняется модуль генерации заданий динамического сегмента памяти, при этом адреса ссылок вторичной загрузки являются адресами ссылок, которые требуют вторичной загрузки, полученными из анализа просмотренных страниц, обход которых выполнен выполняющим обход узлом в соответствии с заданием в списке заданий;
модуль 213 генерации заданий динамического сегмента памяти для получения адресов ссылок ключевых слов из динамического сегмента памяти, который хранит адреса многостраничных ссылок ключевых слов, получения адресов производных ссылок количеств страниц, соответствующих адресам ссылок ключевых слов, генерации заданий количеств страниц в соответствии с адресами производных ссылок количеств страниц, добавления заданий количеств страниц в список заданий, и если количества, разрешенные для добавления в список заданий из динамического сегмента памяти, достигнуты, то исполняется модуль возврата списка заданий, в противном случае исполняется модуль генерации заданий динамического сегмента памяти, при этом адреса ссылок ключевых слов являются адресами ссылок страниц результатов поиска, сгенерированных в целевом вебсайте в соответствии с ключевым словом, и страницы результатов поиска, соответствующие адресам ссылок ключевых слов в динамическом сегменте памяти, составляют количества страниц не меньше, чем предварительно установленный порог для количеств страниц, который не меньше, чем 2;
модуль 214 генерации заданий базового сегмента памяти для получения адреса ссылки ключевого слова из базового сегмента памяти, который хранит адреса ссылок ключевых слов, генерации заданий, добавления сгенерированных заданий в список заданий, и если количества, разрешенные для добавления в список заданий из базового сегмента памяти, достигнуты, то исполняется модуль возврата списка заданий, при этом адреса ссылок ключевых слов являются адресами ссылок страниц результатов поиска, сгенерированных в целевом вебсайте в соответствии с ключевым словом, и страницы результатов поиска, соответствующие адресам ссылок ключевых слов в базовом сегменте памяти, составляют количества страниц не меньше, чем предварительно установленный порог для количеств страниц, который не меньше, чем 2; и
модуль 215 возврата списка заданий для возврата списка заданий к выполняющему обход узлу;
и выполняющий обход узел 22 содержит:
модуль 221 посылки команды запроса задания для посылки команды запроса задания к планирующей стороне, и
модуль 222 выполнения задания для выполнения задания из списка заданий в соответствии с принятым списком заданий.
В одном из вариантов осуществления, модуль 212 генерации заданий приоритетного сегмента памяти конкретно используется для:
получения адреса ссылки вторичной загрузки из приоритетного сегмента памяти, который хранит адреса ссылок вторичной загрузки;
генерации заданий;
добавления сгенерированных заданий в список заданий и
удаления адресов ссылок вторичной загрузки, для которых было сгенерировано задание, из приоритетного сегмента памяти;
и
если количества, разрешенные для добавления в список заданий из приоритетного сегмента памяти, достигнуты, то исполняется модуль 215 возврата списка заданий,
в противном случае, если приоритетный сегмент памяти дополнительно хранит адреса ссылок вторичной загрузки, то исполняется модуль 212 генерации заданий приоритетного сегмента памяти, и
если все адреса ссылок вторичной загрузки удалены из приоритетного сегмента памяти, то исполняется модуль 213 генерации заданий динамического сегмента памяти.
В одном из вариантов осуществления, модуль 213 генерации заданий динамического сегмента памяти конкретно используется для:
получения незапланированных адресов ссылок ключевых слов из динамического сегмента памяти, который хранит адреса ссылок ключевых слов;
вывода адресов производных ссылок количеств страниц соответствующих адресам ссылок ключевых слов;
генерации заданий количеств страниц в соответствии с адресами производных ссылок количеств страниц и добавления заданий в список заданий и
установки состояний адресов ссылок ключевых слов, для которых были сгенерированы задания, в запланированные; и
если количества, разрешенные для добавления в список заданий из динамического сегмента памяти, достигнуты, то исполняется модуль 215 возврата списка заданий, и состояния всех адресов ссылок ключевых слов в динамическом сегменте памяти устанавливаются в незапланированные,
в противном случае, если динамический сегмент памяти дополнительно хранит незапланированные адреса ссылок ключевых слов, то исполняется модуль 213 генерации заданий динамического сегмента памяти, и
если динамический сегмент памяти не хранит незапланированные адреса ссылок ключевых слов, то исполняется модуль 214 генерации заданий базового сегмента памяти.
В одном из вариантов осуществления, базовый сегмент памяти содержит активный сегмент памяти и приостановленный сегмент памяти; модуль 214 генерации заданий базового сегмента памяти конкретно используется для:
получения адреса ссылки ключевого слова с самым ранним временем планирования из активного сегмента памяти, который хранит адреса ссылок ключевых слов, генерации заданий и добавления сгенерированных заданий в список заданий, и
увеличения времен планирования для адресов ссылок ключевых слов, для которых были сгенерированы задания, на предварительно установленное увеличение времени планирования и затем перемещения их в приостановленный сегмент памяти; и
если количества, разрешенные для добавления в список заданий из базового сегмента памяти, достигнуты, то исполняется модуль 215 возврата списка заданий,
в противном случае, если активный сегмент памяти дополнительно хранит адреса ссылок ключевых слов, то исполняется модуль 214 генерации заданий базового сегмента памяти, и
если активный сегмент памяти не хранит адресов ссылок ключевых слов, то исполняется модуль 215 возврата списка заданий.
В одном из вариантов осуществления, модуль выполнения задания конкретно используется для: обхода просматриваемых страниц в соответствии с заданием в списке заданий, анализа просмотренных страниц для получения данных анализа, включающих в себя адреса ссылок вторичной загрузки, детали информации или количества страниц, и посылки данных анализа к планирующей стороне;
планирующая сторона дополнительно содержит модуль приема данных анализа для:
приема данных анализа и
если данные анализа являются адресами ссылок вторичной загрузки, то помещения адресов ссылок вторичной загрузки в приоритетный сегмент памяти;
если данные анализа являются деталями информации, то помещения деталей информации в сегмент памяти данных;
если данные анализа являются количествами страниц, то настройки адресов ссылок ключевых слов соответствующих количеству страниц в динамическом сегменте памяти и базовом сегменте памяти.
В одном из вариантов осуществления, настройка адресов ссылок ключевых слов соответствующих количеству страниц в динамическом сегменте памяти и базовом сегменте памяти посредством модуля приема данных анализа конкретно содержит:
установку количеств страниц, принятых в текущий момент, в качестве новых количеств страниц, и установку количеств страниц, принятых ранее для тех же самых адресов ссылок ключевых слов, в качестве старых количеств страниц; и
если старые количества страниц не согласуются с новыми количествами страниц:
если старые количества страниц составляют не меньше, чем порог для количеств страниц, и новые количества страниц составляют не меньше, чем порог для количеств страниц, то изменение соответствующих количеств страниц, соответствующих адресам ссылок ключевых слов, на новые количества страниц; или
если старые количества страниц составляют не меньше, чем порог для количеств страниц, и новые количества страниц составляют меньше, чем порог для количеств страниц, перемещение соответствующих адресов ссылок ключевых слов в базовый сегмент памяти; или
если старые количества страниц составляют меньше, чем порог для количеств страниц, и новые количества страниц составляют не меньше, чем порог для количеств страниц, перемещение соответствующих адресов ссылок ключевых слов в динамический сегмент памяти.
В одном из вариантов осуществления, модуль выполнения задания конкретно используется для:
обхода просматриваемых страниц в соответствии с заданием в списке заданий, анализа просмотренных страниц для получения данных анализа, включающих в себя адреса ссылок вторичной загрузки, детали информации или количества страниц, и посылки данных анализа к планирующей стороне;
и планирующая сторона дополнительно содержит модуль приема данных анализа для:
приема данных анализа, и
если данные анализа являются адресами ссылок вторичной загрузки, то помещения адресов ссылок вторичной загрузки в приоритетный сегмент памяти;
если данные анализа являются деталями информации, то помещения деталей информации в сегмент памяти данных; и
если данные анализа являются количествами страниц, то установки количеств страниц, принятых в текущий момент, в качестве новых количеств страниц, установки количеств страниц, принятых ранее для тех же самых адресов ссылок ключевых слов, в качестве старых количеств страниц; и если старые количества страниц не согласуются с новыми количествами страниц:
если старые количества страниц составляют не меньше, чем порог для количеств страниц, и новые количества страниц составляют не меньше, чем порог для количеств страниц, то изменения соответствующих количеств страниц, соответствующих адресам ссылок ключевых слов, на новые количества страниц; или
если старые количества страниц составляют не меньше, чем порог для количеств страниц, и новые количества страниц составляют меньше, чем порог для количеств страниц, то перемещения соответствующих адресов ссылок ключевых слов в активный сегмент памяти; или
если старые количества страниц составляют меньше, чем порог для количеств страниц, и новые количества страниц составляют не меньше, чем порог для количеств страниц, то перемещения соответствующих адресов ссылок ключевых слов в динамический сегмент памяти; или
если старые количества страниц составляют меньше, чем порог для количеств страниц, и новые количества страниц составляют меньше, чем порог для количеств страниц, то выполнения поиска в приостановленном сегменте памяти и перемещения адресов ссылок ключевых слов, времена планирования для которых в приостановленном сегменте памяти достигли текущего времени, в активный сегмент памяти.
В одном из вариантов осуществления, количества, разрешенные для добавления из динамического сегмента памяти, составляют больше, чем количества, разрешенные для добавления из базового сегмента памяти.
Фиг. 3 является схематичным представлением структуры системы в соответствии с примерным вариантом настоящего изобретения, причем система содержит:
модуль 311 запроса потока (треда), модуль 312 получения задания, исполнитель 313 загрузки, исполнитель 314 документа, модуль 315 счета и модуль 316 памяти данных, располагающиеся на выполняющем обход узле 31; и
приоритетный сегмент 321 памяти, динамический сегмент 322 памяти, базовый сегмент 323 памяти, активный сегмент 3231 памяти, приостановленный сегмент 3232 памяти, модуль обновления 324 сегмента памяти, сегмент 325 памяти данных и базу 326 данных, располагающиеся на планирующей стороне 32.
В этом примере, модуль планирования и управления сегментами памяти (BucketScheduler) содержит приоритетный сегмент 321 памяти, динамический сегмент 322 памяти и базовый сегмент 323 памяти. Адреса ссылок вторичной загрузки, возвращенные выполняющим обход узлом, сохраняются в приоритетном сегменте 321 памяти, и эти URL удаляются из сегмента памяти после завершения планирования. URL, составленные из ключевых слов в каждом вебсайте, сохраняются в динамическом сегменте 322 памяти, и эти URL будут производить новые URL в соответствии с результатами, возвращенными модулем счета. Производные URL не будут сохраняться, но будут планироваться вместе с URL в динамическом сегменте памяти. URL, составленные из ключевых слов в каждом вебсайте, также сохраняются в общем сегменте памяти, но не производят новых URL. Общий сегмент 323 памяти подразделяется на две группы, т.е. активный сегмент 3231 памяти и приостановленный сегмент 3232 памяти. URL в активном сегменте 3231 памяти будут ранжированы в соответствии с временами планирования, и URL с более ранними временами планирования, будут планироваться раньше. Напротив, URL в приостановленном сегменте 3232 памяти не будут планироваться. URL в этих двух сегментах памяти будут обмениваться друг с другом. После того как планирующая сторона принимает запрос задания от выполняющего обход узла, модуль планирования и управления сегментами памяти будет извлекать соответствующие URL из сегментов памяти, чтобы конструировать задание для посылки к выполняющему обход узлу. Правило для конструирования задания состоит в следующем: Предположим, что размером задания является size=1000, количества URL в приоритетном сегменте памяти (PriorityBucket) соответствуют priorityBucket=300, и количества URL в динамическом сегменте памяти (DynamicBucket) соответствуют dynamicBucket=100, и средние количества страниц для каждого URL соответствуют page=5, и количества URL в общем сегменте памяти (CommonBucket) соответствуют commonBucket=500, получаем URL из приоритетного сегмента памяти сначала с оставшимся размером задания, равным remainSize=700, и затем получаем URL из динамического сегмента памяти с оставшимся размером задания, равным remainSize=700-100*5=200, и, наконец, получаем URL из общего сегмента памяти, и если количества URL в активном сегменте памяти в общем сегменте памяти составляют не больше, чем 200, конструируем все эти URL в задание при добавлении всех этих URL в приостановленный сегмент памяти, а если количества URL в активном сегменте памяти составляют больше, чем 200, то выбираем с 1-го по 200-ый URL, ранжированные по времени планирования, чтобы сконструировать задание, и добавляем эти URL в приостановленный сегмент памяти. Если планируемые времена для URL в приостановленном сегменте памяти достигаются, то они перемещаются в активный сегмент памяти.
Фиг. 4 является блок-схемой последовательности операций модуля планирования и управления сегментами памяти. В этом примере, priorityBucket соответствует количествам, разрешенным для добавления из приоритетного сегмента памяти, dynamicBucket× средние количества страниц для каждого URL соответствует количествам, разрешенным для добавления из динамического сегмента памяти, размер задания - priorityBucket - dynamicBucket× средние количества страниц для каждого URL соответствует количествам, разрешенным для добавления из базового сегмента памяти. Как показано на фиг. 4, способ содержит:
этап S401 получения URL из приоритетного сегмента памяти при удалении их из сегмента памяти и возврата, если задание заполнено, в противном случае выполнение этапа S402;
этап S402 получения URL из динамического сегмента памяти и вывода новых URL со страницами и возврата, если задание заполнено, в противном случае выполнение этапа S403;
этап S403 получения URL из активного сегмента памяти (общего сегмента памяти), изменения следующих времен планирования для этих URL и помещения их в приостановленный сегмент памяти.
Модуль счета располагается на выполняющей обход стороне. Выполняющий обход узел извлекает количества сегментов информации на вебсайте и интервал времени между первым сегментом информации и последним сегментом информации после того, как данные были запрошены, и переносит их в модуль счета. Модуль счета вычисляет количества страниц, которые могут генерироваться ключевым словом в пределах 30 минут в соответствии с этими данными, и переносит эти данные к планирующей стороне.
Модуль обновления 324 сегментов памяти (BucketUpdater) располагается на планирующей стороне 32, и его основной функцией является обновление URL в приоритетном сегменте 321 памяти, динамическом сегменте 322 памяти и базовом сегменте 323 памяти. Данные, извлеченные выполняющим обход узлом 31, включающие в себя адреса ссылок вторичной загрузки, детали информации и количества страниц, будут все переноситься в модуль обновления 324 сегментов памяти на планирующей стороне 32. Модуль обновления 324 сегментов памяти будет обновлять различные сегменты памяти в соответствии с типами этих данных после приема этих данных. Конкретный способ, как иллюстрируется на фиг. 5, содержит:
этап S510 проверки типа данных, выполнение этапа S520, если анализируемые данные являются адресами ссылок вторичной загрузки, выполнение этапа S530, если анализируемые данные являются деталями информации, и выполнение этапа S540, если анализируемые данные являются количествами страниц;
этап S520 вставки этих данных в приоритетный сегмент памяти (PriorityBucket) для планирования планировщиком;
этап S530 вставки этих данных в сегмент памяти данных (DataBucket) для получения стороной обслуживания;
этап S540 сравнения с ранее полученными количествами страниц, возврата без каких-либо операций, если количества страниц те же самые; а если количества страниц различны:
если старые количества страниц (oldPages) составляют не меньше, чем порог (ʺthresholdʺ может быть установлен самостоятельно и равен 3 в этой схеме), т.е. oldPages>=threshold, и новые количества страниц (newPages) также составляют не меньше, чем порог, т.е. newPages>=threshold, то выполнение этапа S541;
если oldPages>=threshold, но newPages<threshold, то выполнение этапа S542;
если oldPages<threshold, но newPages>=threshold, то выполнение этапа S543;
если oldPages<threshold, но newPages<threshold, то выполнение этапа S544;
этап S541 изменения только количеств страниц, не требуя обмена сегментов памяти, поскольку URL в текущий момент находятся в динамическом сегменте памяти;
этап S542 перемещения URL в активный сегмент памяти, поскольку URL в текущий момент находятся в динамическом сегменте памяти;
этап S543 перемещения URL в динамический сегмент памяти, поскольку URL в текущий момент находятся в общем сегменте памяти; и
этап S544 сканирования приостановленного сегмента памяти, поскольку URL в текущий момент находятся в общем сегменте памяти и даже, вероятно, в приостановленном сегменте памяти, и добавление URL в приостановленном сегменте памяти, для которых наступили времена планирования, в активный сегмент памяти.
Вышеуказанные варианты осуществления только описывают различные режимы реализации настоящего изобретения и представлены в деталях, однако они не могут толковаться, чтобы ограничивать объем защиты настоящего изобретения. Следует отметить, что специалист в данной области техники может выполнить многочисленные изменения и усовершенствования без отклонения от концепции настоящего изобретения, и все они принадлежат к объему защиты настоящего изобретения. Поэтому объем патентной защиты настоящего изобретения должен определяться на основе приложенной формулы изобретения.

Claims (114)

1. Способ для планирования Web-обходчиков в соответствии с поиском по ключевым словам, отличающийся тем, что содержит:
этап (12) приема планирующей стороной команды запроса задания, посланной выполняющим обход узлом;
этап (13) получения планирующей стороной адреса ссылки вторичной загрузки из приоритетного сегмента памяти, который хранит адреса ссылок вторичной загрузки, генерации заданий, добавления заданий в список заданий и, если достигнуты количества, разрешенные для добавления в список заданий из приоритетного сегмента памяти, выполнение этапа (16), в противном случае выполнение этапа (14), при этом адреса ссылок вторичной загрузки являются адресами ссылок, которые требуют вторичной загрузки, полученными из анализа просмотренных страниц, обход которых выполнен выполняющим обход узлом, в соответствии с заданием в списке заданий;
этап (14) получения планирующей стороной адресов ссылок ключевых слов из динамического сегмента памяти, который хранит адреса многостраничных ссылок ключевых слов, вывода адресов производных ссылок количеств страниц, соответствующих адресам ссылок ключевых слов, генерации заданий количеств страниц в соответствии с адресами производных ссылок количеств страниц, добавления заданий количеств страниц в список заданий и, если количества, разрешенные для добавления в список заданий из динамического сегмента памяти, достигнуты, то выполнение этапа (16), в противном случае выполнение этапа (15), при этом адреса ссылок ключевых слов являются адресами ссылок страниц результатов поиска, сгенерированных в целевом веб-сайте в соответствии с ключевым словом, и страницы результатов поиска, соответствующие адресам ссылок ключевых слов в динамическом сегменте памяти, составляют количества страниц не меньше, чем предварительно установленный порог для количеств страниц, который не меньше чем 2;
этап (15) получения планирующей стороной адреса ссылки ключевого слова из базового сегмента памяти, который хранит адреса ссылок ключевых слов, генерации заданий, добавления сгенерированных заданий в список заданий, и если количества, разрешенные для добавления в список заданий из базового сегмента памяти, достигнуты, то выполнение этапа (16), при этом адреса ссылок ключевых слов являются адресами ссылок страниц результатов поиска, сгенерированных в целевом веб-сайте в соответствии с ключевым словом, и страницы результатов поиска, соответствующие адресам ссылок ключевых слов в базовом сегменте памяти, составляют количества страниц не меньше, чем предварительно установленный порог для количеств страниц, который не меньше чем 2; и
этап (16) возврата планирующей стороной списка заданий к выполняющему обход узлу, при этом выполняющий обход узел выполняет задание из списка заданий в соответствии с принятым списком заданий.
2. Способ для планирования Web-обходчиков в соответствии с поиском по ключевым словам по п. 1, отличающийся тем, что этап (13) конкретно содержит:
получение адреса ссылки вторичной загрузки из приоритетного сегмента памяти, который хранит адреса ссылок вторичной загрузки;
генерацию заданий;
добавление сгенерированных заданий в список заданий;
удаление адресов ссылок вторичной загрузки, для которых было сгенерировано задание, из приоритетного сегмента памяти; и
если количества, разрешенные для добавления в список заданий из приоритетного сегмента памяти, достигнуты, то выполнение этапа (16),
в противном случае, если приоритетный сегмент памяти дополнительно хранит адреса ссылок вторичной загрузки, то выполнение этапа (13), и
если все адреса ссылок вторичной загрузки удалены из приоритетного сегмента памяти, то выполнение этапа (14).
3. Способ для планирования Web-обходчиков в соответствии с поиском по ключевым словам по п. 1, отличающийся тем, что этап (14) конкретно содержит:
получение незапланированных адресов ссылок ключевых слов из динамического сегмента памяти, который хранит адреса ссылок ключевых слов;
вывод адресов производных ссылок количеств страниц, соответствующих адресам ссылок ключевых слов;
генерацию заданий количеств страниц в соответствии с адресами производных ссылок количеств страниц и добавление заданий в список заданий;
установку состояний адресов ссылок ключевых слов, для которых были сгенерированы задания, в запланированные; и
если количества, разрешенные для добавления в список заданий из динамического сегмента памяти, достигнуты, то выполнение этапа (16), и установку состояний всех адресов ссылок ключевых слов в динамическом сегменте памяти в незапланированные,
в противном случае, если динамический сегмент памяти дополнительно хранит незапланированные адреса ссылок ключевых слов, то выполнение этапа (14), и
если динамический сегмент памяти не хранит незапланированные адреса ссылок ключевых слов, то выполнение этапа (15).
4. Способ для планирования Web-обходчиков в соответствии с поиском по ключевым словам по п. 1, отличающийся тем, что базовый сегмент памяти содержит активный сегмент памяти и приостановленный сегмент памяти;
этап (15) конкретно содержит:
получение адреса ссылки ключевого слова с самым ранним временем планирования из активного сегмента памяти, который хранит адреса ссылок ключевых слов, генерацию заданий и добавление сгенерированных заданий в список заданий, и
увеличение времен планирования для адресов ссылок ключевых слов, для которых были сгенерированы задания, на предварительно установленное увеличение времени планирования и затем перемещение их в приостановленный сегмент памяти; и
если количества, разрешенные для добавления в список заданий из базового сегмента памяти, достигнуты, то выполнение этапа (16),
в противном случае, если активный сегмент памяти дополнительно содержит адреса ссылок ключевых слов, то выполнение этапа (15), и
если активный сегмент памяти не хранит адресов ссылок ключевых слов, то выполнение этапа (16).
5. Способ для планирования Web-обходчиков в соответствии с поиском по ключевым словам по п. 1, отличающийся тем, что дополнительно содержит:
обход выполняющим обход узлом просматриваемых страниц в соответствии с заданием в списке заданий, анализ просмотренных страниц для получения данных анализа, включающих в себя адреса ссылок вторичной загрузки, детали информации или количества страниц, и посылку данных анализа к планирующей стороне;
прием планирующей стороной данных анализа;
если данные анализа являются адресами ссылок вторичной загрузки, то помещение адресов ссылок вторичной загрузки в приоритетный сегмент памяти;
если данные анализа являются деталями информации, то помещение деталей информации в сегмент памяти данных;
если данные анализа являются количествами страниц, то настройку адресов ссылок ключевых слов, соответствующих количеству страниц в динамическом сегменте памяти и базовом сегменте памяти.
6. Способ для планирования Web-обходчиков в соответствии с поиском по ключевым словам по п. 5, отличающийся тем, что настройка адресов ссылок ключевых слов, соответствующих количеству страниц в динамическом сегменте памяти и базовом сегменте памяти планирующей стороной, конкретно содержит:
установку количеств страниц, принятых в текущий момент, в качестве новых количеств страниц, и установку количеств страниц, принятых ранее для тех же самых адресов ссылок ключевых слов, в качестве старых количеств страниц; и
если старые количества страниц не согласуются с новыми количествами страниц:
если старые количества страниц составляют не меньше, чем порог для количеств страниц, и новые количества страниц составляют не меньше, чем порог для количеств страниц, то изменение соответствующих количеств страниц, соответствующих адресам ссылок ключевых слов, на новые количества страниц; или
если старые количества страниц составляют не меньше, чем порог для количеств страниц, и новые количества страниц составляют меньше, чем порог для количеств страниц, то перемещение соответствующих адресов ссылок ключевых слов в базовый сегмент памяти; или
если старые количества страниц составляют меньше, чем порог для количеств страниц, и новые количества страниц составляют не меньше, чем порог для количеств страниц, то перемещение соответствующих адресов ссылок ключевых слов в динамический сегмент памяти.
7. Способ для планирования Web-обходчиков в соответствии с поиском по ключевым словам по п. 4, отличающийся тем, что содержит:
обход выполняющим обход узлом просматриваемых страниц в соответствии с заданием в списке заданий, анализ просмотренных страниц для получения данных анализа, включающих в себя адреса ссылок вторичной загрузки, детали информации или количества страниц, и посылку данных анализа к планирующей стороне;
прием планирующей стороной данных анализа;
если данные анализа являются адресами ссылок вторичной загрузки, то помещение адресов ссылок вторичной загрузки в приоритетный сегмент памяти;
если данные анализа являются деталями информации, то помещение деталей информации в сегмент памяти данных; и
если данные анализа являются количествами страниц, то установку количеств страниц, принятых в текущий момент, в качестве новых количеств страниц, и установку количеств страниц, принятых ранее для тех же самых адресов ссылок ключевых слов, в качестве старых количеств страниц; и если старые количества страниц не согласуются с новыми количествами страниц:
если старые количества страниц составляют не меньше, чем порог для количеств страниц, и новые количества страниц составляют не меньше, чем порог для количеств страниц, то изменение соответствующих количеств страниц, соответствующих адресам ссылок ключевых слов, на новые количества страниц; или
если старые количества страниц составляют не меньше, чем порог для количеств страниц, и новые количества страниц составляют меньше, чем порог для количеств страниц, то перемещение соответствующих адресов ссылок ключевых слов в активный сегмент памяти; или
если старые количества страниц составляют меньше, чем порог для количеств страниц, и новые количества страниц составляют не меньше, чем порог для количеств страниц, то перемещение соответствующих адресов ссылок ключевых слов в динамический сегмент памяти; или
если старые количества страниц составляют меньше, чем порог для количеств страниц, и новые количества страниц составляют меньше, чем порог для количеств страниц, то поиск в приостановленном сегменте памяти и перемещение адресов ссылок ключевых слов, времена планирования для которых в приостановленном сегменте памяти достигли текущего времени, в активный сегмент памяти.
8. Способ для планирования Web-обходчиков в соответствии с поиском по ключевым словам по п. 1, отличающийся тем, что количества, разрешенные для добавления из динамического сегмента памяти, составляют больше, чем количества, разрешенные для добавления из базового сегмента памяти.
9. Система для планирования Web-обходчиков в соответствии с поиском по ключевым словам, отличающаяся тем, что содержит планирующую сторону и по меньшей мере один выполняющий обход узел, который осуществляет связь с планирующей стороной,
планирующая сторона содержит:
модуль приема команды запроса задания для приема команды запроса задания, посланной выполняющим обход узлом;
модуль генерации заданий приоритетного сегмента памяти для получения адреса ссылки вторичной загрузки из приоритетного сегмента памяти, который хранит адреса ссылок вторичной загрузки, генерации заданий и добавления сгенерированных заданий в список заданий, и если достигнуты количества, разрешенные для добавления в список заданий из приоритетного сегмента памяти, то исполняется модуль возврата списка заданий, в противном случае исполняется модуль генерации заданий динамического сегмента памяти, при этом адреса ссылок вторичной загрузки являются адресами ссылок, которые требуют вторичной загрузки, полученными из анализа просмотренных страниц, обход которых выполнен выполняющим обход узлом в соответствии с заданием в списке заданий;
модуль генерации заданий динамического сегмента памяти для получения адресов ссылок ключевых слов из динамического сегмента памяти, который хранит адреса многостраничных ссылок ключевых слов, вывода адресов производных ссылок количеств страниц, соответствующих адресам ссылок ключевых слов, генерации заданий количеств страниц в соответствии с адресами производных ссылок количеств страниц, добавления заданий количеств страниц в список заданий, и если количества, разрешенные для добавления в список заданий из динамического сегмента памяти, достигнуты, то исполняется модуль возврата списка заданий, в противном случае исполняется модуль генерации заданий динамического сегмента памяти, при этом адреса ссылок ключевых слов являются адресами ссылок страниц результатов поиска, сгенерированных в целевом вебсайте в соответствии с ключевым словом, и страницы результатов поиска, соответствующие адресам ссылок ключевых слов в динамическом сегменте памяти, составляют количества страниц не меньше, чем предварительно установленный порог для количеств страниц, который не меньше чем 2;
модуль генерации заданий базового сегмента памяти для получения адреса ссылки ключевого слова из базового сегмента памяти, который хранит адреса ссылок ключевых слов, генерации заданий, добавления сгенерированных заданий в список заданий, и если количества, разрешенные для добавления в список заданий из базового сегмента памяти, достигнуты, то исполняется модуль возврата списка заданий, при этом адреса ссылок ключевых слов являются адресами ссылок страниц результатов поиска, сгенерированных в целевом вебсайте в соответствии с ключевым словом, и страницы результатов поиска, соответствующие адресам ссылок ключевых слов в базовом сегменте памяти, составляют количества страниц не меньше, чем предварительно установленный порог для количеств страниц, который не меньше чем 2; и
модуль возврата списка заданий для возврата списка заданий к выполняющему обход узлу;
и выполняющий обход узел содержит:
модуль посылки команды запроса задания для посылки команды запроса задания к планирующей стороне, и
модуль выполнения задания для выполнения задания из списка заданий в соответствии с принятым списком заданий.
10. Система для планирования Web-обходчиков в соответствии с поиском по ключевым словам по п. 9, отличающаяся тем, что
модуль генерации заданий приоритетного сегмента памяти конкретно используется для:
получения адреса ссылки вторичной загрузки из приоритетного сегмента памяти, который хранит адреса ссылок вторичной загрузки;
генерации заданий;
добавления сгенерированных заданий в список заданий и
удаления адресов ссылок вторичной загрузки, для которых было сгенерировано задание, из приоритетного сегмента памяти;
и
если количества, разрешенные для добавления в список заданий из приоритетного сегмента памяти, достигнуты, то исполняется модуль возврата списка заданий,
в противном случае, если приоритетный сегмент памяти дополнительно хранит адреса ссылок вторичной загрузки, то исполняется модуль генерации заданий приоритетного сегмента памяти, и
если все адреса ссылок вторичной загрузки удалены из приоритетного сегмента памяти, то исполняется модуль генерации заданий динамического сегмента памяти.
11. Система для планирования Web-обходчиков в соответствии с поиском по ключевым словам по п. 9, отличающаяся тем, что
модуль генерации заданий динамического сегмента памяти конкретно используется для:
получения незапланированных адресов ссылок ключевых слов из динамического сегмента памяти, который хранит адреса ссылок ключевых слов;
вывода адресов производных ссылок количеств страниц соответствующих адресам ссылок ключевых слов;
генерации заданий количеств страниц в соответствии с адресами производных ссылок количеств страниц и добавления заданий в список заданий и
установки состояний адресов ссылок ключевых слов, для которых были сгенерированы задания, в запланированные;
и
если количества, разрешенные для добавления в список заданий из динамического сегмента памяти, достигнуты, то исполняется модуль возврата списка заданий, и состояния всех адресов ссылок ключевых слов в динамическом сегменте памяти устанавливаются в незапланированные,
в противном случае, если динамический сегмент памяти дополнительно хранит незапланированные адреса ссылок ключевых слов, то исполняется модуль генерации заданий динамического сегмента памяти, и
если динамический сегмент памяти не хранит незапланированные адреса ссылок ключевых слов, то исполняется модуль генерации заданий базового сегмента памяти.
12. Система для планирования Web-обходчиков в соответствии с поиском по ключевым словам по п. 9, отличающаяся тем, что
базовый сегмент памяти содержит активный сегмент памяти и приостановленный сегмент памяти;
модуль генерации заданий базового сегмента памяти конкретно используется для:
получения адреса ссылки ключевого слова с самым ранним временем планирования из активного сегмента памяти, который хранит адреса ссылок ключевых слов, генерации заданий и добавления сгенерированных заданий в список заданий, и
увеличения времен планирования для адресов ссылок ключевых слов, для которых были сгенерированы задания, на предварительно установленное увеличение времени планирования и затем перемещения их в приостановленный сегмент памяти; и
если количества, разрешенные для добавления в список заданий из базового сегмента памяти, достигнуты, то исполняется модуль возврата списка заданий,
в противном случае, если активный сегмент памяти дополнительно хранит адреса ссылок ключевых слов, то исполняется модуль генерации заданий базового сегмента памяти, и
если активный сегмент памяти не хранит адресов ссылок ключевых слов, то исполняется модуль возврата списка заданий.
13. Система для планирования Web-обходчиков в соответствии с поиском по ключевым словам по п. 9, отличающаяся тем, что
модуль выполнения задания конкретно используется для: обхода просматриваемых страниц в соответствии с заданием в списке заданий, анализа просмотренных страниц для получения данных анализа, включающих в себя адреса ссылок вторичной загрузки, детали информации или количества страниц, и посылки данных анализа к планирующей стороне;
и планирующая сторона дополнительно содержит модуль приема данных анализа для приема данных анализа:
если данные анализа являются адресами ссылок вторичной загрузки, то помещение адресов ссылок вторичной загрузки в приоритетный сегмент памяти;
если данные анализа являются деталями информации, то помещение деталей информации в сегмент памяти данных;
если данные анализа являются количествами страниц, то настройки адресов ссылок ключевых слов, соответствующих количеству страниц в динамическом сегменте памяти и базовом сегменте памяти.
14. Система для планирования Web-обходчиков в соответствии с поиском по ключевым словам по п. 13, отличающаяся тем, что настройка адресов ссылок ключевых слов, соответствующих количеству страниц в динамическом сегменте памяти и базовом сегменте памяти, посредством модуля приема данных анализа конкретно содержит:
установку количеств страниц, принятых в текущий момент, в качестве новых количеств страниц, и установку количеств страниц, принятых ранее для тех же самых адресов ссылок ключевых слов, в качестве старых количеств страниц; и
если старые количества страниц не согласуются с новыми количествами страниц:
если старые количества страниц составляют не меньше, чем порог для количеств страниц, и новые количества страниц составляют не меньше, чем порог для количеств страниц, то изменение соответствующих количеств страниц, соответствующих адресам ссылок ключевых слов, на новые количества страниц; или
если старые количества страниц составляют не меньше, чем порог для количеств страниц, и новые количества страниц составляют меньше, чем порог для количеств страниц, то перемещение соответствующих адресов ссылок ключевых слов в базовый сегмент памяти; или
если старые количества страниц составляют меньше, чем порог для количеств страниц, и новые количества страниц составляют не меньше, чем порог для количеств страниц, то перемещение соответствующих адресов ссылок ключевых слов в динамический сегмент памяти.
15. Система для планирования Web-обходчиков в соответствии с поиском по ключевым словам по п. 12, отличающаяся тем, что
модуль выполнения задания конкретно используется для:
обхода просматриваемых страниц в соответствии с заданием в списке заданий, анализа просмотренных страниц для получения данных анализа, включающих в себя адреса ссылок вторичной загрузки, детали информации или количества страниц, и посылки данных анализа к планирующей стороне;
и планирующая сторона дополнительно содержит модуль приема данных анализа, используемый для приема данных анализа:
если данные анализа являются адресами ссылок вторичной загрузки, то помещение адресов ссылок вторичной загрузки в приоритетный сегмент памяти;
если данные анализа являются деталями информации, то помещение деталей информации в сегмент памяти данных; и
если данные анализа являются количествами страниц, то установка количеств страниц, принятых в текущий момент, в качестве новых количеств страниц, установка количеств страниц, принятых ранее для тех же самых адресов ссылок ключевых слов, в качестве старых количеств страниц; и если старые количества страниц не согласуются с новыми количествами страниц:
если старые количества страниц составляют не меньше, чем порог для количеств страниц, и новые количества страниц составляют не меньше, чем порог для количеств страниц, то изменения соответствующих количеств страниц, соответствующих адресам ссылок ключевых слов, на новые количества страниц; или
если старые количества страниц составляют не меньше, чем порог для количеств страниц, и новые количества страниц составляют меньше, чем порог для количеств страниц, то перемещения соответствующих адресов ссылок ключевых слов в активный сегмент памяти; или
если старые количества страниц составляют меньше, чем порог для количеств страниц, и новые количества страниц составляют не меньше, чем порог для количеств страниц, то перемещения соответствующих адресов ссылок ключевых слов в динамический сегмент памяти; или
если старые количества страниц составляют меньше, чем порог для количеств страниц, и новые количества страниц составляют меньше, чем порог для количеств страниц, то выполнения поиска в приостановленном сегменте памяти и перемещения адресов ссылок ключевых слов, времена планирования для которых в приостановленном сегменте памяти достигли текущего времени, в активный сегмент памяти.
16. Система для планирования Web-обходчиков в соответствии с поиском по ключевым словам по п. 9, отличающаяся тем, что количества, разрешенные для добавления из динамического сегмента памяти, составляют больше, чем количества, разрешенные для добавления из базового сегмента памяти.
RU2016132573A 2014-01-09 2015-01-09 Способ и устройство для планирования web-обходчиков в соответствии с поиском по ключевым словам RU2645266C1 (ru)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201410011079.8A CN103761279B (zh) 2014-01-09 2014-01-09 一种基于关键词检索的网络爬虫调度方法及系统
CN201410011079.8 2014-01-09
PCT/CN2015/070475 WO2015103997A1 (zh) 2014-01-09 2015-01-09 一种基于关键词检索的网络爬虫调度方法及系统

Publications (1)

Publication Number Publication Date
RU2645266C1 true RU2645266C1 (ru) 2018-02-19

Family

ID=50528516

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2016132573A RU2645266C1 (ru) 2014-01-09 2015-01-09 Способ и устройство для планирования web-обходчиков в соответствии с поиском по ключевым словам

Country Status (4)

Country Link
US (1) US10185771B2 (ru)
CN (1) CN103761279B (ru)
RU (1) RU2645266C1 (ru)
WO (1) WO2015103997A1 (ru)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103761279B (zh) 2014-01-09 2017-02-08 北京京东尚科信息技术有限公司 一种基于关键词检索的网络爬虫调度方法及系统
CN105989151B (zh) * 2015-03-02 2019-09-06 阿里巴巴集团控股有限公司 网页抓取方法及装置
CN107784036A (zh) * 2016-08-31 2018-03-09 北京国双科技有限公司 网络爬虫系统和基于网络爬虫系统的数据处理方法
US20180189409A1 (en) * 2016-12-30 2018-07-05 Caavo Inc Targeted crawler to develop and/or maintain a searchable database of media content across multiple content providers
CN107480297A (zh) * 2017-08-30 2017-12-15 福建中金在线信息科技有限公司 一种文章收录方法及装置
CN110309403B (zh) * 2018-03-05 2022-11-04 百度在线网络技术(北京)有限公司 用于抓取数据的方法和装置
GB2572544A (en) * 2018-03-27 2019-10-09 Innoplexus Ag System and method of crawling a wide area computer network for retrieving contextual information
CN108647342A (zh) * 2018-05-14 2018-10-12 佛山市真觉网络科技有限公司 一种优化百度蜘蛛抓取的方法
CN111371705B (zh) * 2020-02-24 2023-09-12 维沃移动通信有限公司 一种下载任务执行方法及电子设备
CN111460254B (zh) * 2020-03-24 2023-05-05 南阳柯丽尔科技有限公司 一种基于多线程的网页爬取方法、装置、存储介质及设备
CN113965555B (zh) * 2021-10-21 2024-04-12 北京值得买科技股份有限公司 一种参数化爬虫下载方法、装置、设备及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020099700A1 (en) * 1999-12-14 2002-07-25 Wen-Syan Li Focused search engine and method
US7454430B1 (en) * 2004-06-18 2008-11-18 Glenbrook Networks System and method for facts extraction and domain knowledge repository creation from unstructured and semi-structured documents
RU2368943C2 (ru) * 2004-04-30 2009-09-27 Майкрософт Корпорейшн Модульный формат документов
KR20110095236A (ko) * 2008-09-10 2011-08-24 성준형 디바이스 인터페이싱을 위한 다중모드 조음 통합
US20150066895A1 (en) * 2004-06-18 2015-03-05 Glenbrook Networks System and method for automatic fact extraction from images of domain-specific documents with further web verification

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7305610B1 (en) * 2000-04-06 2007-12-04 Google, Inc. Distributed crawling of hyperlinked documents
US7769742B1 (en) * 2005-05-31 2010-08-03 Google Inc. Web crawler scheduler that utilizes sitemaps from websites
US8875249B2 (en) * 2006-03-01 2014-10-28 Oracle International Corporation Minimum lifespan credentials for crawling data repositories
CN100520778C (zh) * 2006-07-25 2009-07-29 腾讯科技(深圳)有限公司 一种互联网主题文件搜索方法、爬虫系统和搜索引擎
US20090254512A1 (en) * 2008-04-03 2009-10-08 Yahoo! Inc. Ad matching by augmenting a search query with knowledge obtained through search engine results
TW201013433A (en) * 2008-09-19 2010-04-01 Esobi Inc Filtering method for the same or similar documents
WO2011135456A2 (en) * 2010-04-28 2011-11-03 Patrick Frankham Systems and methods for using online resources to design a clinical study and recruit participants
US9246932B2 (en) * 2010-07-19 2016-01-26 Sitelock, Llc Selective website vulnerability and infection testing
US8868541B2 (en) * 2011-01-21 2014-10-21 Google Inc. Scheduling resource crawls
WO2013119934A1 (en) * 2012-02-09 2013-08-15 Aol Inc. Systems and methods for testing online systems and content
CN102646129B (zh) * 2012-03-09 2013-12-04 武汉大学 一种主题相关的分布式网络爬虫系统
CN103279492B (zh) * 2013-04-28 2016-12-28 乐视网信息技术(北京)股份有限公司 一种抓取网页的方法和装置
CN103761279B (zh) * 2014-01-09 2017-02-08 北京京东尚科信息技术有限公司 一种基于关键词检索的网络爬虫调度方法及系统

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020099700A1 (en) * 1999-12-14 2002-07-25 Wen-Syan Li Focused search engine and method
RU2368943C2 (ru) * 2004-04-30 2009-09-27 Майкрософт Корпорейшн Модульный формат документов
US7454430B1 (en) * 2004-06-18 2008-11-18 Glenbrook Networks System and method for facts extraction and domain knowledge repository creation from unstructured and semi-structured documents
US20150066895A1 (en) * 2004-06-18 2015-03-05 Glenbrook Networks System and method for automatic fact extraction from images of domain-specific documents with further web verification
KR20110095236A (ko) * 2008-09-10 2011-08-24 성준형 디바이스 인터페이싱을 위한 다중모드 조음 통합

Also Published As

Publication number Publication date
CN103761279B (zh) 2017-02-08
WO2015103997A1 (zh) 2015-07-16
CN103761279A (zh) 2014-04-30
US10185771B2 (en) 2019-01-22
US20160328475A1 (en) 2016-11-10

Similar Documents

Publication Publication Date Title
RU2645266C1 (ru) Способ и устройство для планирования web-обходчиков в соответствии с поиском по ключевым словам
US9785714B2 (en) Method and/or system for searching network content
JP4806201B2 (ja) 決定理論的ウェブクローリングおよびウェブページ変更予測
US9229989B1 (en) Using resource load times in ranking search results
US8346755B1 (en) Iterative off-line rendering process
US20110173177A1 (en) Sightful cache: efficient invalidation for search engine caching
US8095545B2 (en) System and methodology for a multi-site search engine
CN103914529B (zh) 搜索展现方法和装置
US7979417B1 (en) Embedded communication of link information
US7805426B2 (en) Defining a web crawl space
CN102761627A (zh) 基于终端访问统计的云网址推荐方法及系统及相关设备
JP2014517435A (ja) 検索方法および装置
US9183299B2 (en) Search engine for ranking a set of pages returned as search results from a search query
US20100250516A1 (en) Method and apparatus for web crawling
US20090006354A1 (en) System and method for knowledge based search system
US20140059062A1 (en) Incremental updating of query-to-resource mapping
CN112579853A (zh) 一种对爬取链接排序的方法、装置及存储介质
Wang et al. Ts-ids algorithm for query selection in the deep web crawling
Mahale et al. Advanced web crawler for deep web interface using binary vector & page rank
Patil et al. Implementation of enhanced web crawler for deep-web interfaces
JPWO2008102727A1 (ja) インデックス生成装置・システム・プログラム・方法、検索装置・システム・プログラム・方法
EP2662785A2 (en) A method and system for non-ephemeral search
JP6042162B2 (ja) ウェブ検索装置、ウェブ検索方法及びプログラム
JP5147790B2 (ja) クローラ調整装置及びクローラ調整方法
JP2011129146A (ja) ネットワーク上の情報を自動検索する情報検索システム、情報検索装置、情報検索方法、記録媒体及びプログラム