Introducción al modelo de objetos de administración del motor de búsqueda Enterprise Search

Enterprise Search de Microsoft Office SharePoint Server 2007 proporciona un nuevo modelo de objetos de administración de búsquedas que sirve para crear aplicaciones personalizadas capaces de administrar Enterprise Search mediante programación.

El modelo de objetos de administración de Enterprise Search se implementa en el espacio de nombres Microsoft.Office.Server.Search.Administration, que se encuentra en Microsoft.Office.Server.Search.dll.

Puede escribir código que use el modelo de objetos de administración de Enterprise Search de distintos tipos de aplicaciones, entre ellas:

  • Una aplicación de consola

  • Un elemento web de búsqueda personalizado hospedado en un sitio de SharePoint

  • Una aplicación web ASPX

  • Una aplicación cliente de Windows Forms

Uso del modelo de objetos de administración de búsquedas

En el diagrama siguiente se detallan las áreas principales de extensibilidad en el nuevo modelo de objetos de administración.

Modelo de objetos de administración de búsqueda

Objeto SearchContext

El objeto Microsoft.Office.Server.Search.Administration.SearchContext es el punto de entrada para el modelo de objetos de administración de Enterprise Search. El método GetContext devuelve el contexto de búsqueda para el sitio, servidor o proveedor de servicios compartidos (SSP) que especifique. En función de la sobrecarga de método que use, es posible que tenga que incluir en el proyecto una referencia a Microsoft.Office.Server.dll o Microsoft.SharePoint.dll. Para obtener más información acerca del método GetContext, consulte Procedimiento: Devolver el contexto de búsqueda para el proveedor del servicio de búsqueda.

Nota

Después de instalar Microsoft Office SharePoint Server 2007, es posible que necesite reiniciar el servidor que hospeda el sitio del SSP antes de realizar una llamada al modelo de objetos de administración de Enterprise Search.

Consideraciones sobre el rendimiento

Si usa la sobrecarga del método GetContext de la clase SearchContext para recuperar el contexto de búsqueda, se recomienda que el código cree una instancia del objeto SPSite dentro de una instrucción using para garantizar que el objeto se libere una vez que ya no sea necesario. A continuación se muestra un ejemplo.

SearchContext context;
using (SPSite site = new SPSite("http://yourSiteName"))
{
     context = SearchContext.GetContext(site);
}

Orígenes de contenido

En Enterprise Search, los orígenes de contenido permiten especificar el contenido que se debe rastrear, cómo configurar el rastreo y cuándo se debe programar el rastreo.

El objeto de nivel superior del modelo de objetos de orígenes de contenido es la clase Content. Cuando se inicializa una instancia de la clase Content, se pasa un objeto SearchContext como parámetro en el constructor.

La propiedad ContentSources de la clase Content devuelve los orígenes de contenido de un SSP, representados mediante el objeto ContentSourceCollection.

La clase base que representa orígenes de contenido individuales es la clase ContentSource. El modelo de objetos también incluye las siguientes clases para representar los diferentes tipos de orígenes de contenido disponibles en Enterprise Search.

  • BusinessDataContentSource
    Sirve para incluir el contenido de aplicaciones configuradas en Catálogo de datos profesionales.
  • CustomContentSource
    Sirve para incluir contenido de los orígenes de contenido personalizado.
  • HierarchicalContentSource
    Clase base de orígenes de contenido jerárquicos, como FileShareContentSource y ExchangePublichFolderContentSource.

El modelo de objetos de origen de contenido también incluye clases para administrar la programación de rastreo. La propiedad FullCrawlSchedule de la clase ContentSource sirve para configurar la programación de rastreo completo. La propiedad IncrementalCrawlSchedule de la clase ContentSource permite configurar la programación de rastreo incremental.

La clase base para las programaciones de rastreo es Schedule. El modelo de objetos también incluye las siguientes clases derivadas que se usan para configurar la programación de rastreo.

  • DailySchedule
    Sirve para especificar el número de días entre rastreos.
  • WeeklySchedule
    Sirve para especificar el número de semanas entre rastreos.
  • MonthlyDateSchedule
    Sirve para especificar los días del mes y los meses del año en los que se debe realizar el rastreo.
  • MonthlyDayOfWeekSchedule
    Sirve para especificar los días del mes, las semanas del mes y los meses del año en los que se debe realizar el rastreo.

Para obtener más información sobre los orígenes de contenido, consulte Administración de contenido.

Ejemplos de orígenes de contenido

Para obtener procedimientos detallados paso a paso para la programación de orígenes de contenido, consulte:

Procedimiento para recuperar los orígenes de contenido para un proveedor de servicios compartidos

