Sistemas, métodos y software para carga distribuida de bases de datos.

Un sistema (100) de recuperación de información que comprende:

una cola (128) para almacenar solicitudes de datos de carga;

un conjunto de dos o más servidores

(122) de carga para recuperar datos de la cola (128) e indexar documentos para recuperación basándose en los datos recuperados de la cola (128);

monitores de carga primero y segundo (124) para vigilar el funcionamiento de los servidores (122) de carga y proporcionar nuevos datos sobre la cola (128) accesible por los servidores (122) de carga, estando configurado el primer monitor (124) de carga para proporcionar información relativa a sus operaciones al segundo monitor (124) de carga y estando configurado el segundo monitor (124) de carga para responder a información de estado que indica fallo del primer monitor (124) de carga con el fin de encargarse de la vigilancia de los servidores de carga y proporcionar nuevos datos sobre la cola (128);

en el que cada servidor (122) de carga está asociado con una estructura (1223) de datos de acuerdo de nivel de servicio, incluyendo la estructura (1223) de datos de acuerdo de nivel de servicio un primer campo (1223B) para indicar una prioridad mínima de solicitudes de indexación de documentos que se le permite aceptar al servidor (122) de carga; un segundo campo (1223A) para identificar en qué bases de datos se permite indexar documentos al servidor (122) de carga; y un tercer campo (1223C) que indica un aspecto temporal asociado con un periodo o una duración efectivos de la estructura (1223) de datos de acuerdo de nivel de servicio.

Tipo: Patente Internacional (Tratado de Cooperación de Patentes). Resumen de patente/invención. Número de Solicitud: PCT/US2006/000747.

Solicitante: THOMSON REUTERS GLOBAL RESOURCES.

Nacionalidad solicitante: Suiza.

Dirección: LANDIS + GYR-STRASSE 3 6300 ZUG SUIZA.

Inventor/es: BLUHM,MARK A, VERREAUX,JON.

Fecha de Publicación: .

