La búsqueda federada recupera información de una variedad de fuentes a través de una aplicación de búsqueda construida sobre uno o más motores de búsqueda. [1] Un usuario realiza una única solicitud de consulta que se distribuye a los motores de búsqueda , bases de datos u otros motores de consulta que participan en la federación. La búsqueda federada luego agrega los resultados que se reciben de los motores de búsqueda para presentarlos al usuario. La búsqueda federada se puede utilizar para integrar recursos de información dispares dentro de una sola organización grande ("empresa") o para toda la web.
La búsqueda federada, a diferencia de la búsqueda distribuida, requiere una coordinación centralizada de los recursos de búsqueda. Esto implica tanto la coordinación de las consultas transmitidas a los motores de búsqueda individuales como la fusión de los resultados de búsqueda devueltos por cada uno de ellos.
La búsqueda federada surgió para satisfacer la necesidad de buscar en múltiples fuentes de contenido dispares con una sola consulta. Esto permite al usuario buscar en varias bases de datos a la vez en tiempo real, organizar los resultados de las distintas bases de datos en un formato útil y luego presentar los resultados al usuario.
Como tal, es un enfoque de agregación o integración de información: proporciona acceso de un solo punto a muchos recursos de información y, por lo general, devuelve los datos en una forma estándar o parcialmente homogeneizada. Otros enfoques incluyen la construcción de un almacén de datos empresarial , un lago de datos o un centro de datos . La búsqueda federada realiza consultas muchas veces de muchas maneras (cada fuente se consulta por separado), mientras que otros enfoques importan y transforman datos muchas veces, generalmente en procesos por lotes durante la noche. La búsqueda federada proporciona una vista en tiempo real de todas las fuentes (en la medida en que todas estén en línea y disponibles).
En los motores de búsqueda industriales, como LinkedIn , se utiliza la búsqueda federada para personalizar la preferencia vertical para consultas ambiguas. [2] Por ejemplo, cuando un usuario realiza una consulta como "aprendizaje automático" en LinkedIn, podría querer buscar personas con habilidades de aprendizaje automático, trabajos que requieran habilidades de aprendizaje automático o contenido sobre el tema. En tales casos, la búsqueda federada podría explotar la intención del usuario (por ejemplo, contratación, búsqueda de empleo o consumo de contenido) para personalizar el orden vertical para cada usuario individual.
Como lo describe Peter Jacso (2004 [3] ), la búsqueda federada consiste en (1) transformar una consulta y transmitirla a un grupo de bases de datos dispares u otros recursos web, con la sintaxis apropiada, (2) fusionar los resultados recopilados de las bases de datos, (3) presentarlos en un formato sucinto y unificado con una duplicación mínima, y (4) proporcionar un medio, realizado automáticamente o por el usuario del portal, para ordenar el conjunto de resultados fusionados.
Los portales de búsqueda federados, ya sean comerciales o de acceso abierto , generalmente buscan en bases de datos bibliográficas de acceso público , catálogos de bibliotecas basados en la Web de acceso público ( OPAC ), motores de búsqueda basados en la Web como Google y/o colecciones de datos de acceso abierto, operadas por el gobierno o corporativas. Estas fuentes de información individuales envían de vuelta a la interfaz del portal una lista de resultados de la consulta de búsqueda. El usuario puede revisar esta lista de resultados. Algunos portales simplemente rasparán la pantalla de los resultados reales de la base de datos y no permitirán directamente que un usuario ingrese a la aplicación de la fuente de información. Los más sofisticados desduplicarán la lista de resultados fusionando y eliminando duplicados. Hay características adicionales disponibles en muchos portales, pero la idea básica es la misma: mejorar la precisión y relevancia de las búsquedas individuales, así como reducir la cantidad de tiempo necesario para buscar recursos.
Este proceso permite a la búsqueda federada obtener algunas ventajas clave en comparación con los motores de búsqueda basados en rastreadores existentes. La búsqueda federada no impone ningún requisito ni carga a los propietarios de las fuentes de información individuales, aparte de gestionar el aumento del tráfico. Las búsquedas federadas son inherentemente tan actuales como las fuentes de información individuales, ya que se buscan en tiempo real.
Una aplicación de la búsqueda federada es el motor de metabúsqueda . Sin embargo, el enfoque de metabúsqueda no supera las deficiencias de los motores de búsqueda que lo componen, como los índices incompletos. Los documentos que no están indexados por los motores de búsqueda crean lo que se conoce como la Web profunda o la Web invisible. Google Scholar es un ejemplo de los muchos proyectos que intentan abordar este problema, indexando documentos electrónicos que los motores de búsqueda ignoran. Y el enfoque de metabúsqueda, al igual que la tecnología de motor de búsqueda subyacente, solo funciona con fuentes de información almacenadas en formato electrónico.
Uno de los principales desafíos de la metabúsqueda es garantizar que la consulta de búsqueda sea compatible con los motores de búsqueda componentes que se están federando y combinando. Cuando el vocabulario de búsqueda o el modelo de datos del sistema de búsqueda es diferente del modelo de datos de uno o más de los sistemas de destino externos, la consulta debe traducirse a cada uno de los sistemas de destino externos. Esto se puede hacer utilizando una traducción simple de elementos de datos o puede requerir una traducción semántica . Por ejemplo, si un motor de búsqueda permite citar cadenas exactas o n-gramas y otro no, la consulta debe traducirse para que sea compatible con cada motor de búsqueda. Para traducir una consulta de cadena exacta citada, se puede dividir en un conjunto de N-gramas superpuestos que tengan más probabilidades de dar los resultados de búsqueda deseados en cada motor de búsqueda.
Otro desafío que se enfrenta en la implementación de motores de búsqueda federados es la escalabilidad. Es difícil mantener el rendimiento, la velocidad de respuesta, de un motor de búsqueda federado a medida que combina más y más fuentes de información juntas. Una implementación de búsqueda federada que ha comenzado a abordar este problema es WorldWideScience , alojada por la Oficina de Información Científica y Técnica del Departamento de Energía de los EE. UU . WorldWideScience [4] está compuesto por más de 40 fuentes de información, varias de las cuales son portales de búsqueda federados en sí mismos. Uno de estos portales es Science.gov [5] que, a su vez, federa más de 30 fuentes de información que representan la mayor parte de la producción de I+D del gobierno federal de los EE. UU. Science.gov devuelve sus resultados mejor clasificados a WorldWideScience, que luego fusiona y clasifica estos resultados con la búsqueda devuelta por las otras fuentes de información que componen WorldWideScience. [5] Este enfoque de búsqueda federada en cascada permite buscar una gran cantidad de fuentes de información a través de una sola consulta.
Otra aplicación, Sesam, que se ejecuta tanto en Noruega como en Suecia, se ha creado sobre una plataforma de código abierto especializada en soluciones de búsqueda federada. Sesat, [6] un acrónimo de Sesam Search Application Toolkit , es una plataforma que proporciona gran parte del marco y la funcionalidad necesarios para gestionar búsquedas paralelas y segmentadas y mostrarlas de forma elegante en una interfaz de usuario, lo que permite a los ingenieros centrarse en el ajuste de la configuración del índice/base de datos.
Para personalizar los órdenes verticales en la búsqueda federada, el motor de búsqueda de LinkedIn [2] explota el perfil del buscador y sus actividades recientes para inferir su intención, como contratar, buscar trabajo y consumir contenido, y luego utiliza la intención, junto con muchas otras señales, para clasificar los órdenes verticales que son personalmente relevantes para el buscador individual.
SWIRL Search [7] es un motor de búsqueda federado de código abierto, publicado bajo la licencia Apache 2.0. Incluye conectores preconstruidos para motores de búsqueda de código abierto populares y reclasifica los resultados utilizando la similitud del vector coseno.
Las búsquedas federadas presentan una serie de desafíos importantes, en comparación con las búsquedas convencionales de una sola fuente:
1. Entrega de credenciales
Cuando se realiza una búsqueda federada en fuentes de datos seguras, las credenciales de los usuarios deben transmitirse a cada motor de búsqueda subyacente, de modo que se mantenga la seguridad adecuada. Si el usuario tiene diferentes credenciales de inicio de sesión para diferentes sistemas, debe haber un medio para asignar su ID de inicio de sesión al dominio de seguridad de cada motor de búsqueda. [8]
2. Asignación de navegadores de listas de resultados a un formato común
Supongamos que se realizan búsquedas en tres sitios de bienes raíces y que cada uno de ellos ofrece una lista de nombres de ciudades con hipervínculos en los que se puede hacer clic para ver las coincidencias solo en cada ciudad. Lo ideal sería combinar estas facetas en un solo conjunto, pero eso presenta desafíos técnicos adicionales. [9] El sistema también debe comprender los enlaces de "página siguiente" si va a permitir que el usuario navegue por los resultados combinados.
Parte de este desafío de mapear a un formato común se puede resolver si los recursos federados admiten datos abiertos vinculados a través de RDF . Se pueden agregar ontologías (reglas) para mapear los resultados a formatos comunes utilizando esa tecnología.
3. Ordenación y puntuación de resultados
Cada recurso web tiene su propia noción de puntuación de relevancia y puede admitir algunos órdenes de resultados ordenados. La relevancia varía mucho entre los "federados" de la búsqueda, por lo que saber cómo intercalar los resultados para mostrar los más relevantes es difícil o imposible.
4. Consulta robusta
Es posible que la búsqueda federada deba limitarse al conjunto mínimo de capacidades de consulta que son comunes a todas las federaciones. Por ejemplo, si Google admite frases entre comillas y negación, pero science.gov no, será imposible que la búsqueda federada admita frases entre comillas y negación.
5. Disponibilidad yse acabó el tiempo
A medida que aumenta el número de federaciones (fuentes federadas), aumenta la probabilidad de que haya una o más federaciones lentas o fuera de línea. La búsqueda federada debe decidir cuándo considerar que una federación está fuera de línea o esperar una respuesta lenta. Los tiempos de respuesta estarán determinados por la federación más lenta del grupo.
6. Desarrollo y pruebas dentro de una empresa (en comparación con Internet pública)
Los grupos de desarrollo normalmente no deberían acceder a los sistemas de producción en vivo, ya que realizan su trabajo habitual, y mucho menos pruebas de carga intensivas. Además, algunos recursos son seguros y no se los debería consultar ni exponer de forma arbitraria durante el desarrollo debido a cuestiones de privacidad y seguridad. Por lo tanto, los entornos de desarrollo, prueba y prueba de rendimiento deben incluir la instalación y configuración de muchos subsistemas para permitir pruebas seguras y protegidas.
7. HA/DR (alta disponibilidadyrecuperación de desastres)
Para que el sistema federado general sea HA/DR, cada subsistema debe ser HA/DR.
De manera similar, el modelado del rendimiento y la planificación de la capacidad para el sistema federado requieren el modelado, la planificación y, a veces, la expansión de todas las federaciones.
Por todas las razones mencionadas anteriormente, dentro de una empresa, puede ser preferible un centro de datos o un lago de datos , o un enfoque híbrido. Los centros de datos y lagos simplifican el desarrollo y el acceso, pero pueden generar un cierto retraso antes de que los datos estén disponibles (sin una lógica de sincronización especial). En la web, la federación es más habitual.