Procedimiento para agregar un origen de contenido

Procedimiento para eliminar un origen de contenido

Procedimiento para configurar mediante programación una programación de rastreo para un origen de contenido

Procedimiento para administrar mediante programación el rastreo de un origen de contenido

Esquema de propiedades de metadatos

El esquema de propiedades de metadatos de Enterprise Search incluye dos tipos de propiedades: propiedades rastreadas, que se detectan mediante el componente de índice del servicio de búsqueda cuando se rastrea contenido, y propiedades administradas, que se administran mediante administradores de búsqueda y se configuran expresamente para su uso en búsquedas. Debe asignar propiedades rastreadas a propiedades administradas para usarlas en búsquedas. Para obtener más información acerca de las propiedades en Enterprise Search, consulte Administración de metadatos.

Las propiedades administradas las administran administradores y se configuran expresamente para su uso en el sistema de consultas. Asigne propiedades rastreadas para que administren propiedades y, de ese modo, poder crear nuevas propiedades para usarlas en las consultas.

El punto de entrada para administrar propiedades de metadatos en el modelo de objetos de administración es el objeto Schema. Cuando se inicializa una instancia de la clase Schema, se pasa un objeto SearchContext como parámetro en el constructor. La propiedad AllManagedProperties de la clase Schema devuelve un objeto ManagedPropertyCollection que representa una colección de todas las propiedades administradas en el esquema de búsqueda del SSP. La clase ManagedProperty representa una propiedad única administrada.

Las propiedades rastreadas se agrupan en distintas categorías, según el controlador de protocolo usado. La propiedad AllCategories de la clase Schema devuelve un objeto CategoryCollection que representa todas las categorías de propiedad rastreada del esquema de búsqueda del SSP. La clase Category representa una categoría única de propiedad rastreada. El método GetAllCrawledProperties de la clase Category permite devolver un enumerador para el conjunto de propiedades rastreadas de la categoría. La clase CrawledProperty representa una única propiedad rastreada.

Ejemplos de esquema

Para obtener procedimientos detallados paso a paso para la programación con el esquema Enterprise Search, consulte:

Procedimiento para recuperar propiedades rastreadas para una categoría del esquema de búsqueda

Procedimiento para recuperar las propiedades administradas para un proveedor de servicios compartidos

Procedimiento para recuperar las propiedades rastreadas asignadas a una propiedad administrada

Procedimiento para crear una propiedad administrada

Procedimiento para eliminar una propiedad administrada

Procedimiento para asignar una propiedad rastreada a una propiedad administrada

Ámbitos de búsqueda

En Enterprise Search, los ámbitos de búsqueda representan una colección de elementos basada en un elemento común o elementos entre los elementos de ese ámbito. Los ámbitos se definen mediante reglas que se registran para ese ámbito. Hay ámbitos globales configurados en el nivel del SSP, que están disponibles para todos los sitios configurados para usar ese SSP. También hay ámbitos de nivel de sitio, que sólo están disponibles para el sitio y los subsitios del sitio donde están configurados.

Los grupos de presentación son agrupaciones de ámbitos que sirven para administrar los ámbitos que aparecerán con la lista de ámbitos para los distintos elementos web de búsqueda, incluidos los elementos web de cuadro de búsqueda y de búsqueda avanzada.

Para obtener más información acerca de ámbitos de Enterprise Search, consulte Trabajar con ámbitos de búsqueda.

El punto de entrada para administrar ámbitos de búsqueda en el modelo de objetos de administración es la clase Scopes. Cuando se inicializa una instancia de la clase Scopes, se pasa un objeto SearchContext como parámetro para el constructor.

La propiedad AllScopes devuelve un objeto ScopeCollection que representa la colección de todos los ámbitos de búsqueda del SSP.

La propiedad AllDisplayGroups devuelve un objeto ScopeDisplayGroupCollection que representa la colección de todos los grupos de presentación de los ámbitos del SSP.

La clase Scope representa un ámbito de búsqueda única y la clase ScopeDisplayGroup representa un grupo de presentación único.

Palabras clave y resultados más probables

Las palabras clave son palabras o frases que se identifican como importantes para la organización. Con ellas, los administradores de búsquedas pueden mostrar información adicional y vínculos recomendados en la página inicial de resultados. Las palabras clave pueden ser útiles en las situaciones siguientes:

  • Cuando los usuarios realizan consultas con frecuencia para obtener información que no está incluida en el índice de contenido.

  • Cuando una organización necesita aumentar el nivel de algunos vínculos para concederles un lugar destacado en los resultados de la búsqueda.

Para obtener más información sobre palabras clave, resultados más probables y definiciones, consulte Administración de palabras clave.

