Содержание к диссертации
Введение
ГЛАВА 1 Информационно-поисковые системы 14
1.1. Процесс информационного поиска 14
1.2. Информационно-поисковый язык 17
1.3. Индексирование 19
1.4. Виды информационного поиска 20
1.5. ИПС Интернета 24
1.5.1. WWW-технология 25
1.5.2. Проблемы в области ИП и создания ИПС Интернета 26
1.5.3. Персонализация поиска в ИПС 29
1.5.4. Современные поисковые системы Интернета 31
1.6. Выводы по главе 1 46
ГЛАВА 2 Интеллектуализация и персонализация поиска в ИПС 48
2.1. ИПС как мультиагентная система 48
2.2. Основные понятия МАС в распределенном искусственном интеллекте 54
2.3. Проектирование поисковой МАС 57
2.4. Структура и схема функционирования поисковой МАС 59
2.4.1. Интерфейсный агент 59
2.4.2. Поисковый агент 61
2.4.3. Агент проверки существования страниц 62
2.4.4. Агент ранжирования страниц 63
2.5. Интеллектуализация и персонализация поиска в ИПС на основе прецедентного подхода 64
2.6. Способы представления и извлечения прецедентов 68
2.7. Извлечение прецедентов методом ближайшего соседа (ближайших соседей) 72
2.8. Повторное использование прецедентов 78
2.9. Адаптация и применение прецедентов 80
2.10. Сохранение прецедентов (обучение) 81
2.11. Выводы по главе 2 82
ГЛАВА 3 Архитектура и функциональные возможности ипс на основе прецедентов 84
3.1. Пользовательский интерфейс 86
3.2. База Данных (индекс) 87
3.2.1. Структура базы данных (индекса) ИПС 87
3.2.2. Индексирование документов в ИПС 91
3.3. Программа поиска 98
3.4. Блока управления 99
3.5. CBR-агенты 100
3.6. Алгоритмы, реализующие различные схемы взаимодействия агентов в ИПС на основе прецедентов 100
3.6.1. Схемы взаимодействия мобильных агентов в рамках предложенной мультиагентной архитектуры ИПС 100
3.6.2. Алгоритм, описывающий действия агента управления при выполнении поиска результатов на запрос пользователя 103
3.6.3. Алгоритм поиска по прецедентам CBR-агентами 105
3.6.4. Алгоритм формирования результатов поиска на основе прецедентов 106
3.7. Выводы по главе 3 107
ГЛАВА 4 Программная реализация прототипа ипс на основе прецедентов «stray search» 108
4.1. Использованные технологии 108
4.1.1. Asp.net MVC 3 108
4.1.2. ADO.NET Entity Framework 110
4.1.3. Windows Communication Foundation (WCF) 111
4.2. Структура ИПС «STRAY SEARCH» 113
4.2.1. SearchClient 117
4.2.2. ManagerAgent 118
4.2.3. LocalAgent 118
4.2.4. IndexDataAgent 119
4.2.5. RobotAgent 119
4.3. Реализация Web-сервисов 120
4.3.1. Создание контрактов 120
4.3.2. Выбор подходящей привязки 122
4.4. Реализация Web-приложения «STRAY SEARCH» 125
4.4.1. Создание моделей (Models) 125
4.4.2. Создание котроллеров (Controllers) 126
4.4.3. Создание Представлений (Views) 127
4.5. Применение и анализ эффективности разработанного прототипа ИПС на основе прецедентов 129
4.5.1. Пример выполнения пользовательского запроса к ИПС «STRAY SEARCH» 129
4.5.2. Анализ эффективности разработанного прототипа ИПС на основе прецедентов 133
4.5.2.1. Оценка интегрального показателя эффективности информационного поиска ИПС 133
4.5.2.2. Оценка эффективности работы ИПС «STRAY SEARCH» с использованием метрик качества ранжирования 138
4.6. Выводы по главе 4 141
Заключение 143
Литература 145
- Виды информационного поиска
- Основные понятия МАС в распределенном искусственном интеллекте
- Структура базы данных (индекса) ИПС
- Применение и анализ эффективности разработанного прототипа ИПС на основе прецедентов
Введение к работе
Актуальность темы исследования. На данный момент информационно-
поисковые системы (ИПС) стали основным поисковым инструментом,
который используется при поиске во всемирной сети Интернет. Однако
проблема повышения эффективности поиска в современных ИПС (поисковых
машинах Интернета) стоит очень серьезно, так как по запросу пользователя
зачастую выдается большое количество нерелевантных документов. Таким
образом, понятие релевантности является определяющим в ИПС, когда речь
идет о повышении эффективности поиска и качества получаемых результатов.
В настоящее время наблюдается устойчивая тенденция к интеллектуализации
ИПС и персонализации поиска. Именно таким путем идут сегодня крупные
компании на рынке поисковых систем Интернета (Google, Yandex, Yahoo!,
Bing и др.), активно внедряющие различные сервисы и инструменты
персонализации и интеллектуализации поиска. Указанные механизмы поиска
направлены на устранение основных недостатков традиционного контекстного
поиска по ключевым словам. На пути создания персонализированных
интеллектуальных ИПС (ИИПС) стоит много нерешенных проблем, но
разработка подобных систем весьма актуальна, так как они имеют целый ряд
преимуществ, но самое главное в том, что такие системы приближают нас к
решению проблемы выбора релевантной информации. Необходимо
подчеркнуть, что для повышения эффективности работы ИПС
интеллектуальные и персонализированные механизмы поиска должны применяться комплексно вместе с традиционными поисковыми средствами. Для обеспечения персонализации и интеллектуализации поиска в работе предлагается использовать методы искусственного интеллекта (ИИ) и, в частности, мультиагентный подход и методы правдоподобных рассуждений на основе прецедентов (CBR – Case-Based Reasoning). Выполненные исследования опираются на результаты работ в области конструирования ИПС и моделирования правдоподобных рассуждений в области ИИ Д.А. Поспелова, В.К. Финна, В.Н. Вагина, А.П. Еремеева, О.П. Кузнецова, Д.В. Ландэ, Г.С. Осипова, А.Б. Петровского, В.Б. Тарасова, И.Б. Фоминых, В.Ф. Хорошевского, и др., а также зарубежных ученых Р. Шенка (R. Schank), Р. Абельсона (R. Abelson), Д. Колоднера (J. Kolodner), К. Маннинга (C. Manning), П. Рагхавана (P. Raghavan), Х. Шютце (H. Schtz) и др.
Объектом исследования являются методы поиска информации в ИПС, включая поисковые машины Интернета. Предметом исследования являются методы и программные средства интеллектуализации и персонализации поиска в ИПС на основе прецедентов.
Целью работы является исследование и разработка методов и программных средств поиска информации для ИПС на основе прецедентного подхода. Для достижения указанной цели необходимо решить следующие задачи:
изучение основных характеристик и особенностей ИПС, а также различных методов поиска в ИПС;
анализ проблем построения ИПС Интернета и возможных путей их решения;
разработка методов интеллектуализации и персонализации ИПС на основе прецедентного подхода;
разработка мультиагентной архитектуры интеллектуальной ИПС на основе прецедентов;
разработка программного обеспечения прототипа ИПС на основе прецедентов.
Методы исследования. Поставленные задачи решаются с использованием методов дискретной математики, математической логики, искусственного интеллекта, методов правдоподобных рассуждений на основе прецедентов, мультиагентного подхода, теории программирования и теории информационного поиска.
Научная новизна исследования состоит в следующем:
-
предложен метод интеллектуализации и персонализации поиска на основе прецедентов, позволяющий объединить в себе различные подходы к решению данной задачи (как явные, так и неявные методы персонализации поиска) и снизить нагрузку на индекс (БД, сервер) поискового инструмента, а также упростить решение проблемы, связанной с обеспечением конфиденциальности данных;
-
предложена мультиагентная архитектура ИПС на основе прецедентов, расширяющая стандартную архитектуру ИПС средствами поиска и персонализации на основе прецедентов (CBR-агентами с распределенными библиотеками прецедентов (БП) и инструментами их взаимодействия), что обеспечивает выполнение альтернативного варианта поиска по прецедентам для снижения нагрузки на индекс ИПС и позволяет учесть персональную информацию пользователей для повышения точности ответа на их запросы;
-
разработаны модификации алгоритмов поиска решения на основе прецедентов, учитывающие специфику ИПС и реализующие различные схемы взаимодействия мобильных агентов при поиске в мультиагентной среде, включая механизмы формирования и оценки результатов поиска в ИПС на основе прецедентов, что позволяет снизить нагрузку на индекс ИПС и информационный шум при ответе на запросы пользователей. Практическая значимость работы заключается в создании программных
средств поиска на основе прецедентов, повышающих эффективность и расширяющих интеллектуальные возможности компьютерных систем на
примере распределенных ИПС Интернета, и реализации прототипа ИИПС.
Практическая значимость работы подтверждается использованием
разработанных в диссертации программных модулей, включая «Модуль персонализации поиска на основе прецедентов для информационно-поисковых систем», зарегистрированный в государственном реестре программ для ЭВМ (свидетельство о государственной регистрации программы для ЭВМ № 2016610379 от 11 января 2016 г.), в НИР кафедры ПМ, в том числе в работах по государственному заданию Министерства образования и науки Российской Федерации № 2.737.2014/К «Методы и инструментальные средства моделирования рассуждений в интеллектуальных системах поддержки принятия решений (СППР)», и в учебно-научном процессе кафедры ПМ НИУ «МЭИ», о чем имеется акт о внедрении.
Достоверность научных результатов подтверждена теоретическими выкладками, данными компьютерного моделирования, а также сравнением полученных результатов с результатами, приведенными в научной литературе.
Апробация работы. Основные положения и результаты диссертации докладывались и обсуждались на 17-ой, 18-ой, 19-ой международных научно-технических конференциях аспирантов и студентов «Радиоэлектроника, электротехника и энергетика» в МЭИ (г. Москва, 2011-2013 г.г.), на тринадцатой национальной конференции по искусственному интеллекту КИИ-2012 (г. Белгород, 2012 г.).
Публикации. Основные результаты, полученные при выполнении диссертационной работы, опубликованы в 6 печатных работах и из них две в журнале, включенном в перечень ВАК ведущих рецензируемых научных журналов и изданий.
Структура и объем работы. Диссертация состоит из введения, 4 глав, заключения, списка использованной литературы (68 наименований) и 3 приложений. Диссертация содержит 152 страницы машинописного текста (без приложений), 34 рисунка и 3 таблицы.
Виды информационного поиска
Перед разработчиками поисковых систем и, в частности, поисковых машин Интернета встаёт большое количество проблем и их рассмотрению посвящено множество работ [1, 2, 15]. В данном параграфе сделана попытка обобщения проблем, которые стоят перед всеми исследователями и непосредственно влияют на решения при разработке ИПС Интернет [12, 15].
Возникающие перед исследователями проблемы можно разделить на три класса [16, 17]. В первый класс можно отнести проблемы, связанные с «природой» информационных ресурсов:
Большой объём информационных ресурсов. Размер накопленных человечеством в рамках Веб данных огромен и продолжает увеличиваться. Многими исследователями в данной области отмечается факт экспоненциального роста объёмов накапливаемой в рамках Веб информации. Разное время существования информационных ресурсов. Документы или файлы могут быть легко добавлены и также легко удалены в Веб. Для большинства членов сети Интернет эти манипуляции с файлами могут остаться незамеченными, но в целях обеспечения эффективного поиска необходимо отслеживание производимых изменений в содержимом информационных ресурсов. Тем самым, например, можно исключить попадания в результаты поиска неактуальных ссылок, т.е. ссылок на уже несуществующие ресурсы.
Разнородность информационных ресурсов. Данные информационных ресурсов в Веб разнотипны. Они создаются в различных форматах, имеют различную медиа «природу» (текст, звук, изображение), а также различаются по применяемым ЕЯ.
Динамичность изменения содержимого информационных ресурсов. Для пояснения этой проблемы достаточно вспомнить страницы сайтов с разделами «Новости» и «Объявления». В зависимости от активности владельца ресурса информация в этих разделах может меняться очень часто (каждые 5 минут) или редко (например, раз в год). Независимо от скорости изменения содержимого страницы её адрес для посетителей сайта остаётся прежним, благодаря чему возрастает вероятность выдать пользователю ИПС ссылку на ресурс с уже неактуальной информацией.
Различное «качество» и уровень «полезности» информационных ресурсов. Здесь под словом «качество» понимается широкий круг проблем, начиная с того, что в процесс создания многих ресурсов не привлекаются профессиональные программисты, дизайнеры, редакторы и заканчивая тем, что в сети очень много дублирующих друг друга ресурсов. Отдельным блоком можно выделить правовые и морально-этические вопросы, касающиеся качества публикуемой информации. «Скрытность» информационных ресурсов. В последнее время появились работы, в которых рассматривается проблема организации поиска по так называемому «скрытому Веб». Под словами «скрытый Веб» здесь понимаются информационные ресурсы для получения доступа, к которым нужно пройти сложную процедуру регистрации или сформировать с помощью предлагаемой разработчиками ресурса формы некий запрос. Однако на этапе регистрации и при составлении запросов возникают большие сложности. Например, они начинаются уже с того, что заранее не известны ни предлагаемые формы, ни смысл их полей ввода и, заканчивая тем, что нужно научиться «понимать» ответы систем на посланные запросы. А этап регистрации может состоять из нескольких стадий, что ещё больше усложняет задачу.
«Доступность» информационных ресурсов. Суть этой проблемы заключается в различном качестве коммуникационных связей между распределёнными по всему миру узлам и сегментам сети Интернет. Бывают моменты, когда узел по причинам плохого уровня связи с Интернет становится труднодоступен остальным членам сети, но при этом для корректного формирования результата ИП обязательно наличие информации, содержащейся на данном ресурсе.
Во второй класс объединяют проблемы, касающиеся нагрузки на различные элементы, участвующие во взаимодействии [17, 18]:
Минимизация нагрузки на информационный источник. Независимо от выбираемой стратегии сбора информации о доступных информационных ресурсах информационный источник (место хранения информационных ресурсов) будет нести потери вычислительной мощности при неэффективной нагрузке на его аппаратные ресурсы (например, создание нагрузки на дисковые накопители).
Минимизация нагрузки на каналы связи. Здесь следует вспомнить о том, что сбор информации о доступных ресурсах подразумевает перекачивание определённых объёмов информации от источника информации на узел сбора по существующим коммуникационным линиям. Если принять во внимание большие объёмы хранимой информации, то станет понятно, что перекачка со всех источников создаст довольно заметную нагрузку на каналы Интернет. Что вполне законно отражается на плате за использование этих самых каналов связи. Ещё нужно помнить о том, что каналы связи не имеют способности по первому же запросу увеличивать свою максимальную пропускную способность.
Оптимизация нагрузки на модули сбора и накопления информации. Рассматривая данную проблему, следует учитывать тот факт, что модуль сбора информации должен обрабатывать большие объёмы данных, приводя их в надлежащий вид пригодный для последующей работы и работы модуля создания индексов. Т.е. без должной оптимизации всех нюансов (алгоритмов, структур данных и т.п.) невозможно обеспечить эффективный поиск и накопление информации.
Основные понятия МАС в распределенном искусственном интеллекте
Адаптация поискового процесса к поисковым системам осуществляется за счёт повышения рейтинга поисковых систем, нашедших документы, в наибольшей степени соответствующие запросам пользователя. Этот выбор пользователь делает, просмотрев результаты поиска. Данное действие является необязательным, если пользователь не желает адаптировать поисковый процесс к поисковым системам, оставив системы равноправными.
Поисковые агенты взаимодействуют с конкретной поисковой системой, передают ей запросы пользователя и возвращают результаты её работы агенту проверки существования страниц. Под результатом работы поисковой системы подразумеваются ссылки на страницы в сети и описания этих страниц.
Поисковый агент является автономным, так как с пользователем не взаимодействует вообще. Обладает социальным поведением, поскольку взаимодействует с интерфейсным агентом, получая от него поисковое задание, и с агентами проверки существования страниц, передавая им результаты поиска. Поисковые агенты обладают реактивностью, так как адекватно реагируют на изменение формата данных поисковых систем, сообщая об этом разработчику. Агенты рассматриваемого типа имеют базовые знания, к которым относятся знания адресов поисковых систем, адресов формы поиска поисковых систем, форматов их выходных данных. Кроме всего перечисленного, поисковые агенты обладают обязательствами по отношению к интерфейсным агентам, обязуясь осуществить поиск по различным поисковым системам [45].
Проведение параллелей между метапоиском и методологией мультиверсионного программирования позволяет говорить в данном случае о повышении качества поиска за счёт применения методологии мультиверсионного программирования в поиске информации. Подробнее об этом речь идёт в [38, 46].
Агент проверки существования страниц является автономным, так как пользователь не принимает никакого участия в его работе. Данный агент обладает социальным поведением, взаимодействуя с поисковым агентом, получая от него результаты работы поисковой системы, и с агентом ранжирования страниц, передавая ему на анализ только существующие страницы. Обязательства данного агента перед поисковым агентом заключаются в отсеивании из общего числа найденных страниц несуществующие. Таким образом, агент проверки существования страниц играет роль поискового фильтра. На практике работа агента проверки существования страниц является наиболее требовательной к временным ресурсам, так как требует отправки запросов на большое количество серверов и ожидания ответов на эти запросы. Агент проверки существования страниц действует в соответствии со следующим алгоритмом: Агент ранжирования страниц строит совокупный рейтинг всех найденных существующих страниц, упорядочивая страницы в соответствии с номером их следования у поисковых агентов, отбрасывая повторные ссылки.
Агент ранжирования страниц является автономным, так как выполняет свои задачи без привлечения пользователя. Обладает социальным поведением, поскольку взаимодействует со всеми агентами проверки существования страниц, получая от них ссылки только на существующие из найденных страниц, и с интерфейсным агентом, передавая ему отранжированный список ссылок на страницы. Агент ранжирования страниц берёт на себя обязательства проранжировать страницы по релевантности запросу пользователя перед агентом проверки существования страниц [47].
Структура базы данных (индекса) ИПС
Интерфейс предоставляет возможность регистрации в ИПС новым пользователям и выполнения авторизации в системе для зарегистрированных пользователей. Диалог с пользователем осуществляется через web-браузер с помощью web-интерфейса, реализующего набор шаблонов запросов к системе (запросы на индексирование документов в ИПС и поисковые запросы к ИПС). Для каждого зарегистрированного пользователя доступна возможность сохранения и учета их личных предпочтений (прецедентов) при выполнении поиска в ИПС (персонализированный поиск). Для незарегистрированных пользователей ИПС предусмотрена возможность выполнения традиционного поиска по ключевым словам с использованием программы поиска ИПС. С помощью пользовательского интерфейса выполняется формирование списка URI для индексирования Интернет-ресурсов и списка поисковых запросов пользователей к ИПС, а также выдача результатов поиска пользователям.
Пользовательский интерфейс содержит следующие формы: форма для регистрации пользователя; форма для ввода поискового запроса с кнопкой Поиск (Найти, Search и т.п.); форма для вывода страниц с результатами поиска.
Поисковый запрос (англ. search query) - зачастую это набор ключевых слов или фраз, которые встречаются на искомых веб-страницах. В тоже время, пользователь может использовать расширенные возможности языка запросов ИПС для уточнения требуемого результата. Так используя оператор site: можно производить поиск указанных ключевых слов или фраз на определённом сайте. Например, ASP.Net – будет произведён поиск указанного запроса.
ИПС осуществляют поиск информации по копиям данных, хранимых в их индексах. Другими словами, для того чтобы веб-страница попала в результат поиска может понадобиться определённое время.
Сама же страница результата поиска представляет собой набор ссылок на веб-страницы (картинки, видео и т.д.). При этом ссылки упорядочены в зависимости от соответствия (релевантности) пользовательскому запросу. Релевантность документов может определяться ИПС по-разному, в соответствии с используемыми алгоритмами.
Большинство БД представляют собой совокупность связанных таблиц. В табличной структуре адрес данных определяется пересечением строк и столбцов. В БД столбцы называются полями, а строки – записями. Поля образуют структуру БД, а записи составляют информацию, которая в ней содержится [36– 38].
Структура БД сервера WWW. БД сервера (или, как ее еще называют, Website) – часть файловой системы [36], отведенная для размещения файлов, содержащих HTML-документы. Большинство современных файловых систем – это иерархические деревья, следовательно, БД WWW-сервера также является таким деревом. Для любой БД определено понятие единицы хранения – минимального объекта, к которому можно обратиться извне или который можно получить в качестве ответа на запрос. Стандартным объектом хранения в БД WWW-сервера является HTML-документ, которому соответствует обычный текстовый файл. Если обратиться к терминологии, которая принята в системах World Wide Web, то можно выделить следующие основные объекты.
Страница БД World Wide Web – это законченный информационный объект, который отображается программой-клиентом пользователя при обращении к информационному ресурсу World Wide Web по универсальному идентификатору этого ресурса (URL). БД World Wide Web (Website) – набор страниц БД World Wide Web. При более подробном рассмотрении Website – это вся совокупность данных и программного обеспечения, обеспечивающая отображение страниц информационной БД World Wide Web. Если страница Website физически представляет собой файл в стандарте HTML, то тогда говорят об элементарном (стандартном) элементе хранения. В этом случае URL указывает непосредственно на этот файл и сервер просто отправляет его в ответ на запрос пользователя.
В качестве примера БД ИПС, функционирующей на основе стандартных механизмов поиска, может состоять из следующих пяти таблиц (рис. 8): 1. сайт (Site) 2. ключевое слово (Keyword) 3. копия-страницы (CachePage) 4. запрос пользователя (QueryUser) 5. результат (Result) Рис. 8. Схема БД ИПС Для реализации поиска и персонализации на основе прецедентов необходимо расширить БД таблицами для организации БП.
Структура для хранения информации о прецедентах в БД ИПС имеет следующие атрибуты: 1. CaseId (Идентификатор прецедента). 2. UserName (Имя пользователя). 3. Query (Запрос пользователя). 4. Keywords (Ключевые слова из запроса). 5. LanguageQuery (Язык запроса). 6. Datetime (Дата и время запроса). 7. UserGroup (Рабочая группа пользователя). 8. IP_address (IP-адрес). 9. Location (Местоположение). 10. Logdata (Данные журнала пользовательского браузера). 11. Cookies. Для сохранения результатов прецедентов используется таблица Result, в которой идентификатору прецедента CaseId ставится в соответствие идентификатор документа SiteId из индекса ИПС с оценкой релевантности документа запросу из прецедента SES.
Применение и анализ эффективности разработанного прототипа ИПС на основе прецедентов
Windows Communication Foundation (WCF) – это платформа корпорации Майкрософт нового поколения для построения распределенных систем. Она была выпущена как часть платформы .NET Framework 3.0 и предназначена для консолидации и расширения интерфейсов API предыдущих версий платформы (например, Web-сервисов ASP.NET, .NET Remoting, служб Enterprise Services (COM+) и очереди сообщений) [60, 62, 63]. WCF предоставляет единую инфраструктуру разработки, повышающую производительность и снижающую затраты на создание безопасных, надёжных и транзакционных Web-сервисов нового поколения. WCF – это технология для построения сервис-ориентированной архитектуры приложений (SOA – Service-Oriented Architecture) [64-65], что позволяет абстрагироваться от конкретной технологи, на которой этот сервис реализован и пользоваться им из других приложений, написанных на любой другой платформе, языке, технологии. Главное, чтобы реализация клиента отвечала определенным правилам [62]. Кроме того, логика самого сервиса и его реализация полностью отделена от коммуникационной составляющей и можно декларативно изменять способ взаимодействия с сервисом путем изменения конфигурационного файла.
В основе WCF лежит принцип связи с помощью обмена сообщениями и любые объекты, моделируемые в виде сообщений (например, HTTP-запрос или сообщение очереди сообщений, MSMQ), можно представить единым образом в модели программирования. Это обеспечивает универсальный интерфейс API для разных транспортных механизмов. Сообщения можно отправлять через интрасети или через Интернет с помощью общих транспортов, таких как HTTP и TCP. С помощью встроенных точек расширения WCF можно добавить дополнительные транспортные механизмы. Служба WCF поддерживает несколько шаблонов обмена сообщениями, включая запрос-ответ, одностороннюю и дуплексную связь. Разные транспорты поддерживают разные шаблоны обмена сообщениями и таким образом влияют на типы поддерживаемых взаимодействий. Интерфейсы API и среда выполнения WCF также помогают отправлять сообщения безопасно и быстро.
При создании приложений для .NET в среде Visual Studio есть необходимые инструменты для реализации указанных служб. В WCF также встроена модель размещения, позволяющая размещать службы в IIS или в Managed Services на платформе Windows. WCF поддерживает развитую модель многопоточности и ограничения пропускной способности (throttling), которая позволяет управлять созданием экземпляров с минимальными усилиями. Вне зависимости от того, обрабатываются ли одновременно поступающие запросы в одном или в нескольких потоках, модель программирования остается одинаковой, так что разработчик может не вдаваться в детали. WCF поддерживает различные способы обмена сообщениями, например: запрос-ответ, односторонний и дуплексный поток. Поддерживаются также пиринговые сети, в которых клиенты могут обнаруживать друг друга и обмениваться данными в отсутствие централизованного механизма управления. Технология WCF важна потому, что современные приложения немыслимы без служб, а именно это и составляет назначение и смысл WCF.
На сайте поисковой машины Интернет для пользователей доступна форма (рис. 18), состоящая из поля для ввода поискового запроса и кнопки Поиск (Найти, Search), предназначенной для начала выполнения поиска информации (документов в сети Интернет) по указанному пользователем запросу.
Поисковый запрос (англ. search query) – зачастую это набор ключевых слов или фраз, которые встречаются на искомых веб-страницах. В тоже время, пользователь может использовать расширенные возможности языка запросов ИПС для уточнения требуемого результата.
ИПС осуществляют поиск информации по копиям данных хранимых в их индексах. Другими словами, для того чтобы веб-страница попала в результат поиска, может понадобиться определённое время.
Сама же страница результата поиска (рис. 19) представляет собой набор ссылок на веб-страницы (картинки, видео и т.д.). При этом ссылки упорядочены в зависимости от соответствия (релевантности) пользовательскому запросу. Релевантность данных может определяться ИПС по-разному, в соответствии с