Федеративный поиск извлекает информацию из различных источников с помощью поискового приложения, построенного на основе одной или нескольких поисковых систем. [1] Пользователь делает один запрос, который распространяется по поисковым системам , базам данных или другим поисковым системам, участвующим в федерации. Затем федеративный поиск объединяет результаты, полученные от поисковых систем, для представления пользователю. Федеративный поиск может использоваться для интеграции разрозненных информационных ресурсов в рамках одной крупной организации («предприятия») или для всего Интернета.
Федеративный поиск, в отличие от распределенного поиска, требует централизованной координации поисковых ресурсов. Это подразумевает как координацию запросов, передаваемых отдельным поисковым системам, так и слияние результатов поиска, возвращаемых каждой из них.
Федеративный поиск появился для удовлетворения потребности в поиске нескольких разрозненных источников контента с помощью одного запроса. Это позволяет пользователю выполнять поиск по нескольким базам данных одновременно в режиме реального времени, упорядочивать результаты из различных баз данных в полезную форму и затем представлять результаты пользователю.
Таким образом, это подход к агрегации или интеграции информации — он обеспечивает единый доступ ко многим информационным ресурсам и обычно возвращает данные в стандартной или частично гомогенизированной форме. Другие подходы включают построение хранилища данных предприятия , озера данных или концентратора данных . Федеративный поиск выполняет запросы много раз разными способами (каждый источник запрашивается отдельно), тогда как другие подходы импортируют и преобразуют данные много раз, как правило, в пакетных процессах за ночь. Федеративный поиск обеспечивает просмотр всех источников в реальном времени (в той степени, в которой они все находятся в сети и доступны).
В промышленных поисковых системах, таких как LinkedIn , федеративный поиск используется для персонализации вертикальных предпочтений для неоднозначных запросов. [2] Например, когда пользователь вводит запрос типа «машинное обучение» в LinkedIn, он или она может иметь в виду поиск людей с навыками машинного обучения, вакансий, требующих навыков машинного обучения, или контента по теме. В таких случаях федеративный поиск может использовать намерение пользователя (например, найм, поиск работы или потребление контента) для персонализации вертикального порядка для каждого отдельного пользователя.
Как описывает Питер Джаксо (2004 [3] ), федеративный поиск состоит из (1) преобразования запроса и его трансляции в группу разнородных баз данных или других веб-ресурсов с соответствующим синтаксисом, (2) объединения результатов, собранных из баз данных, (3) представления их в кратком и унифицированном формате с минимальным дублированием и (4) предоставления средств, выполняемых либо автоматически, либо пользователем портала, для сортировки объединенного набора результатов.
Федеративные поисковые порталы, как коммерческие, так и с открытым доступом , обычно выполняют поиск в библиографических базах данных с открытым доступом , в библиотечных каталогах с открытым доступом ( OPAC ), в поисковых системах с открытым доступом, таких как Google , и/или в коллекциях данных с открытым доступом, государственных или корпоративных. Эти отдельные источники информации отправляют обратно в интерфейс портала список результатов поискового запроса. Пользователь может просмотреть этот список совпадений. Некоторые порталы просто извлекают с экрана фактические результаты базы данных и не позволяют пользователю напрямую входить в приложение источника информации. Более сложные порталы удаляют дубликаты из списка результатов, объединяя и удаляя дубликаты. Во многих порталах доступны дополнительные функции, но основная идея та же: повысить точность и релевантность отдельных поисков, а также сократить время, необходимое для поиска ресурсов.
Этот процесс дает федеративному поиску некоторые ключевые преимущества по сравнению с существующими поисковыми системами на основе краулеров. Федеративный поиск не должен предъявлять никаких требований или обременений владельцам отдельных источников информации, кроме обработки возросшего трафика. Федеративные поиски по своей сути так же актуальны, как и отдельные источники информации, поскольку поиск осуществляется в режиме реального времени.
Одним из приложений федеративного поиска является метапоисковая система . Однако подход метапоиска не устраняет недостатки компонентных поисковых систем, такие как неполные индексы. Документы, которые не индексируются поисковыми системами, создают то, что известно как глубокая паутина , или невидимая паутина. Google Scholar — один из примеров многих проектов, пытающихся решить эту проблему, индексируя электронные документы, которые поисковые системы игнорируют. И подход метапоиска, как и лежащая в основе технология поисковой системы, работает только с источниками информации, хранящимися в электронном виде.
Одной из основных проблем метапоиска является обеспечение совместимости поискового запроса с компонентными поисковыми системами, которые объединяются и комбинируются. Когда словарь поиска или модель данных поисковой системы отличается от модели данных одной или нескольких иностранных целевых систем, запрос должен быть переведен в каждую из иностранных целевых систем. Это можно сделать с помощью простого перевода элементов данных или может потребовать семантического перевода . Например, если одна поисковая система позволяет цитировать точные строки или n-граммы, а другая нет, запрос должен быть переведен так, чтобы быть совместимым с каждой поисковой системой. Чтобы перевести запрос цитируемой точной строки, его можно разбить на набор перекрывающихся N-грамм , которые с наибольшей вероятностью дадут желаемые результаты поиска в каждой поисковой системе.
Еще одной проблемой, с которой приходится сталкиваться при внедрении федеративных поисковых систем, является масштабируемость. Трудно поддерживать производительность и скорость отклика федеративной поисковой системы, поскольку она объединяет все больше и больше источников информации. Одной из реализаций федеративного поиска, которая начала решать эту проблему, является WorldWideScience , размещенная в Управлении научной и технической информации Министерства энергетики США . WorldWideScience [4] состоит из более чем 40 источников информации, некоторые из которых сами являются порталами федеративного поиска. Одним из таких порталов является Science.gov [5], который сам объединяет более 30 источников информации, представляющих большую часть результатов НИОКР федерального правительства США. Science.gov возвращает свои результаты с наивысшим рейтингом в WorldWideScience, которая затем объединяет и ранжирует эти результаты с результатами поиска, возвращенными другими источниками информации, составляющими WorldWideScience. [5] Такой подход каскадного федеративного поиска позволяет выполнять поиск по большому количеству источников информации с помощью одного запроса.
Другое приложение Sesam, работающее в Норвегии и Швеции, было создано на основе платформы с открытым исходным кодом, специализирующейся на решениях для федеративного поиска. Sesat, [6] аббревиатура от Sesam Search Application Toolkit , представляет собой платформу, которая предоставляет большую часть фреймворка и функциональности, необходимых для обработки параллельных и конвейерных поисков и их элегантного отображения в пользовательском интерфейсе, позволяя инженерам сосредоточиться на настройке конфигурации индекса/базы данных.
Чтобы персонализировать вертикальные порядки в федеративном поиске, поисковая система LinkedIn [2] использует профиль ищущего пользователя и его недавние действия, чтобы сделать вывод о его намерениях, таких как найм, поиск работы и потребление контента, а затем использует намерение вместе со многими другими сигналами для ранжирования вертикальных порядков, которые имеют персональное значение для отдельного ищущего пользователя.
SWIRL Search [7] — это федеративная поисковая система с открытым исходным кодом, выпущенная под лицензией Apache 2.0. Она включает в себя готовые коннекторы для популярных поисковых систем с открытым исходным кодом и переранжирует результаты с использованием сходства косинусных векторов.
Федеративный поиск сопряжен с рядом существенных проблем по сравнению с традиционным поиском по одному источнику:
1. Передача полномочий
Когда федеративный поиск выполняется по защищенным источникам данных, учетные данные пользователей должны быть переданы каждой базовой поисковой системе, чтобы поддерживать соответствующую безопасность. Если у пользователя разные учетные данные для входа в разные системы, должны быть средства для сопоставления его идентификатора входа с доменом безопасности каждой поисковой системы. [8]
2. Отображение навигаторов списка результатов в общей форме
Предположим, что выполняется поиск по трем сайтам недвижимости, каждый из которых предоставляет список гиперссылок на названия городов, по которым можно кликнуть, чтобы увидеть совпадения только в каждом городе. В идеале эти аспекты должны быть объединены в один набор, но это создает дополнительные технические проблемы. [9] Система также должна понимать ссылки «следующая страница», если она собирается позволить пользователю просматривать объединенные результаты.
Часть этой проблемы отображения в общую форму может быть решена, если федеративные ресурсы поддерживают связанные открытые данные через RDF . Онтологии (правила) могут быть добавлены для отображения результатов в общие формы с использованием этой технологии.
3. Сортировка и подсчет результатов
Каждый веб-ресурс имеет свое собственное представление о степени релевантности и может поддерживать некоторые сортированные порядки результатов. Релевантность сильно различается среди «федератов» в поиске, поэтому знать, как чередовать результаты, чтобы показать наиболее релевантные, сложно или невозможно.
4. Надежный запрос
Федеративный поиск может ограничиться минимальным набором возможностей запроса, которые являются общими для всех федератов. Например, если Google поддерживает отрицание и кавычки, а science.gov — нет, то федеративный поиск не сможет поддерживать отрицание и кавычки.
5. Наличие итайм-аут
По мере роста числа федератов (федеративных источников) вероятность появления одного или нескольких медленных или офлайновых федератов становится высокой. Федеративный поиск должен решить, когда считать федерат офлайновым или ждать медленного ответа. Время ответа будет определяться самым медленным федератом из группы.
6. Разработка и тестирование на предприятии (в отличие от общедоступного Интернета)
Группы разработки обычно не должны затрагивать живые, производственные системы, поскольку они выполняют обычную работу, а тем более интенсивное нагрузочное тестирование. Кроме того, некоторые ресурсы защищены и не должны произвольно запрашиваться и раскрываться в процессе разработки из-за проблем конфиденциальности и безопасности. Поэтому среды разработки, тестирования и тестирования производительности должны включать установку и настройку многих подсистем, чтобы обеспечить безопасное, надежное тестирование.
7. HA/DR (высокая доступностьиаварийное восстановление)
Чтобы вся федеративная система была HA/DR, каждая подсистема должна быть HA/DR.
Аналогичным образом, моделирование производительности и планирование емкости для федеративной системы требуют моделирования, планирования, а иногда и расширения всех федераций.
По всем вышеперечисленным причинам в рамках предприятия предпочтительным может оказаться концентратор данных или озеро данных или гибридный подход. Концентраторы данных и озера упрощают разработку и доступ, но могут вызвать некоторую задержку по времени до того, как данные станут доступны (без специальной логики синхронизации). В Интернете федерация более типична.