FR2819321A1 - Procede de traitement et d'acces a des donnees dans un systeme de reservation par ordinateur, et systeme de mise en oeuvre - Google Patents

Procede de traitement et d'acces a des donnees dans un systeme de reservation par ordinateur, et systeme de mise en oeuvre Download PDF

Info

Publication number
FR2819321A1
FR2819321A1 FR0100236A FR0100236A FR2819321A1 FR 2819321 A1 FR2819321 A1 FR 2819321A1 FR 0100236 A FR0100236 A FR 0100236A FR 0100236 A FR0100236 A FR 0100236A FR 2819321 A1 FR2819321 A1 FR 2819321A1
Authority
FR
France
Prior art keywords
cache
data
client
processing
compartment
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.)
Granted
Application number
FR0100236A
Other languages
English (en)
Other versions
FR2819321B1 (fr
Inventor
Pierre Dor
Yannick Girard
Slavko Konc
Vincent Lextrait
Culloch Anne Mc
Veronique Marquion
Francois Weissert
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
Priority to FR0100236A priority Critical patent/FR2819321B1/fr
Application filed by Amadeus SAS filed Critical Amadeus SAS
Priority to JP2002556801A priority patent/JP2004527820A/ja
Priority to US10/250,980 priority patent/US20040054751A1/en
Priority to PCT/FR2002/000067 priority patent/WO2002056212A1/fr
Priority to CA002433429A priority patent/CA2433429A1/fr
Priority to EP02711929A priority patent/EP1350208A1/fr
Priority to KR10-2003-7009266A priority patent/KR20030091963A/ko
Publication of FR2819321A1 publication Critical patent/FR2819321A1/fr
Application granted granted Critical
Publication of FR2819321B1 publication Critical patent/FR2819321B1/fr
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • 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
    • G06Q10/00Administration; Management
    • G06Q10/02Reservations, e.g. for tickets, services or events
    • 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
    • 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/12Hotels or restaurants

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Tourism & Hospitality (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Economics (AREA)
  • Human Resources & Organizations (AREA)
  • Marketing (AREA)
  • General Business, Economics & Management (AREA)
  • Strategic Management (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Quality & Reliability (AREA)
  • Operations Research (AREA)
  • Development Economics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Primary Health Care (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

La présente invention concerne un procédé de traitement et d'accès à des données dans un système de réservation par ordinateur, ainsi qu'un système de réservation par ordinateurapte à le mettre en oeuvre. Selon l'invention, on crée au moins un cache (9 a, 9 b) dans la partie serveur, ledit cache (9 a, 9 b) contenant des données de réservations; on ajoute des données au cache (9 a, 9 b) par transfert depuis au moins une base d'inventaire (I); on crée une application d'interfaçage (18) entre le cache (9 a, 9 b) et la ou les applications client (19) pour que son utilisateur puisse adresser des requêtes au cache (9 a, 9 b) et recevoir des données en réponse. Application aux systèmes de réservation informatiques notamment dans le domaine du transport, des voyages, et de l'hôtellerie.

Description

<Desc/Clms Page number 1>
La présente invention concerne tout d'abord un procédé de traitement et d'accès à des données dans un système de réservation par ordinateur.
Elle concerne également un système de réservation par ordinateur apte à mettre en oeuvre ce procédé.
Les systèmes de réservation par ordinateur sont couramment employés actuellement, notamment dans le domaine des voyages, du transport aérien, ou encore pour la réservation dans l'hôtellerie.
Dans ce cadre, il existe une ou plusieurs bases d'inventaire correspondant à l'état des réservations chez chacun des prestataires de services tels la compagnie aérienne ou la compagnie de location de voitures. Un système central permet d'accéder aux différentes bases d'inventaire pour en traiter les informations et répondre aux demandes des utilisateurs. Ces derniers peuvent en effet interroger le système central par le biais d'applications client pour obtenir des données notamment quant aux disponibilités, aux tarifs, et aux modalités des services offerts.
L'ensemble de ces accès et transferts de données s'effectue par un réseau de communication.
Selon l'état de la technique actuel, le système central reçoit de multiples requêtes d'une pluralité d'utilisateurs et, pour y répondre, interroge de façon directe une ou plusieurs bases d'inventaire.
Ce principe de fonctionnement a l'inconvénient d'alourdir et d'encombrer les réseaux de communication, principalement en liaison avec les bases d'inventaire. Ce point est d'autant plus dommageable que certaines requêtes des utilisateurs ne nécessitent pas un accès direct de façon synchrone aux bases de données d'inventaire.
A titre d'exemple, des utilisateurs se connectant par le biais d'un réseau de large extension tel Internet interrogent parfois le système de réservation dans le seul but de connaître les modalités de réservations et des tarifs. Il n'est donc pas
<Desc/Clms Page number 2>
forcément nécessaire de leur fournir en même temps une information certaine quant aux disponibilités de place.
L'état de la technique actuel comprend notamment le document US-A-5 570 283. Celui-ci divulgue un système informatique doté d'un logiciel modulaire permettant, autant à des voyageurs d'accéder électroniquement à un inventaire pour
Figure img00020001

obtenir des tarifs de vols d'avions de façon très rapide dans un environnement logiciel convivial, qu'à des agents ou des professionnels de faire des réservations et d'accéder à des bases de données spécifiques au regard de leurs activités professionnelles.
Ce document s'attache essentiellement au problème du prix des prestations offertes. En effet, il vise à avoir des prix parfaitement à jour pour les agents ou autres professionnels.
Cependant, selon ce document, il est encore nécessaire d'avoir un accès direct aux bases d'inventaire d'état de réservation pour tout type de requêtes.
La présente invention pallie les inconvénients des techniques actuelles.
Elle permet de diminuer le volume des accès en direct aux bases d'inventaire d'état des réservations en proposant une base de données de type CACHE apte à répondre aux premières interrogations des utilisateurs.
Par ailleurs, l'accès à ce cache a l'avantage de pouvoir être effectué par le biais d'un réseau de communication de type large extension tel qu'Internet pour lequel le coût de communication est très réduit.
D'autres buts et avantages apparaîtront au cours de la description qui suit qui présente un mode préféré de réalisation de l'invention mais qui n'est cependant pas limitative.
La présente invention concerne un procédé de traitement et d'accès à des données dans un système de réservation par ordinateur comportant une partie serveur dotée d'un système central et d'au moins une base d'inventaire d'état de réservations, et une partie client comprenant au moins une
<Desc/Clms Page number 3>
application client, les parties serveur et client étant reliées par un réseau de communication, Caractérisé par le fait que : on crée au moins un cache dans la partie serveur, ledit cache contenant des données de réservation ;
Figure img00030001

on ajoute des données au cache par transfert depuis au moins une base d'inventaire ; - on crée une application d'interfaçage entre le cache et la ou les applications client pour que son utilisateur puisse adresser des requêtes au cache et recevoir des données en réponse.
Ce procédé peut se présenter selon les variantes énoncées ci-après : + si, lors d'une requête au cache par une application client, le cache ne contient pas les données demandées :
Figure img00030002

on traite la requête dans le système central par accès aux bases d'inventaire d'état de réservations pour trouver les données demandées ; - on ajoute lesdites données au cache ; - on retourne les données demandées, en réponse, à l'application client.
+ on nettoie les données contenues dans le cache par mise en oeuvre de la procédure suivante :
Figure img00030003

affectation d'une durée maximale de conservation à chaque donnée contenue dans le cache ; scrutation périodique des données contenues dans le cache pour déterminer les données dont la durée maximale de conservation est dépassée ; suppression des données dont la durée maximale de conservation est dépassée.
Figure img00030004
+ on nettoie les données contenues dans le cache par la procédure suivante : affectation d'une taille limite et d'une taille seuil au cache, ladite taille seuil ayant une valeur inférieure d'une marge déterminée à ladite valeur limite ;
<Desc/Clms Page number 4>
Figure img00040001

- lorsque la taille limite est atteinte, suppression des données contenues dans le cache par ordre décroissant d'ancienneté d'utilisation, jusqu'à atteindre la taille seuil.
. on range les données dans le cache par : - affectation d'une clé à chaque donnée à stocker ; transformation de la clé en une valeur numérique ; - création d'un vecteur de listes comprenant une suite de compartiments aptes à contenir une liste de plusieurs données ; affectation, à chaque compartiment, d'un index numérique entier à partir de zéro ; - détermination, pour chaque donnée, de l'index du compartiment de stockage par modulation de la valeur numérique de la clef de la donnée par le nombre de compartiments ; stockage de la donnée dans le compartiment ainsi déterminé.
Figure img00040002
. on recherche une donnée dans le cache par transformation de la clé en une valeur numérique et détermination de l'index du compartiment de stockage par modulation de la valeur numérique de la clef par le nombre de compartiments, et par le fait que : si une seule donnée est présente dans le compartiment, on retrouve la donnée recherchée ;
Figure img00040003

si aucune donnée n'est présente dans le compartiment on retourne une information d'absence ; si plusieurs données sont présentes dans le compartiment on compare leurs clés pour déterminer celle qui est effectivement recherchée.
+ On ne bloque l'accès que des compartiments en cours de traitement d'une requête pour autoriser d'autres traitements de requêtes simultanées dans d'autres compartiments.
L'invention concerne en outre un système de réservation par ordinateur comportant une partie serveur dotée d'un système
<Desc/Clms Page number 5>
central et d'au moins une base d'inventaire d'état de réservations, et une partie client comprenant au moins une application client, les parties serveur et client étant reliées par un réseau de communication, apte à mettre en oeuvre le procédé selon l'invention.
Caractérisé par le fait qu'il comporte au moins un cache dans la partie serveur, ledit cache contenant des données de réservation ;
Figure img00050001

- au moins une application d'interfaçage entre le cache et la ou les applications client pour que son utilisateur puisse adresser des requêtes au cache et recevoir des données en réponse.
Selon des variantes : au moins un bloc de cache doté d'un cache et d'une application de gestion du cache ;
Figure img00050002

au moins un bloc de gestion d'entrée doté d'une pluralité de modules de gestion d'entrée recevant chacun les requêtes d'une ou plusieurs applications client et gérés par un gestionnaire d'entrée. chaque module de gestion d'entrée est affecté à une seule application client.
Figure img00050003

des modules de gestion d'entrée sont affectés à plusieurs applications client et que leur bloc de cache comprend : - une file apte à recevoir les requêtes issues des applications client et à les redistribuer par ordre d'entrée sur demande du cache ; le ou les caches comprennent un vecteur de listes comprenant une suite de compartiments aptes à contenir une liste de plusieurs données et auquel est affecté un index, pour la recherche d'une donnée par l'index du compartiment où elle est stockée.
- il comporte un outil de nettoyage apte à adresser des commandes de nettoyage au cache selon une procédure déterminée.
<Desc/Clms Page number 6>
Les dessins ci-joints sont donnés à titre d'exemples. Ils représentent des modes de réalisation qui permettront de comprendre aisément l'invention.
La figure 1 montre un exemple de traitement des requêtes des clients selon l'état de la technique actuel.
La figure 2 schématise les organes du système de l'invention dans un mode particulier de réalisation.
La figure 3 est un autre schéma de réalisation du système selon l'invention qui précise certains organes.
La figure 4 est un synoptique des phases d'interrogation et de mise à jour du cache dans le système et selon le procédé de l'invention.
La figure 5 montre un exemple de nettoyage des données contenues dans le cache, tandis que la figure 6 illustre une variante de rangement de données dans le cache.
Enfin, la figure 7 est une variante de l'invention dans lequel plusieurs clients accèdent au système par le biais d'un même module de gestion d'entrée.
Comme illustré très schématiquement à la figure l, selon l'état de la technique actuel, le client peut adresser à un système central (CS) des requêtes pour obtenir des données concernant des réservations par exemple de vol d'avions, ou encore de disponibilité de place dans tout domaine de service.
Cette requête peut être résumée par une opération GET envoyée au système central (CS). Ce dernier est en liaison avec une ou plusieurs bases d'inventaire (I) d'état de réservations dans laquelle se trouve la donnée recherchée. Par interrogation de ces bases d'inventaire (I), le système central (CS) peut retourner une réponse au client.
Plus précisément, selon l'état de la technique actuelle les différents clients envoient un message d'interrogation à un organe couramment dénommé FRONT END et ledit organe de FRONT END répercute la demande du client au coeur du système central dénommé BACK END . L'organe de FRONT END constitue en fait un intermédiaire entre les clients et le coeur du système central. C'est à ce niveau que sont envoyés les
<Desc/Clms Page number 7>
différents messages des clients avant leur transmission. Ce type d'organisation génère une multiplicité de communication entre les différents organes du système et un encombrement important de l'ensemble du système central.
Le système de réservation selon l'invention évite de tels inconvénients.
De façon connue en soit, il s'intègre dans une structure comprenant une partie client avec plusieurs applications client (19) et une partie serveur dotée d'un système central (CS) et d'une ou plusieurs bases d'inventaire (I).
Le traitement des requêtes selon l'invention peut s'inscrire en complément ou en remplacement du processus actuel, tel que décrit précedemment.
Les bases d'inventaire sont généralement des bases de données mises à disposition par le prestataire de service tel la compagnie aérienne et elle présente un rafraîchissement immédiat de l'état des réservations.
Toujours selon l'état de la technique actuel et possiblement dans la structure de l'invention, la partie serveur et la partie client communiquent par le biais d'un réseau de communication 5.
Dans le cadre de l'invention, le réseau de communication 5 peut inclure un réseau de large extension tel l'Internet.
De façon caractéristique et comme représenté en figure 2, le système selon l'invention comprend au moins un cache (9 a, 9 b).
Le cache se situe dans la partie serveur et contient des données de réservation. Les caches (9 a, 9 b) sont intégrés dans des blocs de cache (3 a, 3 b, 3 c) représentés en figure 2. De façon connue en soit, les caches (9 a, 9 b) pourront être constitués par une mémoire volatile de type RAM (Random Access Memory). Bien entendu, une sauvegarde périodique des données contenues dans les caches (9 a, 9 b) peut être effectuée sur une mémoire non volatile, sur un disque.
De façon intermédiaire entre les différentes applications client (19) et le ou les caches (9 a, 9 b), le système ici
<Desc/Clms Page number 8>
présenté comporte des applications d'interfaçage (18). Elles permettent à l'utilisateur d'adresser des requêtes au cache et de recevoir des données en réponse.
Toujours en référence à la figure 2, le système comporte préférentiellement un ou plusieurs blocs de gestion d'entrée (2 a, 2 b).
Le ou les blocs de gestion d'entrée (2 a, 2 b) communiquent avec les applications d'interfaçage (18) par le biais de moyen de routage (4). Tout type de routage peut être mis en oeuvre selon l'invention qui n'est pas limité à une variante particulière.
La structure composée des blocs de gestion d'entrée (2 a, 2 b), des moyens de routage (4), des applications d'interfaçage (18) et des différents blocs de cache (3 a, 3 b, 3 c) permet la formation d'une unité fonctionnelle dénommée serveur cache (1).
Plus précisément, au sein du serveur cache (1), les blocs s'articulent avantageusement de la façon suivante.
En ce qui concerne les blocs de gestion d'entrée (2 a, 2 b), ils comprennent une pluralité de modules de gestion d'entrée (8 a, 8 b) en liaison avec les applications client (19) par le biais du réseau de communication (5).
Selon une première variante, chaque module de gestion d'entrée est relié à une seule application client (19). On a donc autant de modules (8 a, 8 b, 8 c) que d'applications client (19) reliées au bloc de gestion d'entrée (2 a, 2 b).
Pour administrer chaque module de gestion d'entrée (8 a, 8 b), chaque bloc de gestion d'entrée (2 a, 2 b) comprend un gestionnaire d'entrée (7 a, 7 b). Il permet d'appliquer des paramètres de fonctionnement à chaque module de gestion d'entrée (8 a, 8 b).
Un bloc de gestion d'entrée (2 a, 2 b) peut être relié à un bloc de cache (3 a, 3 b) ou à plusieurs selon des conditions de routage adaptées.
Selon l'exemple de la figure 3, le bloc de gestion d'entrée (2 a) communique avec le bloc de cache (3 a).
<Desc/Clms Page number 9>
Ce dernier comprend un cache (9 a) tel que décrit précédemment qui fonctionne par l'intermédiaire d'une application de gestion de cache (10 a).
Cette application de cache (10 a) réalise l'interfaçage entre le bloc de gestion d'entrée et le bloc de cache.
Dans l'exemple de cette figure, chaque application client (19) correspond à un module de gestion d'entrée (8 a, 8 b).
Selon une variante, plusieurs clients (19) peuvent adresser leurs requêtes à un seul module de gestion d'entrée.
Ainsi, dans le cas de la figure 7, les modules (8 a, 8 b) sont reliés à une file (16) fonctionnant selon la logique premier entré, premier sorti apte à recevoir les requêtes et à les redistribuer par ordre d'entrée.
Dans ce cadre, en sortie de la file (16) se situe un groupe de ligne (17) transmettant les requêtes au cache (9 a, 9 b). On peut ainsi limiter le nombre de modules de gestion d'entrée (8 a, 8 b) du système.
La figure 5 montre un mode de réalisation préféré du nettoyage des données contenues dans le cache (9 a, 9 b). A cet effet, le système comporte un outil de nettoyage (11) adressant des commandes de nettoyage (12) aux différents caches (9 a, 9 b). Les procédures utilisées pour ce nettoyage seront exposées plus loin.
On présente ci-après le fonctionnement du système selon l'invention et le procédé de traitement et d'accès qui en fait partie intégrante.
Dans ce cadre, un ou plusieurs caches (9 a, 9 b) sont créés dans la partie serveur pour contenir des données de réservation. Les clients pourront y accéder pour répondre rapidement à des requêtes sans encombrer le reste du système central tel que cela est exposé plus haut.
Pour mettre à jour les données contenues dans le ou les caches (9 a, 9 b), on ajoute des données au cache (9 a, 9 b) par transfert depuis au moins une base d'inventaire (I).
Un exemple des opérations successives permettant l'ajout des données dans le cache (9 a, 9 b) est présenté en figure 4.
<Desc/Clms Page number 10>
Selon cet arbre, le client adresse une requête générant une opération GET d'interrogation du cache (9 a, 9 b). Si une réponse positive peut être apportée par le cache (9 a, 9 b) à l'interrogation GET , la donnée contenue dans le cache est retournée au client en réponse.
Si le cache ne contient pas la réponse à la requête du client, celle-ci est adressée au système central (CS) qui est apte à générer la réponse, par liaison avec les bases d'inventaire (I). Les données en réponse sont retournées par le système central (CS) et sont ajoutées au cache (9 a, 9 b) par une opération PUT .
De cette façon, une donnée jusqu'alors non contenue dans le cache s'y trouve mémorisée.
Cette suite d'opérations peut être effectuée au démarrage du système selon l'invention à partir d'un cache ne contenant aucune donnée mais dans lequel seront successivement mémorisées les données suivant les interrogations des clients.
Pour éviter que le cache ne prenne une ampleur dimensionnelle trop importante et afin d'en optimiser le fonctionnement, il est important de procéder à un rafraîchissement des données qu'il contient.
Dans ce cadre, le procédé selon l'invention propose deux procédures distinctes mais qui peuvent être employées simultanément pour procéder au nettoyage des données.
Selon une première procédure, on affecte à chaque donnée une durée maximale de conservation. De façon périodique, on scrute les données contenues dans le cache (9 a, 9b) pour distinguer celles dont la durée limite de conservation est dépassée.
Ces données sont alors supprimées du cache.
De cette façon des données trop anciennes ne présentant plus un caractère d'actualité et de fiabilité sont supprimées.
Bien entendu, la période de mise à jour selon cette procédure est variable suivant la nature des données contenues.
A titre d'exemple, l'intervalle de temps entre deux commandes de nettoyage pourra être de soixante secondes.
<Desc/Clms Page number 11>
Une deuxième procédure de nettoyage peut être mise en oeuvre selon le procédé de l'invention en remplacement ou en complément de la première.
Dans ce cadre, on affecte une taille limite au cache correspondant à la taille maximale que l'on souhaite donner au cache. Par ailleurs, on lui affecte une taille seuil de valeur inférieure à la taille limite et correspondant à une taille admissible pour le bon fonctionnement du cache. A titre d'exemple, la taille seuil peut être fixée à 80 % de la taille limite.
Lorsque la taille limite est atteinte, on supprime les données contenues (9 a, 9 b) par ordre décroissant d'ancienneté d'utilisation jusqu'à atteindre la taille seuil.
De cette façon les données très anciennement utilisées sont supprimées dans la limite du nécessaire pour retrouver une taille admissible pour la cache.
Toujours de façon à optimiser le fonctionnement des caches (9 a, 9 b), un mode de rangement particulier des données dans le cache (9 a, 9 b) est ci-après présenté.
D'une façon générale, on affecte à chaque donnée à mémoriser dans le cache une clé.
Cette clé peut être transformée en valeur numérique, communément appelée HASH CODE selon des algorithmes de hashing utilisés de façon courante.
On crée par ailleurs un vecteur de listes 14 figuré en figure 6 et comprenant une suite de compartiments (13) généralement appelés BUCKET . Chaque compartiment (13) est apte à contenir une ou plusieurs données.
On affecte à chaque compartiment (13) un index numérique entier à partir de zéro.
A titre d'exemple, un nombre de 20 011 compartiments pourront être formés pour un cache de taille limite de 51 200 Kilo Octets.
On effectue ensuite une correspondance entre la clé affectée à chaque donnée et l'index numérique de chaque compartiment (13). Cet établissement de correspondance peut
<Desc/Clms Page number 12>
être effectué par une modulation de la clé numérique de la donnée par le nombre de compartiments (13) du vecteur de listes (14).
L'objet de cette correspondance est de mémoriser les données dans un compartiment (13) avec un index particulier et de n'effectuer une comparaison des données contenues dans le cache que pour les données d'un compartiment (13) ayant le même index que celui de la donnée recherchée par le client.
De cette façon, le nombre d'opérations de comparaison nécessaire est fortement réduit.
Le nombre de valeurs contenues dans un compartiment (13) n'est pas limité. Il s'entend cependant que moins il y a de valeurs, plus les performances sont grandes.
Toujours de façon à optimiser le fonctionnement du cache (9 a, 9 b), on pourra lors du traitement des requêtes ne bloquer l'accès que des compartiments (13) utilisés. De cette façon, le traitement d'une requête affectant un compartiment (13) ne bloque pas le fonctionnement des autres compartiments (13). On utilise pour ce faire des moyens de blocage d'accès sélectifs (15) également dénommés sémaphores ou MUTEX .
Une meilleure gestion de requêtes concurrentielles est ainsi réalisée, peu de requêtes simultanées risquant d'être à traiter dans un même compartiment (13).
<Desc/Clms Page number 13>
REFERENCES 1-Serveur cache 2 a, 2 b-Bloc de gestion d'entrée 3 a, 3 b, 3 c-Bloc de cache 4-Moyens de routage 5-Réseau de communication 6 a, 6 b-Port d'entrée 7 a, 7 b-Gestionnaire d'entrée 8 a, 8 b-Modules de gestion d'entrée 9 a, 9 b, 9 c-Cache 10 a, 10 b-Application de gestion de cache 11-Outil de nettoyage 12-Commande de nettoyage 13-Compartiments 14-Vecteur de listes 15-Moyens de blocage d'accès sélectif 16-File 17-Groupe de lignes 18-Application d'interfaçage 19-Application client CS-Système central 1-Base d'inventaire

Claims (13)

REVENDICATIONS
1-Procédé de traitement et d'accès à des données dans un système de réservation par ordinateur comportant une partie serveur dotée d'un système central (CS) et d'au moins une base d'inventaire (I) d'état de réservations, et une partie client comprenant au moins une application client (19), les parties serveur et client étant reliées par un réseau de communication (5), caractérisé par le fait que : - on crée au moins un cache (9 a, 9 b) dans la partie serveur, ledit cache (9 a, 9 b) contenant des données de réservation ; on ajoute des données au cache (9 a, 9 b) par transfert depuis au moins une base d'inventaire (I) ;
Figure img00140001
on crée une application d'interfaçage (18) entre le cache (9 a, 9 b) et la ou les applications client (19) pour que son utilisateur puisse adresser des requêtes au cache (9 a, 9 b) et recevoir des données en réponse.
2-Procédé de traitement et d'accès à des données selon la revendication 1, caractérisé par le fait que : si, lors d'une requête au cache (9 a, 9 b) par une application client (19), le cache (9 a, 9 b) ne contient pas les données demandées : - on traite la requête dans le système central (CS) par accès aux bases d'inventaire (I) d'état de réservations pour trouver les données demandées ; on ajoute lesdites données au cache (9 a, 9 b) ; on retourne les données demandées, en réponse, à l'application client (19).
Figure img00140002
3-Procédé de traitement et d'accès à des données selon les revendications 1 ou 2, caractérisé par le fait que :
<Desc/Clms Page number 15>
Figure img00150002
scrutation périodique des données contenues dans le cache (9 a, 9 b) pour déterminer les données dont la durée maximale de conservation est dépassée ; suppression des données dont la durée maximale de conservation est dépassée.
Figure img00150001
on nettoie les données contenues dans le cache (9 a, 9 b) par mise en oeuvre de la procédure suivante : affectation d'une durée maximale de conservation à chaque donnée contenue dans le cache (9 a, 9 b) ;
4-Procédé de traitement et d'accès à des données selon l'une quelconque des revendications de 1 à 3, caractérisé par le fait que : on nettoie les données contenues dans le cache (9 a, 9 b) par mise en oeuvre de la procédure suivante : - affectation d'une taille limite et d'une taille seuil au cache (9 a, 9 b), ladite taille seuil ayant une valeur inférieure d'une marge déterminée à ladite valeur limite ; - lorsque la taille limite est atteinte, suppression des données contenues dans le cache (9 a, 9 b) par ordre décroissant d'ancienneté d'utilisation, jusqu'à atteindre la taille seuil.
5-Procédé de traitement et d'accès à des données selon l'une quelconque des revendications 1, à 4, caractérisé par le fait que on range les données dans le cache (9 a, 9 b), par : - affectation d'une clé à chaque donnée à stocker ; transformation de la clé en une valeur numérique ; - création d'un vecteur de listes (14) comprenant une suite de compartiments (13) aptes à contenir une liste de plusieurs données ; - affectation, à chaque compartiment (13), d'un index numérique entier à partir de zéro ;
Figure img00150003
- détermination, pour chaque donnée, de l'index du compartiment de stockage par modulation de la valeur
<Desc/Clms Page number 16>
numérique de la clé de la donnée par le nombre de compartiments (13) ; stockage de la donnée dans le compartiment (13) ainsi déterminé.
6-Procédé de traitement et d'accès à des données selon la revendication 5, caractérisé par le fait que on recherche une donnée dans le cache (9 a, 9 b) par transformation de la clé en une valeur numérique et détermination de l'index du compartiment (13) de stockage par modulation de la valeur numérique de la clef par le nombre de compartiments, et par le fait que : si une seule donnée est présente dans le compartiment (13), on retrouve la donnée recherchée ; si aucune donnée n'est présente dans le compartiment (13) on retrouve une information d'absence ; si plusieurs données sont présentes dans le compartiment (13) on compare leurs clés pour déterminer celle qui est effectivement recherchée.
7-Procédé de traitement et d'accès à des données selon la revendication 6, caractérisé par le fait que : on ne bloque l'accès que des compartiments (13) en cours de traitement d'une requête pour autoriser d'autres traitements de requêtes simultanées dans d'autres compartiments (13).
8-Système de réservation par ordinateur comportant une partie serveur dotée d'un système central (CS) et d'au moins une base d'inventaire (I) d'état de réservations, et une partie client comprenant au moins une application client (19), les parties serveur et client étant reliées par un réseau de communication (5), apte à mettre en oeuvre le procédé selon quelconques des revendications 1 à 7, caractérisé par le fait qu'il comporte
<Desc/Clms Page number 17>
au moins un cache (9 a, 9 b) dans la partie serveur, ledit cache (9 a, 9 b) contenant des données de réservation ; au moins une application d'interfaçage (18) entre le cache (9 a, 9 b) et le ou les applications client (19) pour que son utilisateur puisse adresser des requêtes au cache (9 a, 9 b) et recevoir des données en réponse.
9-Système de réservation par ordinateur selon la revendication 1, caractérisé par le fait que : il comprend dans la partie serveur, au moins un serveur cache (I) comportant : au moins un bloc de cache (3 a, 3 b, 3 c) doté d'un cache (9 a, 9 b) et d'une application (10 a, 10 b) de gestion du cache (9 a, 9 b) ; au moins un bloc de gestion d'entrée (2 a, 2 b) doté d'une pluralité de modules de gestion d'entrée (8 a, 8 b) recevant chacun les requêtes d'une ou plusieurs applications client (19) et gérés par un gestionnaire d'entrée (2 a, 2 b).
10-Système de réservation par ordinateur selon la revendication 9, caractérisé par le fait que : chaque module de gestion d'entrée (8 a, 8 b) est affecté à une seule application client (19).
11-Système de réservation par ordinateur selon la revendication 9, caractérisé par le fait que : des modules de gestion d'entrée (8 a,. 8 b) sont affectés à plusieurs applications client (19) et que leur bloc de cache (3 a, 3 b, 3 c) comprend : une file (6) apte à recevoir les requêtes issues des applications client (8 a, 8 b) et à les redistribuer par ordre d'entrée sur demande du cache (9 a, 9 b) ;
<Desc/Clms Page number 18>
12-Système de réservation par ordinateur selon quelconques des revendications 8 à 11, caractérisé par le fait que : le ou les caches (9 a, 9 b) comprennent un vecteur de listes (14) comprenant une suite de compartiments (13) aptes à contenir une liste de plusieurs données et auquel est affecté un index, pour la recherche d'une donnée par l'index du compartiment (13) où elle est stockée.
13-Système de réservation par ordinateur selon quelconques des revendications 8 à 12, caractérisé par le fait que : il comporte un outil de nettoyage (11) apte à adresser des commandes de nettoyage au cache (9 a, 9 b) selon une procédure déterminée.
FR0100236A 2001-01-10 2001-01-10 Procede de traitement et d'acces a des donnees dans un systeme de reservation par ordinateur, et systeme de mise en oeuvre Expired - Lifetime FR2819321B1 (fr)

Priority Applications (7)

Application Number Priority Date Filing Date Title
FR0100236A FR2819321B1 (fr) 2001-01-10 2001-01-10 Procede de traitement et d'acces a des donnees dans un systeme de reservation par ordinateur, et systeme de mise en oeuvre
US10/250,980 US20040054751A1 (en) 2001-01-10 2002-01-10 Method for processing and accessing data in a computerised reservation system and system therefor
PCT/FR2002/000067 WO2002056212A1 (fr) 2001-01-10 2002-01-10 Procede de traitement et d'acces a des donnees dans un systeme de reservation par ordinateur, et systeme de mise en oeuvre
CA002433429A CA2433429A1 (fr) 2001-01-10 2002-01-10 Procede de traitement et d'acces a des donnees dans un systeme de reservation par ordinateur, et systeme de mise en oeuvre
JP2002556801A JP2004527820A (ja) 2001-01-10 2002-01-10 コンピュータ予約システムにおけるデータの処理及びアクセス方法、並びにその方法を実施するためのシステム
EP02711929A EP1350208A1 (fr) 2001-01-10 2002-01-10 Procede de traitement et d'acces a des donnees dans un systeme de reservation par ordinateur, et systeme de mise en oeuvre
KR10-2003-7009266A KR20030091963A (ko) 2001-01-10 2002-01-10 컴퓨터 예약 시스템에서의 데이터 액세스와 처리 방법 및그 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR0100236A FR2819321B1 (fr) 2001-01-10 2001-01-10 Procede de traitement et d'acces a des donnees dans un systeme de reservation par ordinateur, et systeme de mise en oeuvre

Publications (2)

Publication Number Publication Date
FR2819321A1 true FR2819321A1 (fr) 2002-07-12
FR2819321B1 FR2819321B1 (fr) 2005-01-21

Family

ID=8858634

Family Applications (1)

Application Number Title Priority Date Filing Date
FR0100236A Expired - Lifetime FR2819321B1 (fr) 2001-01-10 2001-01-10 Procede de traitement et d'acces a des donnees dans un systeme de reservation par ordinateur, et systeme de mise en oeuvre

Country Status (7)

Country Link
US (1) US20040054751A1 (fr)
EP (1) EP1350208A1 (fr)
JP (1) JP2004527820A (fr)
KR (1) KR20030091963A (fr)
CA (1) CA2433429A1 (fr)
FR (1) FR2819321B1 (fr)
WO (1) WO2002056212A1 (fr)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7962361B2 (en) 2002-11-07 2011-06-14 Novitaz Customer relationship management system for physical locations
US8600804B2 (en) 2002-11-07 2013-12-03 Novitaz, Inc. Customer relationship management system for physical locations
JP2007065928A (ja) * 2005-08-30 2007-03-15 Toshiba Corp 情報記憶媒体、情報処理方法、情報転送方法、情報再生方法、情報再生装置、情報記録方法、情報記録装置、及びプログラム
US20080040167A1 (en) * 2006-04-05 2008-02-14 Air New Zealand Limited Booking system and method
KR101192626B1 (ko) * 2006-05-12 2012-10-18 삼성디스플레이 주식회사 표시 기판과, 이의 제조 방법 및 이를 구비한 표시 장치
US8302861B2 (en) * 2007-05-22 2012-11-06 Ibm International Group B.V. System and method for maintaining inventory management records based on demand
US20120312879A1 (en) 2011-01-06 2012-12-13 John Rolin PCB Design and Card Assembly for an Active RFID Tag in Credit Card Form Factor
EP2541473A1 (fr) * 2011-06-27 2013-01-02 Amadeus S.A.S. Procédé et système pour système de réservation d'avant courses avec une efficacité de recherche améliorée
CN102790683A (zh) * 2011-05-16 2012-11-21 北大方正集团有限公司 一种实时行情数据处理方法、服务器及***
JP5433640B2 (ja) 2011-06-30 2014-03-05 楽天株式会社 情報提供装置、情報提供方法、情報提供プログラム及び記録媒体
WO2014155737A1 (fr) * 2013-03-29 2014-10-02 楽天株式会社 Système de mémoire cache de données, programme, support d'enregistrement, et procédé
US9251478B2 (en) * 2013-07-29 2016-02-02 Amadeus S.A.S. Processing information queries in a distributed information processing environment

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1997021177A1 (fr) * 1995-12-01 1997-06-12 British Telecommunications Public Limited Company Acces a une base de donnees
WO2000043927A2 (fr) * 1999-01-20 2000-07-27 Synxis Corporation Procede et systeme de gestion globale d'operations de reservation
WO2001033472A2 (fr) * 1999-11-01 2001-05-10 Ita Software, Inc. Procede et dispositif servant a determiner la disponibilite de sieges a bord d'un avion

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5655100A (en) * 1995-03-31 1997-08-05 Sun Microsystems, Inc. Transaction activation processor for controlling memory transaction execution in a packet switched cache coherent multiprocessor system
US6256712B1 (en) * 1997-08-01 2001-07-03 International Business Machines Corporation Scaleable method for maintaining and making consistent updates to caches
US6360205B1 (en) * 1998-10-30 2002-03-19 Trip.Com, Inc. Obtaining and utilizing commercial information
US20020053004A1 (en) * 1999-11-19 2002-05-02 Fong Pong Asynchronous cache coherence architecture in a shared memory multiprocessor with point-to-point links
US6505284B1 (en) * 2000-06-26 2003-01-07 Ncr Corporation File segment subsystem for a parallel processing database system

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1997021177A1 (fr) * 1995-12-01 1997-06-12 British Telecommunications Public Limited Company Acces a une base de donnees
WO2000043927A2 (fr) * 1999-01-20 2000-07-27 Synxis Corporation Procede et systeme de gestion globale d'operations de reservation
WO2001033472A2 (fr) * 1999-11-01 2001-05-10 Ita Software, Inc. Procede et dispositif servant a determiner la disponibilite de sieges a bord d'un avion

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
IGOR DOLINSEK, ZORAN SLANIC: "Application Instrumentation & Control - White Paper", APPLIXRAY.COM, November 2000 (2000-11-01), pages 1 - 16, XP002181411, Retrieved from the Internet <URL:http://www.applixray.com/AICWhitePaper.pdf> [retrieved on 20011026] *

Also Published As

Publication number Publication date
KR20030091963A (ko) 2003-12-03
US20040054751A1 (en) 2004-03-18
WO2002056212A1 (fr) 2002-07-18
FR2819321B1 (fr) 2005-01-21
JP2004527820A (ja) 2004-09-09
CA2433429A1 (fr) 2002-07-18
EP1350208A1 (fr) 2003-10-08

Similar Documents

Publication Publication Date Title
KR101429555B1 (ko) 고 가용성 데이터를 제공하기 위한 시스템 및 방법
EP1193625B1 (fr) Moteur de recherche collaboratif
FR2681707A1 (fr) Systeme de fichiers pour redistribuer selectivement des fichiers et procede pour affecter un espace de memoire dans un systeme informatique comportant de multiples dispositifs de stockage de donnees.
EP1457023B1 (fr) Procede de transmission d&#39;objets entre un serveur et un terminal client mettant en oeuvre une gestion de cache
US7584264B2 (en) Data storage and retrieval systems and related methods of storing and retrieving data
FR2819321A1 (fr) Procede de traitement et d&#39;acces a des donnees dans un systeme de reservation par ordinateur, et systeme de mise en oeuvre
EP2286354A1 (fr) Procede de generation de requetes de manipulation d&#39;une base de donnees d&#39;initialisation et d&#39;administration d&#39;une grappe de serveurs, support de donnees et grappe de serveurs correspondants
FR2674654A1 (fr) Systeme de commande de registres partages.
EP1643710A1 (fr) Procédé de mise à jour d&#39;une table de correspondance entre une adresse et un numéro d&#39;identification
JP2013242906A (ja) ストレージ性能の最適化
EP3025481A2 (fr) Procédé de traitement de données de géolocalisation
WO2006016085A1 (fr) Procede de sauvegarde distribuee sur des postes clients dans un reseau informatique
EP1801716B1 (fr) Diffusion de données par groupement
US8032691B2 (en) Method and system for capacity-balancing cells of a storage system
EP3903210A1 (fr) Reseau de communication securisee et tracee
EP2397962A1 (fr) Dispositif et procédé de stockage sécurisé de données biométriques
FR2826477A1 (fr) Systeme integre de recueil de donnees medico-sociales
BE1005968A6 (fr) Systeme electronique integre de magasinage et de distribution.
EP0866410A1 (fr) Système informatique à stockage de données distribué
FR2907993A1 (fr) Systeme informatique comprenant plusieurs noeuds en reseau.
FR2849561A1 (fr) Systeme de communication multi-protocoles
EP1193946B1 (fr) Procéde et réseau de communication
BE1005873A6 (fr) Appareil de stockage et de consultation de donnees.
EP3948574A1 (fr) Système de stockage redondant de données, procédé et programme d&#39;ordinateur correspondants
FR3102283A1 (fr) Dispositif, système et procédé pour fournir des objets de fournisseur à partir d’une antémémoire

Legal Events

Date Code Title Description
PLFP Fee payment

Year of fee payment: 15

PLFP Fee payment

Year of fee payment: 16

PLFP Fee payment

Year of fee payment: 17

PLFP Fee payment

Year of fee payment: 18

PLFP Fee payment

Year of fee payment: 20