La administración de palabras clave de Enterprise Search se realiza en el nivel de sitio. El objeto de nivel superior del modelo de objetos de palabra clave se representa mediante la clase Keywords. El constructor de la clase Keywords toma dos parámetros: un objeto SearchContext, que representa al SSP, y un objeto System.Uri, que representa la dirección URL del sitio.

La propiedad AllKeywords de la clase Keywords devuelve un objeto KeywordCollection que representa todas las palabras clave del sitio especificado. Las palabras clave individuales se representan con la clase Keyword. Para obtener acceso al término o la frase de palabra clave real, use la propiedad Term de la clase Keyword. La cadena que describe la palabra clave se almacena en la propiedad Definition.

Use la propiedad Synonyms para devolver un objeto SynonymCollection que represente todos los sinónimos de la palabra clave. La propiedad BestBets permite devolver un objeto BestBetCollection que represente todos los resultados más probables de la palabra clave.

También puede obtener acceso a todos los resultados más probables definidos para un sitio mediante el método GetAllBestBets de la clase Keywords. La clase BestBet representa una instancia de un resultado más probable y los sinónimos individuales se representan con la clase SynonymCollection.

Clasificación

Enterprise Search proporciona un modelo de objetos de relevancia que sirve para personalizar los parámetros usados por el motor de clasificación. Para obtener más información acerca de la relevancia de búsqueda, consulte Introducción a la arquitectura de relevancia del motor de búsqueda Enterprise Search.

Nota

El cambio arbitrario de los valores de parámetro de clasificación puede tener efectos negativos sobre la relevancia general del sistema. No se recomienda hacerlo sin evaluar cuidadosamente los cambios y el impacto que pueden tener en la precisión de los resultados de la búsqueda.

El objeto de nivel superior en el modelo de objetos de relevancia se representa mediante la clase Ranking. El constructor de la clase Ranking toma como parámetro un objeto SearchContext, que representa el SSP.

La propiedad RankingParameters de la clase Ranking devuelve un objeto que representa todos los parámetros de clasificación del SSP. No se puede agregar, quitar o cambiar el nombre de los parámetros de clasificación de la colección; sólo se pueden modificar los valores del parámetro. Los parámetros de clasificación individuales están representados por la clase RankingParameter.

La propiedad AuthorityPages permite devolver un objeto AuthorityPageCollection que represente todas las páginas de autoridad registradas para el SSP.

La propiedad DemotedSites permite devolver un objeto DemotedSiteCollection que represente todos los sitios de nivel disminuido registrados para el SSP.

Para iniciar el proceso de actualización de clasificación para un SSP, use el método StartRankingUpdate.

Propagación

Si el servicio de índice y el servicio de consulta se ejecutan en servidores distintos, el servicio de búsqueda debe copiar el índice de contenido desde el servidor del servicio de índice al servidor del servicio de consulta. Este proceso se denomina propagación .

Enterprise Search permite obtener acceso a información de estado acerca del sistema de propagación. El objeto de nivel superior del modelo de objetos de propagación es la clase Propagation. Cuando se inicializa una instancia de la clase Propagation, se pasa un objeto SearchContext como parámetro del constructor.

Para recuperar el estado del sistema de propagación general, use la propiedad Status de la clase Propagation.

Para comprobar el estado de propagación de servidores individuales de consultas, recupere primero el enumerador del servidor de consultas mediante la propiedad QueryServers de la clase Propagation. A continuación, enumere la colección de servidores de consultas para recuperar el objeto QueryServer que representa al servidor de consultas.

Registro de rastreo

El objeto LogViewer permite recuperar los datos del registro de rastreo. La propiedad MaxDaysCrawlLogged de la clase LogViewer permite establecer el número máximo de días durante los cuales el registro de rastreo debe conservar los datos.

Para manipular los datos en el registro de rastreo, use la clase CrawlLogFilters, que contiene todos los filtros usados para este propósito. Esta clase contiene un método AddFilter con cuatro sobrecargas de método, lo que permite agregar filtros para:

  • Todas las propiedades de tipo entero (como startAt, TotalEntries y MessageId)

  • Hora de registro

  • Tipo de mensaje

  • Dirección URL

Vea también

Referencia

Microsoft.Office.Server.Search.Administration

Otros recursos

Arquitectura del motor de búsqueda Enterprise Search
Procedimiento: Devolver el contexto de búsqueda para el proveedor del servicio de búsqueda
Administración de contenido
Administración de metadatos
Trabajar con ámbitos de búsqueda
Administración de palabras clave
Introducción a la arquitectura de relevancia del motor de búsqueda Enterprise Search