CA2433429A1 - 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 PDFInfo
- Publication number
- CA2433429A1 CA2433429A1 CA002433429A CA2433429A CA2433429A1 CA 2433429 A1 CA2433429 A1 CA 2433429A1 CA 002433429 A CA002433429 A CA 002433429A CA 2433429 A CA2433429 A CA 2433429A CA 2433429 A1 CA2433429 A1 CA 2433429A1
- Authority
- CA
- Canada
- Prior art keywords
- data
- cache
- fact
- client
- processing
- 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.)
- Abandoned
Links
- 238000000034 method Methods 0.000 title claims abstract description 33
- 238000012545 processing Methods 0.000 title claims abstract description 19
- 230000004044 response Effects 0.000 claims abstract description 14
- 238000012546 transfer Methods 0.000 claims abstract description 5
- 238000004140 cleaning Methods 0.000 claims description 14
- 238000004891 communication Methods 0.000 claims description 13
- 230000008569 process Effects 0.000 claims description 7
- 230000014759 maintenance of location Effects 0.000 claims description 5
- 238000012217 deletion Methods 0.000 claims description 4
- 230000037430 deletion Effects 0.000 claims description 4
- 230000000737 periodic effect Effects 0.000 claims description 3
- 230000009466 transformation Effects 0.000 claims description 3
- 230000004308 accommodation Effects 0.000 abstract 1
- 238000007726 management method Methods 0.000 description 27
- 210000000056 organ Anatomy 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 230000000903 blocking effect Effects 0.000 description 2
- 239000003795 chemical substances by application Substances 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 230000002860 competitive effect Effects 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000010006 flight Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
- 238000005303 weighing Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Administration; Management
- G06Q10/02—Reservations, e.g. for tickets, services or events
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/10—Services
- G06Q50/12—Hotels 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 ordinateur apte à 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
2 PCT/FR02/00067 1o «Procédé de traitement et d'accès à des données dans un système de réservation par ordinateur, et système de mise en oeuvre»
Is 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é.
2o 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 2s aérienne ou ia 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 30 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 s 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 1o 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. II n'est donc pas 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 doeument US A- 5 570 is 283. Celui-ci divulgue un système informatique doté d'un logiciel modulaire permettant, autant à des voyageurs d'accéder électronipuement à un inventaire pour 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 2o 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 2s 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.
so 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 s 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 application client, les parties serveur et client étant reliées par un réseau de communication, caractérisé
par le fait que 1o - on crée au moins un cache dans la partie serveur, ledit cache contenant des données de réservation ;
- 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 is 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 a si, lors d'une requête au cache par une application client, le cache ne contient pas les données demandées 20 - 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 2s procédure suivante - 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 3o dépassée ;
- suppression des données dont la durée maximale de conservation est dépassée.
on nettoie les données contenues dans le cache par la procédure suivante
Is 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é.
2o 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 2s aérienne ou ia 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 30 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 s 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 1o 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. II n'est donc pas 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 doeument US A- 5 570 is 283. Celui-ci divulgue un système informatique doté d'un logiciel modulaire permettant, autant à des voyageurs d'accéder électronipuement à un inventaire pour 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 2o 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 2s 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.
so 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 s 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 application client, les parties serveur et client étant reliées par un réseau de communication, caractérisé
par le fait que 1o - on crée au moins un cache dans la partie serveur, ledit cache contenant des données de réservation ;
- 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 is 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 a si, lors d'une requête au cache par une application client, le cache ne contient pas les données demandées 20 - 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 2s procédure suivante - 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 3o dépassée ;
- suppression des données dont la durée maximale de conservation est dépassée.
on nettoie les données contenues dans le cache par la procédure suivante
3 - 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 ;
- lorsque la taille limite est atteinte, suppression des données contenues s 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 ;
1o - 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 is 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é.
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 2o 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 ;
- si aucune donnée n'est présente dans le compartiment on retourne une 2s 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 so 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 central et d'au moins une base d'inventaire d'état de réservations, et une partie client comprenant au moins une application
- lorsque la taille limite est atteinte, suppression des données contenues s 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 ;
1o - 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 is 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é.
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 2o 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 ;
- si aucune donnée n'est présente dans le compartiment on retourne une 2s 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 so 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 central et d'au moins une base d'inventaire d'état de réservations, et une partie client comprenant au moins une application
4 client, les parties serveur et client étant reliées par un réseau de communication, apte à mettre en eeuvre 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 s données de réservation ;
- 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 Io - au moins un bloc de cache doté d'un cache et d'une application de gestion du cache ;
- 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.
1s - chaque module de gestion d'entrée est affecté à une seule application client.
- 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 2o 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.
2s - il comporte un outil de nettoyage apte à adresser des commandes de nettoyage au cache selon une procédure déterminée.
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 30 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.
s 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 s 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 1, selon l'état de la technique actuel, le client peut adresser à un système central (CS) des requêtes 1o 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.
is 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 2o 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 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 2s 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).
3o 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 s 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 dônnées de réservation. Les caches (9 a, 9 b) sont intégrés dans des blocs de cache (3 a, 3 b, io 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.
is 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 présenté comporte des applications d'interfaçage (18). Elles permettent à l'utilisateur d'adresser des requêtes au cache ~t de recevoir des données en réponse.
Toujours en référence à la figure 2, le système comporte préférentiellement 2o 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.
2s 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 3o 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 s d'entrée (2 a, 2 b) comprend un gestionnaire d'entrée (7 a, 7 b). II 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.
io Selon l'exemple de la figure 3, le bloc de gestion d'entrée (2 a) communique avec le bloc de cache (3 a).
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 is 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 20 (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.
2s 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 3o 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.
s 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 s dans le cache (9 a, 9 b) est présenté en figure 4.
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.
ro Si le cache ne contient pas la réponse à la requête du client, celte-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 ».
is 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.
2o Pour éviter que le cache ne prenne unie 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 as nettoyage des données.
Selon une première procédure, on affecfie à 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.
3o 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.
Une deuxième procédure de nettoyage peut être mise en oeuvre selon le s 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 io à 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.
Is 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é.
2o 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 2s 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.
3o 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 ê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).
1o 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.
s 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é.
II s'entend cependant que moins il y a de valeurs, plus les performances sont grandes.
io 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 is 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).
REFERENCES
1 - Serveur cache 2 a, 2 b - Bloc de gestion d'entrée s 3 a, 3 b, 3 c - Bloc de cache 4 - Moyens de routage - Réseau de communication 6 a, 6 b - Port d'entrée 7 a, 7 b - Gestionnaire d'entrée l0 8 a, 8 b - Modules de gestion d'entrée 9 a, 9 b, 9 c - Cache a, 10 b - Application de gestion de cache 11 - Outil de nettoyage 12 - Commande de nettoyage Is 13 - Compartiments 14 - Vecteur de listes - 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 I - Base d'inventaire
Caractérisé par le fait qu'il comporte - au moins un cache dans la partie serveur, ledit cache contenant des s données de réservation ;
- 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 Io - au moins un bloc de cache doté d'un cache et d'une application de gestion du cache ;
- 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.
1s - chaque module de gestion d'entrée est affecté à une seule application client.
- 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 2o 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.
2s - il comporte un outil de nettoyage apte à adresser des commandes de nettoyage au cache selon une procédure déterminée.
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 30 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.
s 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 s 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 1, selon l'état de la technique actuel, le client peut adresser à un système central (CS) des requêtes 1o 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.
is 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 2o 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 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 2s 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).
3o 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 s 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 dônnées de réservation. Les caches (9 a, 9 b) sont intégrés dans des blocs de cache (3 a, 3 b, io 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.
is 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 présenté comporte des applications d'interfaçage (18). Elles permettent à l'utilisateur d'adresser des requêtes au cache ~t de recevoir des données en réponse.
Toujours en référence à la figure 2, le système comporte préférentiellement 2o 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.
2s 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 3o 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 s d'entrée (2 a, 2 b) comprend un gestionnaire d'entrée (7 a, 7 b). II 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.
io Selon l'exemple de la figure 3, le bloc de gestion d'entrée (2 a) communique avec le bloc de cache (3 a).
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 is 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 20 (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.
2s 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 3o 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.
s 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 s dans le cache (9 a, 9 b) est présenté en figure 4.
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.
ro Si le cache ne contient pas la réponse à la requête du client, celte-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 ».
is 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.
2o Pour éviter que le cache ne prenne unie 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 as nettoyage des données.
Selon une première procédure, on affecfie à 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.
3o 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.
Une deuxième procédure de nettoyage peut être mise en oeuvre selon le s 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 io à 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.
Is 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é.
2o 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 2s 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.
3o 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 ê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).
1o 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.
s 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é.
II s'entend cependant que moins il y a de valeurs, plus les performances sont grandes.
io 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 is 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).
REFERENCES
1 - Serveur cache 2 a, 2 b - Bloc de gestion d'entrée s 3 a, 3 b, 3 c - Bloc de cache 4 - Moyens de routage - Réseau de communication 6 a, 6 b - Port d'entrée 7 a, 7 b - Gestionnaire d'entrée l0 8 a, 8 b - Modules de gestion d'entrée 9 a, 9 b, 9 c - Cache a, 10 b - Application de gestion de cache 11 - Outil de nettoyage 12 - Commande de nettoyage Is 13 - Compartiments 14 - Vecteur de listes - 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 I - Base d'inventaire
Claims (13)
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) ;
- 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.
- 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) ;
- 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).
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).
3- Procédé de traitement et d'accès à des données selon les revendications 1 ou 2, 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 durée maximale de conservation à chaque donnée contenue dans le cache (9 a, 9 b);
- 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.
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);
- 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.
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.
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;
- détermination, pour chaque donnée, de l'index du compartiment de stockage par modulation de la valeur 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é.
- 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;
- détermination, pour chaque donnée, de l'index du compartiment de stockage par modulation de la valeur 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.
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).
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 - 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.
- 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).
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).
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) ;
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) ;
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.
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.
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.
Applications Claiming Priority (3)
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 |
FR01/00236 | 2001-01-10 | ||
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 |
Publications (1)
Publication Number | Publication Date |
---|---|
CA2433429A1 true CA2433429A1 (fr) | 2002-07-18 |
Family
ID=8858634
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CA002433429A Abandoned 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 |
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)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8600804B2 (en) | 2002-11-07 | 2013-12-03 | Novitaz, Inc. | Customer relationship management system for physical locations |
US7962361B2 (en) | 2002-11-07 | 2011-06-14 | Novitaz | 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 |
US11182661B2 (en) | 2011-01-06 | 2021-11-23 | Maplebear Inc. | Reader network system for presence management in a physical retail environment |
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 | 楽天株式会社 | 情報提供装置、情報提供方法、情報提供プログラム及び記録媒体 |
JP5484643B1 (ja) * | 2013-03-29 | 2014-05-07 | 楽天株式会社 | データキャッシュシステム、プログラム、記録媒体、及び方法 |
US9251478B2 (en) * | 2013-07-29 | 2016-02-02 | Amadeus S.A.S. | Processing information queries in a distributed information processing environment |
Family Cites Families (8)
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 |
EP0864129B1 (fr) * | 1995-12-01 | 2000-08-16 | BRITISH TELECOMMUNICATIONS public limited company | Acces a une base de donnees |
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 |
AU2512600A (en) * | 1999-01-20 | 2000-08-07 | Synxis Corporation | Global reservations transaction management system and method |
AU3638401A (en) * | 1999-11-01 | 2001-05-14 | Ita Software, Inc. | Method and apparatus for providing availability of airline seats |
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 |
-
2001
- 2001-01-10 FR FR0100236A patent/FR2819321B1/fr not_active Expired - Lifetime
-
2002
- 2002-01-10 US US10/250,980 patent/US20040054751A1/en not_active Abandoned
- 2002-01-10 WO PCT/FR2002/000067 patent/WO2002056212A1/fr active Application Filing
- 2002-01-10 KR KR10-2003-7009266A patent/KR20030091963A/ko not_active Application Discontinuation
- 2002-01-10 EP EP02711929A patent/EP1350208A1/fr not_active Withdrawn
- 2002-01-10 CA CA002433429A patent/CA2433429A1/fr not_active Abandoned
- 2002-01-10 JP JP2002556801A patent/JP2004527820A/ja active Pending
Also Published As
Publication number | Publication date |
---|---|
JP2004527820A (ja) | 2004-09-09 |
FR2819321A1 (fr) | 2002-07-12 |
WO2002056212A1 (fr) | 2002-07-18 |
FR2819321B1 (fr) | 2005-01-21 |
EP1350208A1 (fr) | 2003-10-08 |
US20040054751A1 (en) | 2004-03-18 |
KR20030091963A (ko) | 2003-12-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1193625A1 (fr) | Moteur de recherche collaboratif | |
EP1457023B1 (fr) | Procede de transmission d'objets entre un serveur et un terminal client mettant en oeuvre une gestion de cache | |
CA2433429A1 (fr) | Procede de traitement et d'acces a des donnees dans un systeme de reservation par ordinateur, et systeme de mise en oeuvre | |
EP1643710A1 (fr) | Procédé de mise à jour d'une table de correspondance entre une adresse et un numéro d'identification | |
EP2286354A1 (fr) | Procede de generation de requetes de manipulation d'une base de donnees d'initialisation et d'administration d'une grappe de serveurs, support de donnees et grappe de serveurs correspondants | |
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. | |
WO2005109814A2 (fr) | Systeme et procede de traçabilite de contenus sur internet | |
FR2859552A1 (fr) | Procede et systeme de manipulation de donnees issues de bases de donnees multidimensionnelles a l'aide d'un tableur | |
FR3103299A1 (fr) | Système informatique distribué pour délivrer des données | |
EP1637989A1 (fr) | Procédé et système de séparation de comptes de données personnelles | |
WO2006016085A1 (fr) | Procede de sauvegarde distribuee sur des postes clients dans un reseau informatique | |
EP1375016B1 (fr) | Procédé de création et d'enrichissement d'une base de données d'un système de tri postal | |
FR2877178A1 (fr) | Procede de filtrage sur messagerie instantanee | |
FR2728088A1 (fr) | Procede d'echange d'informations en mode client/serveur, entre stations reliees par un reseau de communication | |
FR3050848B1 (fr) | Architecture de serveurs et methode de redistribution des donnees pour la distribution d'un graphe versionne. | |
WO2020136126A1 (fr) | Reseau de communication securisee et tracee | |
EP1801716A1 (fr) | Diffusion de données par groupement | |
WO2009092809A1 (fr) | Procédé d'alimentation d'un mandataire de contenu multimédia, mandataire, et produit programme d'ordinateur correspondant. | |
FR2643734A1 (fr) | Procede de gestion de fichiers pour un systeme informatique, et module systeme pour la mise en oeuvre de ce procede | |
FR2826477A1 (fr) | Systeme integre de recueil de donnees medico-sociales | |
BE1005968A6 (fr) | Systeme electronique integre de magasinage et de distribution. | |
FR3105477A3 (fr) | Système de distribution de contenu avec gestion de profil utilisateur | |
FR3105474A3 (fr) | Systeme et procede de distribution de donnees a base de cache | |
FR3024315A1 (fr) | Systeme et procede de mise a disposition de fichiers informatiques. | |
WO2020193761A1 (fr) | Système de stockage redondant de données, procédé et programme d'ordinateur correspondants |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
FZDE | Discontinued | ||
FZDE | Discontinued |
Effective date: 20060110 |
|
FZDE | Discontinued |
Effective date: 20060110 |