Clasificación Internacional de Patentes:

  • SECCION G — FISICA > COMPUTO; CALCULO; CONTEO > TRATAMIENTO DE DATOS DIGITALES ELECTRICOS (computadores... > Equipo o métodos de tratamiento de datos o de cálculo... > G06F17/30 (Recuperación de la información; Estructura de bases de datos a este efecto)

PDF original: ES-2500140_T3.pdf

 

google+ twitter facebook

Fragmento de la descripción:

Sistemas, métodos y software para carga distribuida de bases de datos Campo técnico

Diversas realizaciones de la presente invención se refieren a la recuperación de información, particularmente a sistemas, métodos y software para cargar datos en bases de datos.

Antecedentes

Un problema reconocido por la presente invención se refiere a la carga de nuevos documentos en un sistema de recuperación de información en línea. Generalmente, la carga entraña indexar los documentos para facilitar la búsqueda usando algoritmos boléanos o de lenguaje natural y posteriormente añadir los documentos y los datos de índice correspondientes a una base de datos y archivo de índices existentes.

Convencionalmente, se adquirió y programó un servidor grande y costoso, tal como un Sun Microsystems 65 o 68, para servir específicamente a las necesidades de carga de un conjunto dado de bases de datos o colecciones. Desafortunadamente, esta confianza en un solo servidor hace vulnerable al sistema frente a averías o caídas del servidor durante el procedimiento de carga. En muchos casos, una caída necesita la recarga de toda la cantidad de datos y finalmente retrasa la adición y, por tanto, el acceso del usuario o abonado a nuevos documentos. Tales retrasos son particularmente significativos en datos sensibles al tiempo, tales como las decisiones del Tribunal Supremo de Estados Unidos o la emisión de noticias. En consecuencia, los inventores han reconocido una necesidad de mejores maneras de cargar bases de datos en sistemas de recuperación de información en línea.

El documento US24/93323 revela un sistema de gestión y acceso a un repositorio electrónico de documentos para distribuir y gestionar un gran corpus de documentos electrónicos. El sistema proporciona servicios a medida a varios usuarios finales.

Sumario

La presente invención proporciona un sistema según la reivindicación 1 y un método según la reivindicación 1.

En un sistema de ejemplo, unos dominios de carga distribuida organizan y coordinan lógicamente el funcionamiento de múltiples servidores de carga para satisfacer las necesidades de capacidad de carga de un conjunto de una o más bases de datos. El sistema de ejemplo incluye dos o más (al menos dos) servidores de vigilancia de carga que no sólo vigilan y garantizan la finalización de tareas de carga por los servidores de carga individuales, sino que también hacen que un monitor de carga supervise el rendimiento del otro. Además, el sistema de ejemplo proporciona una estructura de datos de acuerdo de nivel de servicio (SLA) a cada servidor de carga. La estructura de datos de SLA gobierna qué tipos y niveles de prioridad de tareas de carga se ejecutarán durante periodos de tiempo predeterminados.

Breve descripción de los dibujos

La figura 1 es un diagrama de bloques de un sistema 1 de recuperación de información de ejemplo que se corresponde con una o más realizaciones de la invención.

La figura 2 es un diagrama de bloques de un método de ejemplo que se corresponde con una o más realizaciones de la invención.

Descripción detallada de realización(es) de ejemplo

Esta descripción, que incorpora las figuras y las reivindicaciones, describe una o más realizaciones específicas de una invención. Estas realizaciones, ofrecidas no para limitar sino sólo para ejemplificar y mostrar la invención, se muestran y describen con detalle suficiente para permitir que los versados en la técnica implementen o practiquen la invención. Por tanto, en donde resulte apropiado para evitar oscurecer la invención, la descripción puede omitir cierta información conocida por los expertos en la técnica.

Sistema de recuperación de información de ejemplo

La figura 1 muestra un sistema 1 de recuperación de información de ejemplo que incorpora las enseñanzas de la presente invención. El sistema 1 incluye una base de datos landing skid 11, un dominio 12 de carga, una base de datos primaria 13 y una base de datos secundaria 14.

La base de datos landing skid 11 recibe y almacena archivos nuevos o actualizados para adición al sistema 1 o a la base de datos primaria 13. En la realización de ejemplo, la base de datos landing skid 11 adopta la forma de un dispositivo de almacenamiento accesible en red (ÑAS) y recibe y almacena ficheros en un formato lenguaje- marcado-extensible (XML). Los archivos incluyen documentos con una información de cabecera de tipo orden-script que incluye un identificador de documentos globalmente único y una orden de base de datos, tal como añadir o

borrar.

El dominio 12 de carga incluye un conjunto de uno o más servidores 122 de carga, un conjunto de dos o más servidores 124 de vigilancia de carga, un conjunto de uno o más servidores 126 de distribución, una cola 128 de carga y un directorio compartido 129. En la realización de ejemplo, cada uno de los servidores está asociado 5 lógicamente con un dominio de carga, el cual a su vez está asociado con una o más bases de datos o colecciones de documentos, tales como la base de datos primaria 13. (En la realización de ejemplo, un dominio de carga incluye una o más cajas de carga que tienen acceso compartido a un landing skid y a archivos de índice de carga. Cualquier caja de carga de un dominio de carga puede servir cualquier colección que sea parte de ese dominio de carga).

Los servidores 122, 124 y 126 incluyen módulos de procesamiento respectivos 1221, 1241 y 1261 y módulos de memoria respectivos 1222, 1242 y 1262. Cada uno de los módulos de procesamiento incluye uno o más procesadores o circuitos de procesamiento, por ejemplo procesadores duales. Y cada uno de los módulos de memoria incluye instrucciones ejecutables por máquina (software (SW)) para hacer que los módulos de procesamiento respectivos ejecuten actos según se describe a continuación en la sección de método de ejemplo. 15 Además, en la realización de ejemplo, cada uno de los servidores incluye las instrucciones de cada uno de los otros servidores, permitiendo, por ejemplo, que un servidor de carga (LS) sea operado fácilmente como un servidor de vigilancia de carga (LM) o un servidor de distribución (DS). (En algunas realizaciones, cada uno de los servidores se implementa como un servidor blade, es decir, una sola tarjeta de circuito poblada con componentes tales como procesadores, memoria y conexiones de red que usualmente se encuentran en tarjetas múltiples. Los servidores 2 blade son más eficientes en coste, más pequeños y consumen menos potencia que los servidores tradicionales basados en caja usados en otras realizaciones).

Adicionalmente, cada uno de los servidores 122 de carga incluye, o está asociado con, una estructura de datos de acuerdo de nivel de servicio (SLA) que gobierna el contexto operativo del servidor de carga. Una estructura 1223 de datos de SLA, que se es representativa, incluye un campo 1223A de cliente para indicar a qué bases de datos o 25 colecciones de bases de datos deben aceptar las solicitudes de carga, u otro trabajo que debe ser aceptado por el servidor de carga asociado; un campo de prioridad 1223B para indicar un prioridad mínima de las solicitudes de carga u otro trabajo que deba ser aceptado por el servidor de carga asociado; y un indicador temporal 1223C para indicar aspectos temporales relacionados del acuerdo de nivel de servicio, tales como el periodo o duración efectivos del acuerdo. Algunas realizaciones proporcionan dos estructuras de datos de SLA, una permanente y otra temporal, 3 teniendo la temporal una vida que expira después de un periodo de tiempo predeterminado y que permite que la estructura de datos de SLA anterior se restablezca automáticamente. De este modo, por ejemplo, un usuario, que emplea una GUI (interfaz gráfica de usuario), no mostrada,... [Seguir leyendo]

 


Reivindicaciones:

1. Un sistema (1) de recuperación de información que comprende: una cola (128) para almacenar solicitudes de datos de carga;

un conjunto de dos o más servidores (122) de carga para recuperar datos de la cola (128) e indexar documentos para recuperación basándose en los datos recuperados de la cola (128);

monitores de carga primero y segundo (124) para vigilar el funcionamiento de los servidores (122) de carga y proporcionar nuevos datos sobre la cola (128) accesible por los servidores (122) de carga, estando configurado el primer monitor (124) de carga para proporcionar información relativa a sus operaciones al segundo monitor (124) de carga y estando configurado el segundo monitor (124) de carga para responder a información de estado que indica fallo del primer monitor (124) de carga con el fin de encargarse de la vigilancia de los servidores de carga y proporcionar nuevos datos sobre la cola (128);

en el que cada servidor (122) de carga está asociado con una estructura (1223) de datos de acuerdo de nivel de servicio, incluyendo la estructura (1223) de datos de acuerdo de nivel de servicio un primer campo (1223B) para indicar una prioridad mínima de solicitudes de indexación de documentos que se le permite aceptar al servidor (122) de carga; un segundo campo (1223A) para identificar en qué bases de datos se permite indexar documentos al servidor (122) de carga; y un tercer campo (1223C) que indica un aspecto temporal asociado con un periodo o una duración efectivos de la estructura (1223) de datos de acuerdo de nivel de servicio.

2. El sistema según la reivindicación 1, en el que, para proporcionar información de estado al segundo monitor (124) de carga, el primer monitor (124) de carga está configurado para escribir periódicamente un informe con sello de tiempo en una porción predeterminada de un dispositivo de almacenamiento accesible en red y el segundo monitor (124) de carga está configurado para leer, a intervalos predeterminados, el informe con sello de tiempo en el dispositivo de almacenamiento accesible en red.

3. El sistema según la reivindicación 1, en el que el primer monitor (124) de carga está configurado para notificar a cada uno de los servidores (122) de carga cuándo se añaden nuevos datos a la cola (128), y en el que cualquiera de los servidores (122) de carga que no esté ocupado está configurado para responder a la notificación intentando recuperar los nuevos datos de la cola (128) y para indexar los documentos basándose en los nuevos datos.

4. El sistema según la reivindicación 1, que además comprende un conjunto de dos o más servidores de distribución configurados para distribuir respectivamente datos de índica generados por los servidores (122) de carga y documentos correspondientes a un índice primario y una base de datos primaria (13) para uso por abonados.

5. Sistema según la reivindicación 4, en el que cada servidor (122) de carga está configurado para proporcionar una notificación de carga a cada uno de los servidores de distribución para indicar que se ha finalizado la indexación de un conjunto de documentos basándose en datos recuperados de la cola (128); y

en el que cualquiera de los servidores de distribución que no esté ocupado está configurado para responder a la notificación de carga intentando distribuir datos de índice generados por el servidor de carga que proporcionó la notificación de carga al índice primario y para distribuir documentos correspondientes a la notificación de carga a la base de datos primaria (13).

6. El sistema según la reivindicación 5, en el que cada servidor de distribución está configurado para proporcionar una notificación de distribución a cada uno de los monitores de carga (124) con el fin de indicar que se ha completado la distribución de un conjunto de documentos, basándose en datos recuperados de la cola (128), al índice primario y a la base de datos primaria (13).

7. El sistema según la reivindicación 6, que además comprende medios, sensibles a la notificación de distribución, para replicar los datos de índice y documentos distribuidos en un índice y base de datos (14) secundarios.

8. El sistema según la reivindicación 5, en el que cada servidor (122) de carga está configurado para comprobar la cola (128) en busca de nuevos datos después de proporcionar la notificación del cargador.

9. El sistema según la reivindicación 7, en el que el primer monitor (124) de carga está configurado para confirmar la réplica de los datos de índice y documentos distribuidos en el índice y base de datos (14) secundarios, y en respuesta a la confirmación de la réplica, escribir un mensaje de finalización de carga con sello de tiempo en un dispositivo de almacenamiento accesible en red; y en el que el segundo monitor (124) de carga está configurado para determinar periódicamente si el dispositivo de almacenamiento accesible en red incluye mensajes que confirman el funcionamiento adecuado del primer monitor (124) de carga.

1. Un método de carga de datos en un sistema (1) de recuperación de información en línea, comprendiendo el método:

recibir un archivo que contiene documentos para su adición a una base de datos (13, 14) de un sistema (1) de

recuperación de información en línea;

notificar esto a dos o más servidores (122) de carga en respuesta a la recepción del archivo; indexar los documentos del archivo usando uno de los servidores (122) de carga notificados; cargar los documentos indexados en la base de datos (13, 14);

notificar a dos o más de los monitores (124) de carga que los documentos se han cargado en la base de datos (13, 14);

confirmar que los documentos se han cargado en la base de datos (13, 14) usando un primero de los monitores (124) de carga notificados; y

confirmar el funcionamiento adecuado de un primero de los monitores (124) de carga notificados usando un segundo de los monitores (124) de carga notificaos,

en el que cada servidor (122) de carga está asociado con una estructura (1223) de datos de acuerdo de nivel de servicio, incluyendo la estructura (1223) de datos de acuerdo de nivel de servicio un primer campo (1223B) para indicar una prioridad mínima de solicitudes de indexación de documentos que se le permite aceptar al servidor (122) de carga; un segundo campo (1223A) para identificar en qué bases de datos (13, 14) se permite indexar documentos al servidor (122) de carga; y un tercer campo (1223C) que indica un aspecto temporal asociado con un periodo o una duración efectivos de la estructura (1223) de datos de acuerdo de nivel de servicio.

11. El método según la reivindicación 1, en el que la notificación a dos o más servidores (122) de carga comprende: detectar la recepción del archivo;

añadir datos relativos al archivo a una cola (128) de carga; y

notificar a los dos o más servidores (122) de carga que se han añadido nuevos datos a la cola (128) de carga.

12. El método según la reivindicación 1, en el que la carga de los documentos indexados en la base de datos (13, 14) comprende:

notificar a dos o más servidores (126) de distribución que los datos de índice y los documentos correspondientes están disponibles para carga; y

usar uno de los dos o más servidores (126) de distribución para cargar los datos de índice y los documentos correspondientes en la base de datos (13, 14).