ES2896059T3 - Método y sistema para el seguimiento y la verificación de mensajes - Google Patents

Método y sistema para el seguimiento y la verificación de mensajes Download PDF

Info

Publication number
ES2896059T3
ES2896059T3 ES11306756T ES11306756T ES2896059T3 ES 2896059 T3 ES2896059 T3 ES 2896059T3 ES 11306756 T ES11306756 T ES 11306756T ES 11306756 T ES11306756 T ES 11306756T ES 2896059 T3 ES2896059 T3 ES 2896059T3
Authority
ES
Spain
Prior art keywords
invalidation
servers
server
messages
module
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
ES11306756T
Other languages
English (en)
Inventor
Remy Gole
Benoit Ducol
Marc Traina
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Amadeus SAS
Original Assignee
Amadeus SAS
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Amadeus SAS filed Critical Amadeus SAS
Application granted granted Critical
Publication of ES2896059T3 publication Critical patent/ES2896059T3/es
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication
    • G06F15/173Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2358Change logging, detection, and notification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • G06F16/273Asynchronous replication or reconciliation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • G06Q50/14Travel agencies
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/182Distributed file systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/288Distributed intermediate devices, i.e. intermediate devices for interaction with other intermediate devices on the same level
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Computing Systems (AREA)
  • Business, Economics & Management (AREA)
  • Tourism & Hospitality (AREA)
  • Computer Hardware Design (AREA)
  • General Health & Medical Sciences (AREA)
  • Mathematical Physics (AREA)
  • Human Resources & Organizations (AREA)
  • Marketing (AREA)
  • Primary Health Care (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Economics (AREA)
  • Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Information Transfer Between Computers (AREA)
  • Computer And Data Communications (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Debugging And Monitoring (AREA)

Abstract

Un sistema de seguimiento de invalidación para rastrear mensajes en una arquitectura de almacenamiento en caché de una plataforma de precios y compras, en donde el sistema de seguimiento de invalidación recibe actualizaciones de datos de las bases de datos del proveedor para ser comunicadas a los servidores (202, 204) en la arquitectura de almacenamiento en caché; en donde la arquitectura de almacenamiento en caché incluye varias capas, en la que cada capa comprende uno o más servidores (202, 204), incluyendo las varias capas una capa del servidor de aplicaciones de base de datos con un servidor de aplicaciones de base de datos, una capa del servidor central de datos con una pluralidad de servidores centrales de datos y una capa del servidor de cálculo con una pluralidad de servidores de cálculo, en la que los mensajes de invalidación, para actualizar las cachés de los servidores en la arquitectura de almacenamiento en caché, se comunican de una capa a otra capa, enviando los mensajes de invalidación a todos los servidores (202, 204 ) en la arquitectura de almacenamiento en caché, y en donde el sistema de seguimiento de invalidación se distribuye a través de la arquitectura de almacenamiento en caché y emplea un servidor (100, 300) de la consola central de datos, incluyendo el sistema de seguimiento de invalidación: - el servidor de aplicaciones de base de datos, que envía mensajes de invalidación a los servidores en la capa del servidor central de datos, los servidores en la capa del servidor central de datos que envían los mensajes de invalidación a los servidores en la capa del servidor de cálculo; - un módulo de grabación dispuesto para grabar todos los mensajes de invalidación comunicados a los servidores (202, 204) desde las capas de servidores en la arquitectura de almacenamiento en caché para formar un conjunto de mensajes de invalidación enviados, el módulo de grabación que se distribuye a través de los servidores y que comprende, en los servidores (202, 204), los controladores (206, 208, 210) de mensajes de invalidación que envían los mensajes de invalidación a los controladores de mensajes de invalidación de los servidores en capas posteriores de servidores, los controladores (212, 214, 216) de registro para registrar y comprimir los mensajes de invalidación que se enviarán y las bases de datos (218, 220, 222) de mensajes de invalidación comprimidos; - un módulo registrador (124, 126, 128, 130) de teclas que se distribuye a través de los servidores para registrar todos los mensajes de invalidación recibidos por los servidores, el modulo registrador (124, 126, 128, 130) de teclas que se comunica con un módulo detector (112, 314) en el servidor (100, 300) de la consola central de datos que comprende un módulo analizador (330); - un módulo colector (332) en el servidor (100, 300) de la consola central de datos, dispuesto para recopilar y grabar detalles de los mensajes de invalidación recibidos de los servidores (202, 204) en las capas de servidores; - el módulo detector (112, 314), que incluye el módulo analizador (330), que está dispuesto para determinar periódicamente los mensajes de invalidación recibidos en cada servidor (202, 204) en la arquitectura de almacenamiento en caché y compararlos con el conjunto de mensajes de invalidación enviados para identificar uno o más mensajes de invalidación no entregados; - un módulo (400) de reproducción en el servidor (100, 300) de la consola central de datos, dispuesto para reenviar, el uno o más mensajes de invalidación no entregados identificados, al servidor(es) que no recibió el mensaje(s).

Description

DESCRIPCIÓN
Método y sistema para el seguimiento y la verificación de mensajes
Campo de la invención
La presente invención se refiere a un método y a un sistema para rastrear y verificar mensajes, y tomar medidas correctivas si es necesario.
Antecedentes de la invención
En un sistema de viaje hay muchos mensajes distribuidos de un lugar a otro. Un sistema de viaje puede contener, normalmente, un servidor central de datos y una arquitectura de almacenamiento en caché compuesta por varios niveles diferentes de cachés distribuidos por todo el sistema. La arquitectura de almacenamiento en caché adquiere actualizaciones de varios proveedores diferentes que luego se comunican desde un servidor de aplicaciones a los diferentes niveles de cachés. El sistema funciona sobre la base de que no se requiere confirmación del mensaje o mensajes. El sistema asume que el mensaje o mensajes han sido bien recibidos. El servidor de aplicaciones de base de datos enviará mensajes a varias cachés centrales en servidores centrales de datos, que a su vez luego enviarán mensajes a una caché local en un gran número de servidores de computación. Estos mensajes están destinados a invalidar el contenido de las cachés. Se denominan mensajes de invalidación. En el sistema de viaje típico, puede haber hasta 100.000 actualizaciones cada día, lo que equivale a un gran número de mensajes a tratar. Surge un problema si no se reciben los mensajes, momento en el que pueden surgir problemas que pueden causar un impacto financiero en los clientes. Para garantizar y controlar la consistencia de los datos en una arquitectura de almacenamiento en caché distribuida, pueden utilizarse mensajes de invalidación asíncronos. La manera en la que esto se logra es difícil y requiere mucho tiempo, y actualmente no se ha logrado de una manera efectiva.
Se han propuesto varios sistemas para tratar la auditoría de los billetes de pasajeros de aerolíneas. Las aerolíneas Northwest han propuesto un sistema de este tipo, que utiliza un proceso de auditoría de sistema experto para revisar los informes. Este sistema no soluciona muchos de los problemas asociados con los problemas de seguimiento de los mensajes de invalidación y similares. De manera similar, otros sistemas proporcionan productos de verificación de tarifas y productos de mapeo y armonización, que nuevamente no resuelven los problemas de seguimiento de los mensajes de invalidación.
El documento US 2008/0235292 A1 se refiere al mantenimiento de la coherencia de la memoria caché contenida en una arquitectura de varios niveles de servidores distribuidos, sin una unidad central que se ocupe del seguimiento de la invalidación.
El documento US 6.604.205 describe un método y un sistema para la sincronización de estados entre al menos dos dispositivos conectados en la misma red. El primer dispositivo envía un mensaje al segundo dispositivo con un primer identificador adjunto al mensaje. A continuación, el segundo dispositivo aplica un proceso específico al mensaje que, a su vez, transforma el primer identificador en un segundo identificador. A continuación, el primer dispositivo envía la solicitud de estado al segundo dispositivo para solicitar la transmisión del segundo identificador. El módulo de comparación del primer dispositivo compara entonces el primer identificador y el segundo identificador para determinar si el estado del primer dispositivo está sincronizado con el estado del segundo.
Objetos de la invención
Es un objeto de la presente invención superar al menos algunos de los problemas asociados con la técnica anterior.
Es un objeto adicional de la presente invención proporcionar un método y un sistema que puedan rastrear y supervisar eficazmente los mensajes de invalidación y reenviar los mensajes cuando sea necesario.
Compendio de la invención
La presente invención proporciona un método y un sistema como se establece en las reivindicaciones adjuntas.
Según un aspecto de la presente invención, se proporciona un sistema de seguimiento de invalidación para rastrear mensajes en una arquitectura de almacenamiento en caché de una plataforma de precios y compras, en donde el sistema de seguimiento de invalidación recibe actualizaciones de datos de las bases de datos del proveedor para ser comunicadas a los servidores en la arquitectura de almacenamiento en caché; en donde la arquitectura de almacenamiento en caché incluye varias capas, en la que cada capa comprende uno o más servidores, incluyendo las varias capas una capa del servidor de aplicaciones de base de datos con un servidor de aplicaciones de base de datos, una capa del servidor central de datos con una pluralidad de servidores centrales de datos y un capa del servidor de cálculo con una pluralidad de servidores de cálculo, en la que los mensajes de invalidación, para actualizar las cachés de los servidores en la arquitectura de almacenamiento en caché, se comunican de una capa a otra capa enviando los mensajes de invalidación a todos los servidores en la arquitectura de almacenamiento en caché, y en donde el sistema de seguimiento de invalidación se distribuye a través de la arquitectura de almacenamiento en caché y emplea un servidor de la consola central de datos, incluyendo el sistema de seguimiento de invalidación:
- el servidor de aplicaciones de base de datos que envía mensajes de invalidación a los servidores en la capa del servidor central de datos, enviando los servidores en la capa del servidor central de datos los mensajes de invalidación a los servidores en la capa del servidor de cálculo;
- un módulo de grabación dispuesto para registrar todos los mensajes de invalidación comunicados a los servidores desde las capas de servidores en la arquitectura de almacenamiento en caché para formar un conjunto de mensajes de invalidación enviados, el módulo de grabación que se distribuye a través de los servidores y que comprende, en los servidores, los controladores de mensajes de invalidación que envían los mensajes de invalidación a los controladores de mensajes de invalidación de los servidores en capas posteriores de servidores, los controladores de registro para registrar y comprimir los mensajes de invalidación que se enviarán y las bases de datos de mensajes de invalidación comprimidos;
- un módulo registrador de teclas que se distribuye a través de los servidores para registrar todos los mensajes de invalidación recibidos por los servidores, el módulo registrador de teclas que se comunica con un módulo detector en el servidor de la consola central de datos que comprende un módulo analizador,
- un módulo colector en el servidor de la consola central de datos dispuesto para recopilar y grabar detalles de los mensajes de invalidación recibidos de los servidores en las capas de servidores
- el módulo detector, que incluye el módulo analizador, está dispuesto para determinar periódicamente los mensajes de invalidación recibidos en cada servidor en la arquitectura de almacenamiento en caché y compararlos con el conjunto de mensajes de invalidación enviados para identificar uno o más mensajes de invalidación no entregados;
- un módulo de reproducción en el servidor de la consola de datos central dispuesto para reenviar, el uno o más mensajes de invalidación no entregados identificados, al servidor(es) que no recibió el mensaje(s).
Opcionalmente, el sistema de seguimiento de invalidación está dispuesto para almacenar todos los mensajes grabados y reproducidos en una base de datos histórica.
Opcionalmente, el módulo de reproducción reenvía mensajes de invalidación basándose en que se ha cumplido una condición predeterminada.
Opcionalmente, la condición predeterminada comprende una pluralidad de mensajes de invalidación no entregados recurrentes.
Opcionalmente, la condición predeterminada se activa cuando el número de mensajes coincidentes de invalidación no entregados excede un umbral predeterminado.
Opcionalmente, la condición predeterminada es una identificación de que el servidor no está operativo.
Opcionalmente, el sistema comprende además un módulo de notificación dispuesto para crear y comunicar notificaciones de mensajes de invalidación no entregados a un usuario.
Opcionalmente, el sistema comprende además un módulo de informes dispuesto para crear informes y comunicar dichos informes a un usuario.
Opcionalmente, el seguimiento de invalidación comprende además un módulo supervisor dispuesto para controlar la recuperación automática de mensajes de invalidación no entregados.
Opcionalmente, el módulo supervisor está dispuesto para generar un rango de tiempo y un conjunto de servidores para los que se deben detectar y reproducir los mensajes de invalidación perdidos.
Opcionalmente, el módulo supervisor está dispuesto para enviar una solicitud de verificación al módulo detector, indicando la solicitud un servidor de origen, una lista de servidores objetivo y el rango de tiempo,
Opcionalmente, el módulo detector está dispuesto para verificar si el servidor de origen está operativo, para solicitar al servidor de origen que cree una lista de mensajes de invalidación de origen para el rango de tiempo, para verificar si los servidores objetivo indicados por la lista de servidores objetivo están operativos, para solicitar listas de mensajes de invalidación objetivo de los servidores objetivo y para determinar los mensajes de invalidación perdidos a partir de la lista de mensajes de invalidación de origen y de las listas de mensajes de invalidación objetivo.
Opcionalmente, el sistema de seguimiento de invalidación comprende además un módulo de gestión de la configuración que almacena información relacionada con la configuración y la topografía de la arquitectura de almacenamiento en caché.
Según un segundo aspecto de la invención, se proporciona un método para el seguimiento de mensajes en una arquitectura de almacenamiento en caché de una plataforma de precios y compras, en donde el sistema de seguimiento de invalidación recibe actualizaciones de datos de las bases de datos del proveedor para ser comunicadas a los servidores en la arquitectura de almacenamiento en caché, en donde la arquitectura de almacenamiento en caché incluye varias capas, en la que cada capa comprende uno o más servidores, incluyendo las varias capas una capa del servidor de aplicaciones de base de datos con un servidor de aplicaciones de base de datos, una capa del servidor central de datos con una pluralidad de servidores centrales de datos y una capa del servidor de cálculo con una pluralidad de servidores de cálculo, en los que los mensajes de invalidación, para actualizar las cachés de los servidores en la arquitectura de almacenamiento en caché, se comunican de una capa a otra capa mediante el envío de los mensajes de invalidación a todos los servidores en la arquitectura de almacenamiento en caché, y, en donde el sistema de seguimiento de invalidación se distribuye a través de la arquitectura de almacenamiento en caché y emplea un servidor de la consola central de datos, en donde el método incluye:
- enviar mensajes de invalidación mediante el servidor de aplicaciones de base de datos a los servidores en la capa del servidor central de datos, enviando los servidores en la capa del servidor de datos central los mensajes de invalidación a los servidores en la capa del servidor de cálculo - registrar mediante un módulo de grabación todos los mensajes de invalidación comunicados a los servidores desde las capas de servidores en la arquitectura de almacenamiento en caché para formar un conjunto de mensajes de invalidación enviados, el módulo de grabación que se distribuye a través de los servidores y que comprende, en los servidores, los controladores de mensajes de invalidación que envían los mensajes de invalidación a los controladores de mensajes de invalidación de los servidores en capas posteriores de servidores, los controladores de registro para registrar y comprimir los mensajes de invalidación que se enviarán y las bases de datos de mensajes de invalidación comprimidos;
- registrar todos los mensajes de invalidación recibidos por los servidores mediante un módulo de registro de teclas, el módulo de registro de teclas que se distribuye a través de los servidores y que se comunica con un módulo detector en el servidor de la consola central de datos, que comprende un módulo analizador,
- recopilar y grabar detalles de los mensajes de invalidación recibidos de servidores en las capas de servidores mediante un módulo colector en el servidor de la consola central de datos
- determinar periódicamente mediante el módulo detector, que incluye el módulo analizador, los mensajes de invalidación recibidos en cada servidor en la arquitectura de almacenamiento en caché y compararlos con el conjunto de mensajes de invalidación enviados para identificar uno o más mensajes de invalidación no entregados;
- reenviar a través de un módulo de reproducción en el servidor de la consola central de datos, el uno o más mensajes de invalidación no entregados identificados, al servidor(es) que no recibió el mensaje(s).
Opcionalmente, el paso de almacenar todos los mensajes grabados y reproducidos en una base de datos histórica.
Opcionalmente, el paso de reenviar el mensaje de invalidación se basa en una condición predeterminada.
Opcionalmente, la condición predeterminada comprende identificar una pluralidad de mensajes de invalidación no entregados recurrentes.
Opcionalmente, la condición predeterminada comprende activar la reproducción de mensajes cuando el número de mensajes coincidentes de invalidación no entregados excede un umbral predeterminado.
Opcionalmente, la condición predeterminada comprende identificar que el servidor no está operativo.
Opcionalmente, el método incluye un paso de creación y comunicación de notificaciones de mensajes de invalidación no entregados a un usuario.
Opcionalmente, el método incluye un paso de crear informes y comunicar dichos informes a un usuario.
Opcionalmente, el método incluye un paso de controlar la recuperación automática de mensajes de invalidación no entregados a través de un módulo supervisor.
Opcionalmente, el módulo supervisor genera un rango de tiempo y un conjunto de servidores para los que se deben detectar y reproducir los mensajes de invalidación perdidos.
Opcionalmente, el módulo supervisor envía una solicitud de verificación a un módulo detector, indicando la solicitud un servidor de origen, una lista de servidores objetivo y el rango de tiempo.
Opcionalmente, el módulo detector verifica si el servidor de origen está operativo, solicita al servidor de origen que cree una lista de mensajes de invalidación de origen para el rango de tiempo, verifica si los servidores objetivo indicados por la lista de servidores objetivo están operativos, solicita listas de mensajes de invalidación objetivo de los servidores objetivo, y determina los mensajes de invalidación perdidos de la lista de mensajes de invalidación de origen y de la lista de mensajes de invalidación objetivo.
Opcionalmente, el método incluye un paso de almacenar información relacionada con la configuración y la topografía de la arquitectura de almacenamiento en caché a través de un módulo de gestión de la configuración.
Según un tercer aspecto de la invención, se proporciona un programa informático que comprende instrucciones para llevar a cabo los pasos del método según los aspectos anteriores, cuando dicho programa informático se ejecuta en un sistema informático.
Breve descripción de los dibujos
Ahora se hará referencia, a modo de ejemplo, a los dibujos adjuntos, en los que:
La Figura 1 es un diagrama de bloques del sistema de seguimiento de invalidación, de acuerdo con una realización de la invención.
La Figura 2 es un diagrama de bloques del sistema para una primera parte del proceso, de acuerdo con una realización de la invención.
La Figura 3 es un diagrama de bloques del sistema para una segunda parte del proceso, de acuerdo con una realización de la invención.
La Figura 4 es un diagrama de bloques del sistema para una tercera parte del proceso, de acuerdo con una realización de la invención.
La Figura 5 es un diagrama de bloques del sistema para una cuarta parte del proceso, de acuerdo con una realización de la invención.
La Figura 6 es un diagrama de bloques del sistema para una quinta parte del proceso, de acuerdo con una realización de la invención.
La Figura 7 es un diagrama de bloques de una perspectiva general global del sistema, de acuerdo con una realización de la invención.
La Figura 8 es un diagrama general de casos de uso del sistema, de acuerdo con una realización de la invención.
Las Figuras 9 a 18 son varios diagramas de casos de uso específicos, de acuerdo con una realización de la invención.
Descripción detallada de las realizaciones preferidas
La presente invención se refiere a un sistema de seguimiento de invalidación diseñado para ser utilizado en el contexto de un sistema de almacenamiento en caché de tarifas. La arquitectura de almacenamiento en caché de la plataforma de precios y compras (PSP) se compone de varios niveles de caché distribuidos a través de los componentes PSP. Como se muestra en la figura 2, hay un solo servidor 200 de aplicaciones de base de datos que se comunica con una pluralidad de servidores 202 centrales de datos, que a su vez se comunican con una multitud de servidores computacionales 204. En los ejemplos mostrados, hay tres servidores centrales de datos y aproximadamente 150 servidores de cálculo. Se apreciará que se puede utilizar un número diferente de servidores centrales de datos y de servidores computacionales en diferentes entornos. Esta arquitectura de almacenamiento en caché se conecta a bases de datos que adquieren continuamente actualizaciones de datos de los proveedores. Los cachés se actualizan mediante mensajes de invalidación enviados desde el servidor de aplicaciones de base de datos. Puede haber más de una base de datos, como una base de datos de archivos maestros y una base de datos de imágenes activas. Sin embargo, se pueden utilizar diferentes bases de datos en diferentes circunstancias.
El sistema y el método de seguimiento de invalidación implican verificar que los mensajes de invalidación enviados por un servidor de aplicaciones de datos sean recibidos por los usuarios finales. Las verificaciones se realizan de forma periódica y, si se identifica alguna discrepancia, los mensajes de invalidación pueden reenviarse automáticamente, o reenviarse bajo el control del usuario. Si se identifica un problema persistente, se puede producir una alarma o un mensaje de error para que los usuarios u operadores puedan estar informados. El sistema y el método de seguimiento de invalidación pueden utilizarse para realizar investigaciones en todos los componentes y subsistemas del sistema en el flujo de invalidación.
Con referencia a la figura 1, se muestra una perspectiva general de los componentes del sistema de seguimiento de invalidación. Las diversas características se describen con más detalle en la figura 3. El sistema incluye un servidor 100 de la consola de datos en el que se encuentra el seguimiento 102 de invalidación. El sistema incluye además un servidor 104 de aplicaciones de base de datos, un subsistema 106 de servidor de datos de cliente (CDS) y un subsistema 108 de fijación de precios o de búsqueda de tarifas bajas (LFS) (más tarde denominado servidores computacionales). El sistema de seguimiento de invalidación incluye tres módulos principales. Un supervisor 110 de seguimiento de invalidación gestiona la detección automática completa y reproduce o reenvía cualquier mensaje de invalidación perdido para un rango de tiempo dado y un conjunto dado de usuarios finales u objetivos. Un módulo detector 112 de seguimiento de invalidación identifica los mensajes de invalidación que faltan analizando las teclas de un archivo del registrador de teclas de los componentes de invalidación objetivo. Un módulo 114 de reproducción de seguimiento de invalidación reproduce o reenvía mensajes de invalidación perdidos a los objetivos solicitados. El sistema de seguimiento de invalidación se basa en el nivel de servicios middleware.
Un flujo de invalidación lógica incluye cuatro tipos de componentes del sistema. El primero es un servicio de invalidación del servidor de aplicaciones de base de datos ubicado en un servidor 116 de aplicaciones de base de datos. Este envía matrices de teclas lógicas a la cola de mensajes de las colas del servidor CIX (Invalidación Central) CDS. Los servidores 118 CIX reciben mensajes que contienen matrices de teclas de entidad lógica para invalidarlos y enviarlos a mensajes que contienen teclas únicas a los servidores 120 IIX (Invalidación Individual). Los servidores IIX gestionan mensajes de invalidación únicos en un caché CDS y envían los mensajes de invalidación al servidor 122 LIX (Invalidación Local) en los satélites u objetivos 124 de fijación de precios. Los servidores LIX procesan los mensajes de invalidación en servidores computacionales. Cada servidor incluye un registrador (124, 126, 128 y 130) de teclas apropiado que está en comunicación con el detector 112. El objetivo del registrador de teclas es almacenar localmente todos los mensajes recibidos por cada servidor.
El sistema de seguimiento de invalidación requiere que cada componente del sistema de invalidación registre las teclas de cualquier mensaje que reciba. Este registro se realiza a través de los componentes del sistema de registro de teclas asociados con cada servidor. La tecla se registra, lo que facilita determinar donde falló el flujo de invalidación. La comunicación entre los componentes del sistema de seguimiento de invalidación se basa en comunicaciones middleware estándar. Como resultado, toda la información necesaria relacionada con un componente particular en el sistema se almacena en un archivo de configuración dedicado de seguimiento de invalidación. La información necesaria puede incluir el nombre de host, el entorno middleware focalizado o la base de datos focalizada. El sistema de seguimiento de invalidación puede determinar si los objetivos son operables en términos de invalidación, y si no, el objetivo puede ser ignorado.
El sistema de seguimiento de invalidación monitoriza y reproduce mensajes de invalidación mediante varios procesos personalizados. El primer proceso es el proceso de grabación, en el que los mensajes de invalidación recibidos por el servidor se registran en cada servidor. En un proceso de análisis, los mensajes de invalidación recibidos en cada servidor se verifican de extremo a extremo de una manera regular basada en el tiempo. Se utiliza un proceso de reproducción si se pierde un mensaje, y automáticamente reproduce el mensaje relevante para actualizar los datos correspondientes. Se utiliza un proceso de notificación para identificar si se pierde un mensaje. Se utiliza un proceso de informes para registrar y archivar todas las acciones y generar informes estadísticos de vez en cuando. Cada uno de los procesos personalizados se describirá con referencia a las figuras 2 a 6.
Volviendo a la figura 2, cada servidor incluye un controlador de mensajes de invalidación, respectivamente 206, 208 y 210; un controlador de registro, respectivamente, 212, 214 y 216; y una base de datos de mensajes de invalidación comprimidos, respectivamente 218, 220 y 222. Los mensajes se envían desde el controlador 206 de mensajes de invalidación a los controladores 208 de mensajes de invalidación. Los controladores 208 de mensajes de invalidación luego propagan los mensajes a los controladores 210 de mensajes de invalidación respectivos.
Cada controlador de mensajes de invalidación pasa mensajes a su respectivo controlador de registro donde se registra y se comprime en los módulos 224 y 226, como se muestra en el servidor de aplicaciones de datos. Una vez que el mensaje ha sido registrado y comprimido, los mensajes comprimidos se almacenan en la base de datos 218 como se muestra en el servidor de aplicaciones de datos. Se encuentran disposiciones similares en los servidores centrales de datos y en los servidores computacionales. Esto completa el proceso de grabación de todos los mensajes de invalidación en cada servidor.
Para un sistema de almacenamiento en caché PSP típico de este tipo, el volumen total de datos será del orden de 4,5 GB por día con una tasa local de aproximadamente 15.000 mensajes por segundo. El retraso de retención del sistema de almacenamiento en caché será normalmente del orden de cinco días. Todos los mensajes que se envían se almacenan durante un tiempo predeterminado en la base de datos de mensajes de invalidación comprimidos de cada servidor.
Con referencia ahora a la figura 3, se describirá ahora el proceso de análisis. Un servidor 300 de la consola de datos está en comunicación con el servidor 200 de aplicaciones de datos, con los servidores 202 centrales de datos y con los servidores computacionales 204. El seguimiento de invalidación en el servidor de la consola de datos comprende un módulo coordinador 308, un administrador 310 de configuración, y una base de datos 312 de configuración. Además, el seguimiento de invalidación incluye además un detector 314 en comunicación con dos bases de datos: una base de datos 316 de mensajes para reproducir y una base de datos 318 histórica. El detector también está en comunicación con un colector 320 de mensajes de invalidación.
Cada uno de los servidores 200, 202 y 204 incluye un controlador de registro mostrado como 212 en el servidor 200 de aplicaciones de datos. El controlador de registro está en comunicación con la base de datos 218 de mensajes de invalidación comprimidos. El controlador de registro incluye un módulo 324 de recuperación, un módulo descompresor 326 y un módulo 328 de serialización. Los otros sensores 202 y 204 se configuran de manera equivalente.
El módulo coordinador activa periódicamente un ciclo de análisis. El módulo coordinador está en comunicación con el módulo analizador 330 en el detector 314. El analizador está, de manera similar, en comunicación con un módulo colector 332 en el colector 320 de mensajes de invalidación. El módulo colector recopila y registra detalles de los mensajes de invalidación recibidos o completados de los servidores del sistema PSP. Las colecciones están hechas de cada una de las capas del servidor: el servidor de aplicaciones de base de datos; los servidores centrales de base de datos; y los servidores de cálculo. Luego, el módulo analizador aplica un algoritmo para detectar, identificar y almacenar mensajes que no se han recibido o que se han perdido. Como se mencionó anteriormente, el registro de teclas para cada mensaje facilita identificar el mensaje y donde se perdió. Los mensajes que se han perdido y que pueden necesitar ser reproducidos posteriormente se almacenan en la base de datos 316. El administrador 310 de configuración tiene una vista centralizada de la configuración y de la topografía de los servidores del sistema PSP y puede coordinar la recopilación de los mensajes de invalidación. La configuración de la red se almacena en la base de datos 312 de configuración y puede actualizarse si la red cambia. La base de datos 318 histórica se utiliza para mantener un registro de todas las acciones. En funcionamiento, el módulo analizador 330 comprueba los mensajes recibidos en el servidor de aplicaciones de base de datos en una primera instancia. Posteriormente se comprueban los mensajes en los servidores centrales de datos y finalmente se verifican los de los servidores de cálculo. Esta secuencia permite la identificación del punto de fallo para un mensaje de invalidación particular.
El módulo recuperador 324 está en el servidor de aplicaciones de base de datos como se indica en la figura 3. El módulo recuperador 324 identifica y luego transfiere los mensajes de invalidación recibidos. Los mensajes se envían del servidor de aplicaciones de datos a los servidores centrales de datos y luego de los servidores de datos centrales a los servidores de cálculo.
Una vez analizada la recepción de mensajes de invalidación, la siguiente fase del proceso es reproducir o reenviar mensajes en el caso de que se hayan identificado mensajes perdidos. Esto se describirá con referencia a la figura 4, donde elementos similares de la figura 3 tendrán los mismos números de referencia y no se describirán con más detalle a menos que esto pertenezca al proceso de reproducción de mensajes de invalidación. Además de los módulos descritos anteriormente, el seguimiento de invalidación incluye un módulo 400 de reproducción y un módulo 402 de envío de mensajes de invalidación. Después del análisis de los mensajes de invalidación perdidos, se determina el número de mensajes que se han perdido para un servidor en particular. Si el número de mensajes perdidos está por debajo de un cierto umbral, se notifica al remitente o al usuario, y se reenvían los mensajes perdidos. Sin embargo, si el número de mensajes perdidos supera un cierto umbral, se envía un estado de alerta a un coordinador o usuario, ya que es probable que el servidor en cuestión ya no esté operativo y que el reenvío de mensajes no sirva para nada.
Todas las acciones y mensajes registrados y reproducidos se almacenan en la base de datos histórica. Una vez identificado que un mensaje se ha perdido en un cierto servidor, el módulo de envío de mensajes de invalidación enviará el mensaje perdido al servidor que no recibió el mensaje. Si este servidor era el servidor de aplicaciones de datos o uno de los servidores centrales de datos, el mensaje luego se pasará, respectivamente, a los servidores centrales de datos y a los servidores de cálculo. Si un mensaje se perdió en un servidor en particular, cualquier servidor después de ese punto tampoco habrá recibido el mensaje, de ahí la razón para pasar el mensaje cuando se reproduce para cualquier servidor distinto de los servidores de cálculo, que son los puntos finales del flujo de invalidación. Los mensajes enviados dentro de los servidores del sistema PSP siguen el flujo de invalidación estándar del servidor que recibe el mensaje reproducido.
Con referencia a la figura 5, el sistema de seguimiento de invalidación incluye un módulo 500 de notificación que puede utilizarse para enviar notificaciones basadas en el estado de los mensajes que se han reproducido. Los mensajes pueden incluir el hecho de que todos los mensajes perdidos se han reproducido. Alternativamente, se puede enviar un mensaje indicando que los mensajes se han reproducido varias veces. Si el número de mensajes que se pierden está por encima de un cierto umbral, se puede generar una notificación, que da una indicación de que un servidor en particular no está operativo actualmente. Las notificaciones pueden enviarse mediante cualquier complemento de comunicación adecuado, como correo, RSS (un formato de alimentación web), SMS, etc.
De manera similar, la figura 6 describe el proceso de notificación de la presente invención. El sistema de seguimiento de invalidación incluye una base de datos 600 de archivo, un módulo 602 de archivo, un módulo 604 de estadísticas y una base de datos 606 de informes.
El módulo coordinador puede activar periódicamente la generación de informes. Además, la naturaleza de los informes puede predefinirse o desarrollarse y generarse a petición de un usuario o proveedor en particular. La naturaleza de los informes puede identificarse mediante el módulo de gestión de la configuración. La base de datos de archivo incluye más retención de datos a largo plazo que la base de datos histórica y el módulo de archivo puede acceder a la base de datos de archivo y, utilizando las estadísticas adecuadas, generar los informes necesarios.
Cada una de las figuras 2 a 6 se ha utilizado para describir parte del proceso llevado a cabo por el sistema de seguimiento de invalidación. La Figura 7 muestra una vista global general del sistema de seguimiento de invalidación. Los diversos elementos están numerados si están de acuerdo con elementos similares en las figuras 2 a 6 y la explicación y la descripción equivalentes se aplicarán a cada elemento. El sistema de seguimiento de invalidación como se describe anteriormente está completamente automatizado y es altamente configurable. Además, el sistema de seguimiento de invalidación es distribuido, escalable y capaz de integrarse con cualquier sistema PSP global.
La presente invención se utiliza para gestionar el enorme volumen de mensajes de invalidación utilizados en la industria de viajes. Se puede monitorizar una gran cantidad de hosts y se puede rastrear un flujo de datos permanente. Ahora se hará referencia a varios ejemplos de casos de uso para demostrar más la funcionalidad de la presente invención. La Figura 8 muestra un diagrama de casos de uso general. Un supervisor 800 de seguimiento de invalidación es un módulo de alto nivel que gestiona la detección y la reproducción completamente automática de los mensajes de invalidación perdidos para un rango de tiempo dado y un conjunto de servidores dado. El módulo detector 802 de seguimiento de invalidación determina los mensajes de invalidación perdidos analizando las teclas de los archivos del registrador de teclas para identificar componentes de invalidación. El módulo 804 de reproducción de seguimiento de invalidación reproduce los mensajes de invalidación perdidos a los objetivos solicitados mediante el proceso 806 de invalidación. Un usuario 808 está en comunicación con los diversos módulos y la programación de los procesos es gestionada por el sistema planificador 810.
En el siguiente caso de uso específico, un usuario o un supervisor 900 de seguimiento de invalidación está en comunicación con varios objetivos a los que se envían, reciben o de otro manejan, mensajes de invalidación. Los términos usuario y destinatarios, en la siguiente sección, deben interpretarse de esta manera.
La Figura 9 muestra el caso de uso en el que todos los objetivos están operativos y no se pierden mensajes de validación. El detector 902 de seguimiento de invalidación recibe los mensajes de invalidación enviados y recibidos entre los diversos componentes del sistema y comprueba si se ha perdido algún mensaje. Si se ha perdido un mensaje, se proporciona una lista de teclas perdidas. El rango de tiempo del análisis está predefinido y el usuario utiliza el detector de seguimiento de invalidación para investigaciones específicas. Alternativamente, se pueden programar comprobaciones automáticas para que se realicen automáticamente.
En un primer paso 904 se envía una solicitud de verificación desde el usuario al detector de seguimiento de invalidación. Esta solicitud puede basarse en varios criterios diferentes. En el paso 906, el detector de seguimiento de invalidación verifica la ruta de invalidación con el componente 908 de invalidación de origen. El componente de invalidación de origen indica que el componente está operativo en el paso 910. En el paso 912, el detector de seguimiento de invalidación solicita al componente de invalidación de origen que cree una lista de invalidación de origen para un rango de tiempo específico; esto se devuelve en el paso 914. Posteriormente, el detector de seguimiento de invalidación lleva a cabo una investigación de todos los componentes de invalidación objetivo. Para cada componente de invalidación objetivo, se llevan a cabo los siguientes pasos. El detector de seguimiento de invalidación determina a partir del componente 916 de invalidación del seguimiento si la ruta de invalidación está operativa en el paso 918. Se envía una respuesta desde el componente de invalidación objetivo para confirmar que el componente está operativo en el paso 920. El detector de seguimiento de invalidación solicita una lista de invalidación objetivo durante un rango de tiempo específico a partir del componente de invalidación objetivo en el paso 922. En este caso, el componente 916 de invalidación objetivo confirma que no se han perdido mensajes de invalidación en el paso 924. Después de que todos los componentes de invalidación objetivo se hayan verificado de esta manera, el detector de seguimiento de invalidación determina si hay algún mensaje que se haya perdido en el paso 926. En este caso, como no se han perdido mensajes, el detector de seguimiento de invalidación comunica que no hay teclas perdidas al usuario en el paso 928. La lista de mensajes de invalidación objetivo se construye basándose en las teclas lógicas registradas por el componente del sistema de invalidación solicitado en el rango de tiempo dado. La lista en sí comprende teclas lógicas registradas por el sistema de invalidación solicitado para el tiempo dado. El paso 926 comprende un paso de comparación en el que se comparan las listas de teclas registradas por los servidores y los componentes del sistema de invalidación de destino.
Con referencia ahora a la figura 10, este caso de uso se refiere a los objetivos que están operativos pero se pierden mensajes de invalidación. Los pasos 904, 906, 910, 912, 914, 918, 920 y 922 se llevan a cabo como se describe en la figura 9. Sin embargo, en este caso se han perdido mensajes de uno o más de los componentes de invalidación objetivo. Como resultado, en el paso 1000 se produce una indicación de que se han detectado mensajes de invalidación perdidos. En el paso 1002, la comprobación de mensajes perdidos identifica las teclas perdidas para cada servidor y luego se lo comunica al usuario en el paso 1004.
Con referencia ahora a la figura 11, el caso de uso se refiere a un objetivo que no está operativo. Como en los ejemplos anteriores, los pasos 904, 906, 910, 912, 914 y 918 se llevan a cabo como se describió anteriormente. Como el componente de invalidación objetivo no está operativo, el detector de seguimiento de invalidación determina que el objetivo está inactivo en el paso 1100. En el paso 1102 se notifica al usuario que el componente de invalidación objetivo específico no está operativo y no está recibiendo mensajes.
La Figura 12 se relaciona con el caso de uso en el que un componente de invalidación de origen no está operativo. Los pasos 904 y 906 se llevan a cabo como se describió anteriormente. Como el componente de invalidación de origen no está operativo en el paso 1200, se notifica al detector de seguimiento de invalidación que el componente no está operativo. A continuación, esto se comunica al usuario en el paso 1202.
La Figura 13 se refiere al caso de uso en el que se pierden varios mensajes de invalidación, pero el número no ha alcanzado el umbral predeterminado debatido anteriormente. Además, el caso de uso se refiere a la situación en la que no hay un mensaje de invalidación perdido recurrente de un objetivo en particular. En este caso el usuario, o el supervisor 900 de seguimiento de invalidación, se comunica con el módulo 1300 de reproducción de seguimiento de invalidación y con el proceso 1302 de invalidación. El usuario envía una lista de mensajes de invalidación para reproducir, en el paso 1306, al módulo 1300 de reproducción de seguimiento de invalidación. El umbral (que se relaciona con el número máximo de mensajes de invalidación que pueden reproducirse para un objetivo en particular) y el retraso sobre el cual se mide el umbral son determinados por el usuario. La lista de mensajes que ya se han reproducido para cada objetivo está actualizada, lo que significa que los únicos mensajes que faltan que se tratan en el momento actual son los de la lista proporcionada en el paso 1306. El módulo de reproducción de seguimiento de invalidación puede ser controlado por un usuario o un supervisor durante un proceso de supervisión. La lista de mensajes para reproducir debe contener solo mensajes perdidos no recurrentes y mensajes que no alcanzaron un objetivo específico, pero que no alcanzaron el umbral. Cualquier mensaje perdido no recurrente se reproduce con el retraso configurado por el usuario, basándose en la temporización del mensaje de invalidación que se envía. Un retraso típico es del orden de un segundo. Para proteger la cantidad de información que se está reproduciendo, el sistema no reproduce mensajes de invalidación si el número de mensajes ha alcanzado un umbral para cada objetivo, o el mensaje ya se ha reproducido durante el rango de tiempo dado. En la situación en la que se ha alcanzado un umbral, se activa una alarma y se envía al usuario mediante cualquier medio apropiado, como correo electrónico.
Volviendo a la figura 13, el paso 1308 se refiere a un paso para filtrar teclas lógicas. El filtro determina a partir de la lista de mensajes dada y para un objetivo dado las teclas lógicas a invalidar. No se filtran teclas porque el umbral por objetivo no ha alcanzado el umbral y no hay mensajes de invalidación perdidos recurrentes. Como resultado, todas las teclas de la lista están marcadas como listas para reproducir. En el paso 1310, la lista de teclas lógicas para los mensajes de invalidación que se han perdido se envía al proceso de invalidación. Al mismo tiempo, se almacena una lista de teclas reproducidas y se comunica al usuario en el paso 1312.
En la figura 14, el caso de uso se refiere a varios mensajes de invalidación que se han perdido alcanzando o superando el umbral de al menos un objetivo. El paso 1306 se lleva a cabo como se describió anteriormente. El filtro se aplica en el paso 1400. En este caso, el filtro filtra todas las teclas lógicas para los mensajes de invalidación ya que el número de mensajes de invalidación perdidos ha alcanzado o superado el umbral para al menos un objetivo. Como resultado, el sistema no reproducirá ningún mensaje de invalidación. En su lugar, se envía un mensaje al usuario en el paso 1402 para indicar que se han perdido demasiados mensajes para reproducirlos.
La Figura 15 se refiere al caso de uso en el que hay mensajes de invalidación perdidos recurrentes para un objetivo en particular. Los pasos 1306 se llevan a cabo como se describió anteriormente. En el paso 1500 se aplica un filtro a la lista de mensajes de invalidación. En la lista, en este caso, hay algunos errores recurrentes. Estos se filtran en el paso 1500 y generan una alarma de mensajes recurrentes perdidos en el paso 1502. Otros mensajes de la lista se envían al proceso de invalidación en el paso 1504 y se reproducen para el objetivo en cuestión. En el paso 1506 se notifica al usuario de los mensajes que se han reproducido, de modo que puedan almacenarse.
La Figura 16 describe un caso de uso en el que hay mensajes de invalidación perdidos en varios objetivos. El mensaje 1306 se envía como se describió anteriormente y se aplica un filtro en el paso 1600. El filtro determina que hay demasiados mensajes perdidos para la caja 1 (objetivo uno) y se genera un mensaje de alarma en el paso 1602. Además, el filtro identifica que la caja 2 (objetivo dos) tiene varios mensajes perdidos recurrentes en el paso 1604. El módulo de reproducción de seguimiento de invalidación genera entonces la lista de mensajes que se reproducirán a través del proceso 1302 de invalidación en el paso 1606. El paso 1606 no incluye mensajes para reproducir mensajes para la caja 1; los mensajes para la caja 2 son solo aquellos que se relacionan con teclas perdidas no recurrentes; y para todas las demás cajas (objetivos) se reproducen todas las teclas perdidas. En el paso 1608 se notifica al usuario de los mensajes que se han reproducido para que puedan almacenarse.
La Figura 17 se refiere al caso de uso que implica al supervisor 1700 de seguimiento de invalidación. El proceso es coordinado por el sistema planificador 1702 para ejecutar regularmente el proceso. El sistema también hace uso del detector 902 de seguimiento de invalidación y del módulo 1300 de reproducción de seguimiento de invalidación. Se genera un rango de tiempo y una lista de los componentes del sistema a comprobar y el módulo de reproducción de seguimiento de invalidación se desactiva. Se genera una lista de mensajes de invalidación perdidos como resultado del proceso, si hay mensajes perdidos. Este caso de uso describe el proceso que supervisa el flujo de mensajes de invalidación y es completamente automático. Se pueden generar informes que contengan mensajes de invalidación perdidos. En un primer paso 1704, el programador del sistema genera una solicitud de mensajes de invalidación de verificación para un rango de tiempo específico. En el paso 1706, el supervisor de seguimiento de invalidación solicita al detector de seguimiento de invalidación que verifique globalmente el flujo de invalidación durante un período de tiempo dado. El detector de seguimiento de invalidación identifica cualquier tecla o mensaje perdido y los devuelve en una lista en el paso 1708.
La Figura 18 muestra el caso de uso en el que un supervisor de seguimiento de invalidación genera una reproducción automática. Los pasos 1704, 1706 y 1708 proceden como se describió anteriormente. Este caso de uso describe el proceso que supervisa el flujo de mensajes de invalidación; está programado por el sistema planificador; y es completamente automático. El módulo de reproducción de seguimiento de invalidación genera informes y alarmas que se envían al usuario en caso de un error recurrente. El proceso de supervisión utiliza funcionalidades ya descritas en los casos de uso del detector de seguimiento de invalidación y del módulo de reproducción de seguimiento de invalidación. En el paso 1804 se envía una lista de mensajes de invalidación de reproducción desde el supervisor de seguimiento de invalidación al módulo de reproducción de seguimiento de invalidación. Solo se reproducirán los mensajes de invalidación no recurrentes. La confirmación de que los mensajes se han reproducido se envía en el paso 1802 al supervisor de seguimiento de invalidación, y en el paso 1804 al usuario.
Una persona experta en la técnica comprenderá que algunas o todas las entidades funcionales, así como los propios procesos, pueden estar incorporados en software, o uno o más módulos y/o dispositivos habilitados por software o en cualquier combinación de los mismos. El software puede funcionar en cualquier ordenador u otra máquina apropiada. El funcionamiento de la invención proporciona varias transformaciones, como la supervisión de mensajes de invalidación y el reenvío, según sea necesario.
El sistema y el método funcionan en una máquina específica como un ordenador configurado para llevar a cabo los diversos pasos y funciones de la invención. La invención también se refiere a varias transformaciones, incluida la capacidad de supervisar los datos del registro de teclas y utilizarlos para reenviar o reproducir mensajes.
Esta invención se ha descrito con referencia al uso de mensajes de invalidación en el entorno de viajes. Sin embargo, se apreciará que la invención puede aplicarse a otros entornos. Se apreciará que esta invención puede variarse de muchas formas diferentes y aún permanecer dentro del alcance pretendido de la invención como se define en las reivindicaciones.

Claims (19)

REIVINDICACIONES
1. Un sistema de seguimiento de invalidación para rastrear mensajes en una arquitectura de almacenamiento en caché de una plataforma de precios y compras, en donde el sistema de seguimiento de invalidación recibe actualizaciones de datos de las bases de datos del proveedor para ser comunicadas a los servidores (202, 204) en la arquitectura de almacenamiento en caché; en donde la arquitectura de almacenamiento en caché incluye varias capas, en la que cada capa comprende uno o más servidores (202, 204), incluyendo las varias capas una capa del servidor de aplicaciones de base de datos con un servidor de aplicaciones de base de datos, una capa del servidor central de datos con una pluralidad de servidores centrales de datos y una capa del servidor de cálculo con una pluralidad de servidores de cálculo, en la que los mensajes de invalidación, para actualizar las cachés de los servidores en la arquitectura de almacenamiento en caché, se comunican de una capa a otra capa, enviando los mensajes de invalidación a todos los servidores (202, 204 ) en la arquitectura de almacenamiento en caché, y en donde el sistema de seguimiento de invalidación se distribuye a través de la arquitectura de almacenamiento en caché y emplea un servidor (100, 300) de la consola central de datos, incluyendo el sistema de seguimiento de invalidación:
- el servidor de aplicaciones de base de datos, que envía mensajes de invalidación a los servidores en la capa del servidor central de datos, los servidores en la capa del servidor central de datos que envían los mensajes de invalidación a los servidores en la capa del servidor de cálculo;
- un módulo de grabación dispuesto para grabar todos los mensajes de invalidación comunicados a los servidores (202, 204) desde las capas de servidores en la arquitectura de almacenamiento en caché para formar un conjunto de mensajes de invalidación enviados, el módulo de grabación que se distribuye a través de los servidores y que comprende, en los servidores (202, 204), los controladores (206, 208, 210) de mensajes de invalidación que envían los mensajes de invalidación a los controladores de mensajes de invalidación de los servidores en capas posteriores de servidores, los controladores (212, 214, 216) de registro para registrar y comprimir los mensajes de invalidación que se enviarán y las bases de datos (218, 220, 222) de mensajes de invalidación comprimidos;
- un módulo registrador (124, 126, 128, 130) de teclas que se distribuye a través de los servidores para registrar todos los mensajes de invalidación recibidos por los servidores, el modulo registrador (124, 126, 128, 130) de teclas que se comunica con un módulo detector (112, 314) en el servidor (100, 300) de la consola central de datos que comprende un módulo analizador (330);
- un módulo colector (332) en el servidor (100, 300) de la consola central de datos, dispuesto para recopilar y grabar detalles de los mensajes de invalidación recibidos de los servidores (202, 204) en las capas de servidores;
- el módulo detector (112, 314), que incluye el módulo analizador (330), que está dispuesto para determinar periódicamente los mensajes de invalidación recibidos en cada servidor (202, 204) en la arquitectura de almacenamiento en caché y compararlos con el conjunto de mensajes de invalidación enviados para identificar uno o más mensajes de invalidación no entregados;
- un módulo (400) de reproducción en el servidor (100, 300) de la consola central de datos, dispuesto para reenviar, el uno o más mensajes de invalidación no entregados identificados, al servidor(es) que no recibió el mensaje(s).
2. El sistema de la reivindicación 1, en donde el sistema de seguimiento de invalidación está dispuesto para almacenar todos los mensajes grabados y reproducidos en una base de datos (318) histórica.
3. El sistema de cualquier reivindicación precedente, que comprende además un módulo (500) de notificación dispuesto para crear y comunicar notificaciones de mensajes de invalidación no entregados a un usuario (808).
4. El sistema de cualquier reivindicación precedente, que comprende además un módulo de informes dispuesto para crear informes y comunicar dichos informes a un usuario (808).
5. El sistema de cualquier reivindicación precedente, en donde el seguimiento de invalidación comprende además un módulo supervisor (110, 308, 404, 800) dispuesto para controlar la recuperación automática de mensajes de invalidación no entregados.
6. El sistema de la reivindicación 5, en donde el módulo supervisor (110, 308, 404, 808) está dispuesto para generar un rango de tiempo y un conjunto de servidores (202, 204) para los que se deben detectar y reproducir los mensajes de invalidación perdidos.
7. El sistema de la reivindicación 6, en donde el módulo supervisor (110, 308, 404, 808) está dispuesto para enviar una solicitud de verificación al módulo detector (112, 314, 902), indicando la solicitud un servidor de origen, una lista de servidores objetivo y el rango de tiempo.
8. El sistema de la reivindicación 7, en donde el módulo detector (112, 314, 902) está dispuesto para
- comprobar si el servidor de origen está operativo;
- solicitar al servidor de origen que cree una lista de mensajes de invalidación de origen para el rango de tiempo;
- comprobar si los servidores objetivo indicados por la lista de servidores objetivo están operativos;
- solicitar listas de mensajes de invalidación objetivo de los servidores objetivo, y
- determinar los mensajes de invalidación perdidos a partir de la lista de mensajes de invalidación de origen y de las listas de mensajes de invalidación objetivo.
9. El sistema de cualquier reivindicación precedente, en donde el sistema de seguimiento de invalidación comprende además un módulo (312) de gestión de la configuración que almacena información relacionada con la configuración y la topografía de la arquitectura de almacenamiento en caché.
10. Un método para rastrear mensajes en una arquitectura de almacenamiento en caché de una plataforma de precios y compras, en donde el sistema de seguimiento de invalidación recibe actualizaciones de datos de las bases de datos del proveedor para ser comunicadas a los servidores (202, 204) en la arquitectura de almacenamiento en caché; en donde la arquitectura de almacenamiento en caché incluye varias capas, en la que cada capa comprende uno o más servidores (202, 204), incluyendo las varias capas una capa del servidor de aplicaciones de base de datos con un servidor de aplicaciones de base de datos, una capa del servidor central de datos con una pluralidad de servidores centrales de datos y una capa del servidor de cálculo con una pluralidad de servidores de cálculo, en la que los mensajes de invalidación, para actualizar las cachés de los servidores en la arquitectura de almacenamiento en caché, se comunican de una capa a otra capa, enviando los mensajes de invalidación a todos los servidores (202, 204) en la arquitectura de almacenamiento en caché, y en donde el sistema de seguimiento de invalidación se distribuye a través de la arquitectura de almacenamiento en caché y emplea un servidor (100, 300) de la consola central de datos, en donde el método incluye:
- enviar mensajes de invalidación mediante el servidor de aplicaciones de la base de datos a los servidores de la capa del servidor de datos central, enviando los servidores en la capa del servidor de datos central los mensajes de invalidación a los servidores de la capa del servidor de cálculo;
- grabar mediante un módulo de grabación todos los mensajes de invalidación comunicados a los servidores (202, 204) desde las capas de servidores en la arquitectura de almacenamiento en caché para formar un conjunto de mensajes de invalidación enviados, el módulo de grabación que se distribuye a través de los servidores y que comprende, en los servidores (202, 204), los controladores (206, 208, 210) de mensajes de invalidación que envían los mensajes de invalidación a los controladores de mensajes de invalidación de los servidores en capas posteriores de servidores, los controladores de registro (212, 214, 216) para registrar y comprimir los mensajes de invalidación que se enviarán y las bases de datos (218, 220, 222) de mensajes de invalidación comprimidos;
- registrar todos los mensajes de invalidación recibidos por los servidores mediante un módulo registrador (124, 126, 128, 130) de teclas, el módulo registrador (124, 126, 128, 130) de teclas que se distribuye a través de los servidores y se comunica con un módulo detector (112, 314) en el servidor (100, 300) de la consola central de datos, que comprende un módulo analizador;
- recopilar y grabar detalles de los mensajes de invalidación recibidos de los servidores (202, 204) en las capas de servidores mediante un módulo colector (332) en el servidor (100, 300) de la consola central de datos;
- determinar periódicamente mediante el módulo detector (112, 314), que incluye el módulo analizador, los mensajes de invalidación recibidos en cada servidor (202, 204) en la arquitectura de almacenamiento en caché y compararlos con el conjunto de mensajes de invalidación enviados para identificar uno o más mensajes de invalidación no entregados;
- reenviar a través de un módulo (400) de reproducción en el servidor (100, 300) de la consola central de datos, el uno o más mensajes de invalidación no entregados identificados, al servidor(es) que no recibió el mensaje(s).
11. El método de la reivindicación 10, que comprende además el paso de almacenar todos los mensajes grabados y reproducidos en una base de datos (318) histórica.
12. El método de la reivindicación 10 u 11, que comprende además el paso de crear y comunicar notificaciones de mensajes de invalidación no entregados a un usuario (808).
13. El método de cualquiera de las reivindicaciones 10 a 12, que comprende además el paso de crear informes y comunicar dichos informes a un usuario (808).
14. El método de cualquiera de las reivindicaciones 10 a 13, que comprende además controlar la recuperación automática de mensajes de invalidación no entregados a través de un módulo supervisor (110, 308, 404, 800).
15. El método de la reivindicación 14, que comprende además un módulo supervisor (110, 308, 404, 808), que genera un rango de tiempo y un conjunto de servidores (202, 204) para los que se deben detectar y reproducir los mensajes de invalidación perdidos.
16. El método de la reivindicación 15, que comprende además el módulo supervisor (110, 308, 404, 808) que envía una solicitud de verificación a un módulo detector (112, 314, 902), indicando la solicitud un servidor de origen, una lista de servidores objetivo y el rango de tiempo.
17. El método de la reivindicación 16, que comprende además el módulo detector (112, 314, 902)
- que comprueba si el servidor de origen está operativo;
- que solicita al servidor de origen que cree una lista de mensajes de invalidación de origen para el rango de tiempo;
- que comprueba si los servidores objetivo indicados por la lista de servidores objetivo están operativos;
- que solicita listas de mensajes de invalidación objetivo de los servidores objetivo, y
- que determina los mensajes de invalidación perdidos a partir de la lista de mensajes de invalidación de origen y de las listas de mensajes de invalidación objetivo.
18. El método de cualquiera de las reivindicaciones 10 a 17, que comprende además el almacenamiento de información relacionada con la configuración y la topografía de la arquitectura de almacenamiento en caché a través de un módulo (312) de gestión de la configuración.
19. Un programa informático que comprende las instrucciones para llevar a cabo los pasos del método según cualquiera de las reivindicaciones 10 a 18, cuando dicho programa informático se ejecuta en un sistema informático.
ES11306756T 2011-12-22 2011-12-22 Método y sistema para el seguimiento y la verificación de mensajes Active ES2896059T3 (es)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
EP11306756.5A EP2608061B1 (en) 2011-12-22 2011-12-22 Method and system for update message tracking and checking

Publications (1)

Publication Number Publication Date
ES2896059T3 true ES2896059T3 (es) 2022-02-23

Family

ID=47008637

Family Applications (1)

Application Number Title Priority Date Filing Date
ES11306756T Active ES2896059T3 (es) 2011-12-22 2011-12-22 Método y sistema para el seguimiento y la verificación de mensajes

Country Status (11)

Country Link
US (1) US9367578B2 (es)
EP (1) EP2608061B1 (es)
JP (1) JP6050378B2 (es)
KR (1) KR101886855B1 (es)
CN (1) CN104011719B (es)
AU (1) AU2012330499B2 (es)
BR (1) BR112014013530A2 (es)
CA (1) CA2859872C (es)
ES (1) ES2896059T3 (es)
SG (1) SG11201402530UA (es)
WO (1) WO2013091926A2 (es)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9197522B1 (en) * 2012-03-21 2015-11-24 Emc Corporation Native storage data collection using multiple data collection plug-ins installed in a component separate from data sources of one or more storage area networks
US8990375B2 (en) 2012-08-31 2015-03-24 Facebook, Inc. Subscription groups in publish-subscribe system
US9635095B1 (en) * 2012-09-12 2017-04-25 Fastly Inc. Data purge distribution and coherency
US9189510B2 (en) * 2013-02-26 2015-11-17 Facebook, Inc. System and method for implementing cache consistent regional clusters
JP5913196B2 (ja) * 2013-05-27 2016-04-27 株式会社日立製作所 計算機システム及び障害特定方法
US9641640B2 (en) * 2013-10-04 2017-05-02 Akamai Technologies, Inc. Systems and methods for controlling cacheability and privacy of objects
US9648125B2 (en) * 2013-10-04 2017-05-09 Akamai Technologies, Inc. Systems and methods for caching content with notification-based invalidation
US9813515B2 (en) 2013-10-04 2017-11-07 Akamai Technologies, Inc. Systems and methods for caching content with notification-based invalidation with extension to clients
CN103701667A (zh) * 2013-12-27 2014-04-02 乐视网信息技术(北京)股份有限公司 服务器的心跳的监控方法、装置及系统
CN104580169A (zh) * 2014-12-23 2015-04-29 惠州Tcl移动通信有限公司 一种进行文件同步的方法及系统
US10237073B2 (en) 2015-01-19 2019-03-19 InAuth, Inc. Systems and methods for trusted path secure communication
EP3373544A1 (en) * 2017-03-07 2018-09-12 ABB Schweiz AG Automatic communication network system hardening
US10698792B2 (en) * 2018-05-02 2020-06-30 Microsoft Technology Licensing, Llc Execution control with cross-level trace mapping

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6041423A (en) * 1996-11-08 2000-03-21 Oracle Corporation Method and apparatus for using undo/redo logging to perform asynchronous updates of parity and data pages in a redundant array data storage environment
US6604205B1 (en) 2000-02-07 2003-08-05 Hewlett-Packard Development Co., L.P. System and method for state synchronization
US6792544B2 (en) * 2001-04-03 2004-09-14 Ge Financial Assurance Holdings, Inc. Method and system for secure transmission of information
JP3823319B2 (ja) 2003-07-07 2006-09-20 日本電気株式会社 メッセージ送受信装置の復旧システム及び方法
US7089363B2 (en) * 2003-09-05 2006-08-08 Oracle International Corp System and method for inline invalidation of cached data
US7143244B2 (en) * 2003-09-05 2006-11-28 Oracle International Corp. System and method for invalidating data in a hierarchy of caches
US7412642B2 (en) * 2005-03-09 2008-08-12 Sun Microsystems, Inc. System and method for tolerating communication lane failures
EP1770954A1 (en) * 2005-10-03 2007-04-04 Amadeus S.A.S. System and method to maintain coherence of cache contents in a multi-tier software system aimed at interfacing large databases
US7653668B1 (en) * 2005-11-23 2010-01-26 Symantec Operating Corporation Fault tolerant multi-stage data replication with relaxed coherency guarantees
US7664125B1 (en) * 2006-01-03 2010-02-16 Emc Corporation Indication forwarding in a distributed environment
US7937618B2 (en) * 2007-04-26 2011-05-03 International Business Machines Corporation Distributed, fault-tolerant and highly available computing system
JP5359201B2 (ja) 2008-11-06 2013-12-04 富士通株式会社 コンテンツの削除更新プログラム

Also Published As

Publication number Publication date
AU2012330499B2 (en) 2014-10-30
KR101886855B1 (ko) 2018-09-11
CN104011719B (zh) 2017-07-18
US20130166729A1 (en) 2013-06-27
KR20140111257A (ko) 2014-09-18
JP2015507260A (ja) 2015-03-05
EP2608061B1 (en) 2021-07-28
WO2013091926A3 (en) 2013-10-31
CA2859872A1 (en) 2013-06-27
EP2608061A1 (en) 2013-06-26
SG11201402530UA (en) 2014-10-30
WO2013091926A2 (en) 2013-06-27
BR112014013530A2 (pt) 2017-06-13
CA2859872C (en) 2019-06-18
CN104011719A (zh) 2014-08-27
US9367578B2 (en) 2016-06-14
JP6050378B2 (ja) 2016-12-21
AU2012330499A1 (en) 2013-07-11

Similar Documents

Publication Publication Date Title
ES2896059T3 (es) Método y sistema para el seguimiento y la verificación de mensajes
US10812710B2 (en) Surveillance and monitoring system
CN104268061A (zh) 一种适用于虚拟机的存储状态监控机制
JP2015222981A (ja) モニタリングシステムにおける信頼性を向上させる方法
CN114154035A (zh) 一种动环监控的数据处理系统
CN111754653A (zh) 利用日志记录检测和响应事故的飞行器上的嵌入式系统
CN116132199B (zh) 一种基于区块链处理液氮罐监测数据的方法
JP4102592B2 (ja) 集約機能付障害情報通知システム及びマシンを集約機能付障害情報通知手段として機能させるためのプログラム
CN107704333A (zh) San存储系统的故障保存方法、装置及可读存储介质
CA2848554C (en) System and method for storing and monitoring events at security devices
FR2987533A1 (fr) Procede et systeme d'analyse de correlation de defauts pour un centre informatique
KR101520103B1 (ko) It서비스에서의 어플리케이션 장애 분석 감시 시스템 및 방법
US10592846B1 (en) Electronically monitoring data storage equipment while the data storage equipment is in transit
US20190332801A1 (en) Management of user data takeout requests
US11836352B2 (en) Detecting an abnormal event while data storage equipment is in transit
CN103733567B (zh) 网络管理系统
US20240163287A1 (en) Secure reuse of cloud at customer hardware
CN115426248B (zh) 服务管理方法、装置、设备及存储介质
CN111708561B (zh) 算法模型更新系统、方法、装置及电子设备
JP7353194B2 (ja) 搬送物又は保管物の状態の常時監視システム
CN114356710A (zh) 集群数据监控方法、装置、存储介质和电子设备
CN114495450A (zh) 一种高空抛物监控方法及装置
CN116756507A (zh) 一种运维管理方法、装置、设备及机器可读存储介质
CN115168489A (zh) 基于区块链的数据存证方法和装置
CN116719663A (zh) 一种数据处理方法、装置、设备以及可读存储介质