BE1024532B1 - Systeem en apparaat voor het verwerken van grote hoeveelheden gegevens - Google Patents

Systeem en apparaat voor het verwerken van grote hoeveelheden gegevens Download PDF

Info

Publication number
BE1024532B1
BE1024532B1 BE2016/5676A BE201605676A BE1024532B1 BE 1024532 B1 BE1024532 B1 BE 1024532B1 BE 2016/5676 A BE2016/5676 A BE 2016/5676A BE 201605676 A BE201605676 A BE 201605676A BE 1024532 B1 BE1024532 B1 BE 1024532B1
Authority
BE
Belgium
Prior art keywords
event
data
node
trajectory
request
Prior art date
Application number
BE2016/5676A
Other languages
English (en)
Other versions
BE1024532A1 (nl
Inventor
Daniel Goovaerts
Paul Grimbers
Original Assignee
The Glue Nv
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by The Glue Nv filed Critical The Glue Nv
Priority to BE2016/5676A priority Critical patent/BE1024532B1/nl
Priority to PCT/EP2017/072022 priority patent/WO2018042021A1/en
Publication of BE1024532A1 publication Critical patent/BE1024532A1/nl
Application granted granted Critical
Publication of BE1024532B1 publication Critical patent/BE1024532B1/nl

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5072Grid computing

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Physics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

De onderhavige uitvinding heeft betrekking op een gegevensverwerkend apparaat voor het verwerken van diensten van een instelling die grote hoeveelheden gegevens bijhoudt en verwerkt, waarbij het apparaat omvat: a. een front-end interface om te communiceren met front-end toepassingen voor het ontvangen van externe verzoeken van gebruikers; b. één of meerdere knopen om te voorzien in logica en in in-memory gegevens voor het verwerken van de veelheid aan trajecten, waarbij de logica en de gegevens geassocieerd zijn met hetzelfde traject dat is opgeslagen in dezelfde knoop; en c. een back-end interface om te communiceren met een back-end systeem dat logica en gegevens omvat; waarbij de front-end interface een verzoekverwerker omvat die geconfigureerd is en die werkzaam is om een verzoek, geassocieerd met een gebeurtenis van een traject, te routen naar een knoop waarin logica en gegevens aanwezig zijn voor het verwerken van de gebeurtenis in kwestie.

Description

(73) Houder(s) :
THE GLUE NV 2550, KONTICH België (72) Uitvinder(s) :
GOOVAERTS Daniel 2550 KONTICH België
GRIMBERS Paul 2550 KONTICH België (54) Systeem en apparaat voor het verwerken van grote hoeveelheden gegevens (57) De onderhavige uitvinding heeft betrekking op een gegevensverwerkend apparaat voor het verwerken van diensten van een instelling die grote hoeveelheden gegevens bijhoudt en verwerkt, waarbij het apparaat omvat: a. een front-end interface om te communiceren met front-end toepassingen voor het ontvangen van externe verzoeken van gebruikers; b. één of meerdere knopen om te voorzien in logica en in in-memory gegevens voor het verwerken van de veelheid aan trajecten, waarbij de logica en de gegevens geassocieerd zijn met hetzelfde traject dat is opgeslagen in dezelfde knoop; en c. een back-end interface om te communiceren met een back-end systeem dat logica en gegevens omvat; waarbij de front-end interface een verzoekverwerker omvat die geconfigureerd is en die werkzaam is om een verzoek, geassocieerd met een gebeurtenis van een traject, te routen naar een knoop waarin logica en gegevens aanwezig zijn voor het verwerken van de gebeurtenis in kwestie.
BELGISCH UITVINDINGSOCTROOI
FOD Economie, K.M.O., Middenstand & Energie
Publicatienummer: 1024532 Nummer van indiening: BE2016/5676
Dienst voor de Intellectuele Eigendom
Internationale classificatie: H04L 29/08 G06F 9/455 G06F 9/50 Datum van verlening: 03/04/2018
De Minister van Economie,
Gelet op het Verdrag van Parijs van 20 maart 1883 tot Bescherming van de industriële Eigendom;
Gelet op de wet van 28 maart 1984 op de uitvindingsoctrooien, artikel 22, voor de voor 22 September 2014 ingediende octrooiaanvragen ;
Gelet op Titel 1 Uitvindingsoctrooien van Boek XI van het Wetboek van economisch recht, artikel XI.24, voor de vanaf 22 September 2014 ingediende octrooiaanvragen ;
Gelet op het koninklijk besluit van 2 december 1986 betreffende het aanvragen, verlenen en in stand houden van uitvindingsoctrooien, artikel 28;
Gelet op de aanvraag voor een uitvindingsoctrooi ontvangen door de Dienst voor de Intellectuele Eigendom op datum van 02/09/2016.
Overwegende dat voor de octrooiaanvragen die binnen het toepassingsgebied van Titel 1, Boek XI, van het Wetboek van economisch recht (hierna WER) vallen, overeenkomstig artikel XI.19, § 4, tweede lid, van het WER, het verleende octrooi beperkt zal zijn tot de octrooiconclusies waarvoor het verslag van nieuwheidsonderzoek werd opgesteld, wanneer de octrooiaanvraag het voorwerp uitmaakt van een verslag van nieuwheidsonderzoek dat een gebrek aan eenheid van uitvinding als bedoeld in paragraaf 1, vermeldt, en wanneer de aanvrager zijn aanvraag niet beperkt en geen afgesplitste aanvraag indient overeenkomstig het verslag van nieuwheidsonderzoek.
Besluit:
Artikel 1. - Er wordt aan
THE GLUE NV, Ter Sneeuw 38, 2550 KONTICH België;
vertegenwoordigd door
KREBS Achim, Zuid-Hollandlaan 7, 2596 AL, DEN HAAG;
een Belgisch uitvindingsoctrooi met een looptijd van 20 jaar toegekend, onder voorbehoud van betaling van de jaartaksen zoais bedoeld in artikel XI.48, § 1 van het Wetboek van economisch recht, voor: Systeem en apparaat voor het verwerken van grote hoeveelheden gegevens.
UITVINDER(S):
GOOVAERTS Daniel , Ter Sneeuw 38, 2550, KONTICH;
GRIMBERS Paul, Ter Sneeuw 38, 2550, KONTICH;
VOORRANG:
AFSPLITSING :
Afgesplitst van basisaanvraag :
Indieningsdatum van de basisaanvraag :
Artikel 2. - Dit octrooi wordt verleend zonder voorafgaand onderzoek naar de octrooieerbaarheid van de uitvinding, zonder garantie van de Verdienste van de uitvinding noch van de nauwkeurigheid van de beschrijving ervan en voor risico van de aanvrager(s).
Brussel, 03/04/2018,
Bij bijzondere machtiging:
BE2016/5676
Systeem en apparaat voor het verwerken van grote hoeveelheden gegevens
Vakgebied van de uitvinding
De onderhavige uitvinding heeft betrekking op een gegevensverwerkend systeem en apparaat voor een instelling die grote hoeveelheden gegevens verwerkt, zoals een fmanciële instelling, een aanbieder van diensten, transportinstellingen, telecommunicatiebedrijven, verzekeringsmaatschappijen, of dergelijke. De uitvinding heeft meer bepaald betrekking op een front-end interface met een verwerker die verbonden is met een knoop, waarbij gegevens worden opgeslagen met betrekking tot gebeurtenissen die worden opgenomen door een gebeurtenisseninterface, teneinde het systeem en het apparaat een snellere respons te kunnen laten bieden op een verzoek van een klant.
Achtergrond van de uitvinding
Digitale businessmodellen zijn essentieel geworden voor bedrijven binnen een heel gamma aan industrieën. Met de beschikbaarheid van smart-computing, hebben het succès van sociale netwerken en het bestaan van e-commerce websites nieuwe referenties gecreëerd voor snelheid, flexibiliteit, en gebruiksvriendelijkheid, wat inhoudt dat consumenten gelijkaardige online-performanties verwachten van banken en van diensten- en telecommunicatiebedrijven. Digitale businessmodellen maken de creatie en kortere time-to-market-tijden mogelijk van nieuwe digitale producten en diensten, terwijl geautomatiseerde operaties eveneens snellere responstijden mogelijk maken, en dit bij gereduceerde operationele kosten. Het gevolg daarvan is dat tegenwoordig klanten van instelling en die op veilige wijze grote hoeveelheden gegevens dienen te verwerken, zoals traditionele banken en andere gelijkaardige fmanciële instellingen, dezelfde naadloze integratie verwachten van de diensten van de instellingen in kwestie, van de initiatie tot aan het affonden, en dit over diverse platformen heen, zoals mobiel bankieren, intemetbankieren, car-sharing, gebruik van gas en elektriciteit, enzovoort.
BE2016/5676
Instellingen en bedrijven moeten dan ook in Staat zijn om een naadloze meerkanaalse ervaring te kunnen aanbieden zodat consumenten zonder problemen van het ene kanaal naar andere kunnen overschakelen.
Ook moeten geavanceerde analytische activiteiten het mogelijk maken om het gedrag van de consument te voorspellen, waardoor een gepaste toekenning van resources, bijvoorbeeld het leveren van geschikte hoeveelheden energie aan het elektrisch netwerk wanneer de vraag hoog lijkt voor het laden van batterijen van elektrische voertuigen. Bijkomende voorbeelden zijn spéciale verzekeringspolissen die mogelijk worden gemaakt door gebruik te maken van technologie voor het volgen van de geolocatie van een voertuig, waarbij de prijs van de polis afhangt van de werkeiijke rijtijden en van de rijvaardigheden van de bestuurder; of het voorzien van logistiek voor goederen die online aangekocht of gereserveerd zijn, en die opgehaald worden in een welbepaaide ophaalplaats, en dit wanneer het de klant uitkomt.
Daarenboven wensen klanten ook dat hun instellingen bijkomende diensten aanbieden, bijvoorbeeld een analyse van hun uitgavegedrag in real-time en in de vorm van een prognose, alsook dat ze op proactieve wijze aanbevelingen doen van producten en van diensten in functie van hun financiële eisen in het geval van banken; de beschikbaarheid van auto’s of andere gedeelde resources, een levering van elektriciteit op verzoek in het geval van elektrische voertuigen, en dergelijke.
Vele lijnen van bankproducten, zoals kredietkaarten, investeringen, en zieht- en spaarrekeningen worden tegenwoordig beheerd in silo’s die onafhankelijk beheerd en gevolgd worden, wat de zaken compliceert voor klanten die meerdere kanalen wensen te gebruiken wanneer ze een transactie uitvoeren. Zo kan een klant die bijvoorbeeld een toepassing start op een smartphone voor het aanvragen van een lening, vaststellen dat hij of zij opnieuw een autorisatie dient in te voeren en gegevens moet opvragen wanneer er wordt overgeschakeld naar een desktopcomputer om de meer gedetailleerde informatie in te voeren die vereist is. Het gebrek aan de integratie van Systemen en de relatief trage toegang tot
BE2016/5676 databases die niet opgezet en voorzien zijn voor een grote belasting en doorvoer kunnen er de oorzaak van zijn dat klanten niet ten voile gebruik kunnen maken van real-time shopping.
Daarenboven zijn de analytische mogelijkheden bijzonder moeilijk te integreren in traditionele operationele gegevensprocessen. Handmatige stappen in deze processen, zoals het re-keying en het transfereren van gegevens, vormen belangrijke obstakels voor het analyseren en het automatiseren van processen.
Om dergelijke bijkomende diensten aan te bieden, hebben banken bijvoorbeeld de complexiteit en de responstijd van al hun klanteninteracties moeten reduceren. De bestaande gegevensverwerkende Systemen van banken zijn daarvoor echter dikwijls ongeschikt. Dit is eveneens het gevai voor andere instellingen en bedrijven, zoals hiervoor reeds werd vermeld.
Het gevolg daarvan is dat er de afgelopen jaren een toenemend aantal concurrenten is versehenen voor traditionele banken, concurrenten die op succesvolle wijze producten en diensten aanbieden, zoals mobiele betalingen, geldtransfers, leningen, fündraising, en zelfs vermogensbeheer. Deze concurrenten hebben zichzeif gedifferentieerd ten opzichte van de banken door innovatieve diensten en gemakkelijk te gebruiken oplossingen aan te bieden aan de gebruikers. Daarenboven hebben ze gebruik gemaakt van een klantgerichte aanpak, waarbij gefocust werd op de flexibiliteit, snelle time-to-market tijden, en positieve eindgebruikerervaringen. Traditionele banken zijn echter gefocust op hun producten en op betrouwbaarheid, duurzaamheid, en op de garantie dat er geen gegevens verloren gaan. Zoals hiervoor reeds werd vermeld, maken ze typisch gebruik van afzonderlijke silo’s in de backend van hun gegevensverwerkende Systemen, silo’s die elk gegevens opsiaan voor een welbepaald product, zoals hypotheken, investeringen, of dergelijke, waarbij er weinig of geen communicatie bestaat tussen deze silo’s.
Banken zijn dus in feite beperkt door de architectuur van hun gegevensverwerkende Systemen wanneer ze trachten digitale kanalen aan te bieden om hun aanbod van producten en diensten uit te breiden. Wat dit betreft kan de reactiesnelheid die nodig is in het front-end
BE2016/5676 van de gegevensverwerkende Systemen van banken typisch niet compatibel zijn met het back-end ervan. Alhoewel de back-end capaciteit, dat wil zeggen het aantal verzoeken dat verwerkt zou kunnen worden binnen een weibepaaide tijdsperiode, constant is gebleven over de jaren, is het aantal real-time verzoeken die hun oorsprong vinden in een breed gamma aan toepassingen echter exponentieel toegenomen. Het gevolg daarvan is dat de klant achterblijft met een indruk van een performantie die achteruitgaat. Beide Problemen, namelijk het verschil tussen front-end en back-end op het vlak van de reactiesnelheid, en de verwerkingssnelheid, zijn gewoonlijk gekend als het “twee snelheden dilemma”.
Op dezelfde wijze hebben andere instellingen, zoals e-commerce, verzekeringen, en bedrijven voor het beheer van energie, bedrijven en instellingen die grote hoeveeiheden gegevens in hun bezit hebben en verwerken, de noodzaak gevoeld om hun klanten een naadloze integratie van hun diensten aan te bieden, van de initiatie tot de afronding ervan, en dit over diverse platformen heen, alsook om bijkomende diensten aan te bieden om het hoofd te bieden aan de bestaande concurrentie.
De noodzaak bestaat dan ook aan verbeterde gegevensverwerkende Systemen die compatibel zijn met bestaande Systemen die gebruikt worden door instellingen, waarbij grote hoeveeiheden gegevens bewaard worden, om dergelijke instellingen de mogelijkheid te bieden om hun concurrenten bij te houden en om hen de mogelijkheid te bieden om ten volle gebruik te maken van hun omvang, klantenbasis en gegevensverzameling, en dit wanneer ze diensten en producten aanbieden die door hun klanten worden gevraagd.
Samenvatting van de uitvinding
Een gegevensverwerkend apparaat voor het verwerken van diensten van een instelling die grote hoeveeiheden gegevens bijhoudt en verwerkt, waarbij het apparaat omvat:
a. een front-end interface om te communiceren met front-end toepassingen, om externe verzoeken van gebruikers te ontvangen om het de gebruikers mogelijk te maken om toegang te krijgen tot diensten die aangeboden worden via het systeem,
BE2016/5676 waarbij de diensten voorzien worden als één of meerdere gebeurtenisaangedreven trajecten die elk overeenstemmen met één of meerdere gebeurtenissen waarvan er ten minste sommige vertaald worden uit één of meerdere van de verzoeken die ontvangen worden via de front-end interface, en waarbij de gebeurtenissen één of meerdere acties triggeren;
b. één of meerdere knopen om te voorzien in logica en in-memory gegevens voor het verwerken van de meerdere trajecten, waarbij de logica en de gegevens die geassocieerd zijn met het zelfde traject opgeslagen zijn in dezeifde knoop, waarbij elke van de één of meerdere knopen voorzien is in een afzonderlijke container; en
c. een back-end interface om te communiceren met een back-end systeem dat logica en gegevens omvat; waarbij de front-end interface een verzoekverwerker omvat die geconfigureerd en werkzaam is om een verzoek te routen dat geassocieerd is met een gebeurtenis van een traject, en dit naar een knoop waarin logica en gegevens zijn opgeslagen om de gebeurtenis in kwestie te verwerken.
Het verbeterde apparaat en het verbeterde systeem zijn bij voorkeur compatibel met een bestaand gegevensverwerkend apparaat en systeem van de instelling; dit kan bij voorkeur echter gerealiseerd worden door gebruik te maken van een geschikte interface, en is dan ook niet beperkt tot een welbepaalde bestaande architectuur.
Volgens een bijkomend aspect van de onderhavige uitvinding heeft deze eveneens betrekking op een gegevensverwerkend systeem voor het op dynamische wijze verwerken van grote hoeveelheden transacties tussen gebruikers en een instelling die grote hoeveelheden gegevens omvat, meer bepaald een bank, waarbij het systeem omvat:
i. een front-end interface om te communiceren met front-end toepassingen, om externe verzoeken van gebruikers te ontvangen, teneinde het de gebruikers mogelijk te maken om toegang te krijgen tot diensten die worden aangeboden via het systeem, ii. een gebeurtenisseninterface om externe gebeurtenissen op te nemen, waarbij de diensten voorzien worden als een veelheid aan door een gebeurtenis aangedreven trajecten die getriggerd zijn door één of meerdere gebeurtenissen die door de
BE2016/5676 gebeurtenisseninterface worden opgenomen of die vertaald zijn uit één of meerdere verzoeken die ontvangen werden via de front-end interface;
iii. een back-end interface om te communiceren met een back-end systeem dat logica en gegevens omvat;
iv. een veelheid aan knopen om te voorzien in logica en in-memory gegevens om de veelheid aan trajecten te verwerken, waarbij de logica en de gegevens die geassocieerd zijn met hetzelfde traject zijn opgeslagen in dezelfde knoop, waarbij één of meerdere knopen uit de veelheid aan knopen elk is of zijn voorzien in een afzonderlijke container; en
v. een geïntegreerd geheugengegevensnetwerk dat ten minste één configuratiecache omvat die gedeeld wordt tussen en dat toegankelijk is door ten minste één knoop, en bij voorkeur gedeeld wordt door een veelheid aan knopen.
Voigens een bijkomend aspect van de onderhavige uitvinding heeft deze eveneens betrekking op een werkwijze voor het verwerken van grote hoeveelheden transacties waartoe verzocht wordt door één of meerdere gebruikers in een apparaat en systeem, de stappen omvattende met:
a. het opstarten van een container,
b. het opstarten van een knoop in de container die zichzelf inspecteert en een unieke benaming wegschrijft die de naam van de entiteit omvat, alsook het ftmctionele domein ervan dat overeenstemt met de logica van de knoop, beschikbaar voor het verwerken van één of meerdere trajecttypes voor opslag in de configuratiecache, teneinde een identificatie door de verzoekverwerker mogelijk te maken.
Voigens een bijkomend aspect van de onderhavige uitvinding heeft deze eveneens betrekking op het gebruik van een apparaat en systeem voor het verwerken van diensten van een instelling die grote hoeveelheden gegevens bijhoudt en verwerkt.
BE2016/5676
Gedetailleerde beschrijving van de uitvinding
Tenzij dat expliciet anders vermeld wordt, hebben alle technische en wetenschappelijke termen die hier gebruikt worden dezelfde betekenis als deze die door de vakman in het vakgebied waartoe de uitvinding behoort aan de termen gegeven wordt. De in de beschrijving van de uitvinding gebruikte terminologie is enkel bedoeld voor het beschrijven van welbepaalde uitvoeringsvormen, en wordt dan ook niet geacht welke beperking van de uitvinding dan ook in te houden.
De term “gebeurtenis-gebaseerde verwerking” of “EPC” (Event Based Processing) zoals die hier gebruikt wordt, verwijst bij voorkeur naar een door een gebeurtenis aangedreven gegevensprogrammering die een toepassingstromingscontrole bezit die bepaald wordt door gebeurtenissen of door toestandswijzingen. EPC is een geordende structuur of keten van gebeurtenissen en füncties. Zij voorziet in diverse connectors die een altematieve en parallelle uitvoering van processen toestaan. Daarenboven wordt de verwerking gespecificeerd door het gebruik van logische operatoren zoals OR, AND, en XOR. EPCs vereisen niet-plaatselijke semantiek, dat wil zeggen dat de uitvoering van een welbepaalde knoop binnen een EPC kan afhangen van de toestand van andere delen van de EPC.
De termen “activiteit” of “fünctie”, zoals zij hier gebmikt worden, verwijzen bij voorkeur naar een actieve component van een EPC die een beslissingsnemende autoriteit bezit en die typisch tijd en resources verbruikt.
De term “gebeurtenis” verwijst bij voorkeur, in overeenstemming met DIN 69900, naar een toestand van een EPC die zieh heeft voorgedaan en die een opeenvolging van activiteiten veroorzaakt. Een gebeurtenis is een passieve component van een EPC en bezit geen beslissingsnemende autoriteit. Gebeurtenissen kunnen activiteiten triggeren.
De term “traject”, zoals hij hier gebmikt wordt, verwijst bij voorkeur naar de acties (bijvoorbeeld autorisaties, verificaties, back-end, verzoeken, enzovoort) die zieh voordoen
BE2016/5676 binnen een EPC, getriggerd door externe verzoeken door klanten. In het geval van een bankomgeving kan een traject van een klant zieh bijvoorbeeld voordoen tussen een front-end veiligheidslaag en een back-end gegevensverwerkende laag van een bank. Een traject van een klant kan opgesplitst worden in meerdere kleine trajecten, zoals: 1. Het door de klant controleren van zijn of haar bankrekening om het saldo ervan te kennen; 2. Het vervolgens uitvoeren van een betaling vanuit de rekening in kwestie; 3. Het vervolgens bevestigen en het finaliseren van de betaling, waarbij er zieh een gebeurtenis voordoet en het traject eindigt. Een traject voigens de onderhavige uitvinding zou bijvoorbeeld kunnen zijn:
Een traject voor een bankrekening: elke invoer en huidig saldo van een klant, alsook elke autorisatie, verificatie, back-end verzoek, enzovoort die zieh intern voordoen, getriggerd door gebeurtenissen en externe verzoeken, worden opgetekend en geactualiseerd, waarbij alle wijzigingen kunnen weergegeven worden;
Een traject van een toestemmingsstatus: elke wijziging van de toestemming van een klant om iets in zijn of haar naam uit te voeren, bijvoorbeeld door een handelaar, wordt opgetekend en geactualiseerd, en alle wijzigingen kunnen weergegeven worden;
Een traject van een energiebeheer: bijvoorbeeld elektriciteit/gasmeter: elke uitlezing van een gas- en/of elektriciteitsmeter wordt opgeslagen en alle wijzigingen kunnen weergegeven worden;
Een traject van computer/telefoon-back-ups: alle systeemback-ups worden opgeslagen en alle wijzigingen kunnen weergegeven worden zodat de reden voor een eventueel probleem met de computer/telefoon geïdentificeerd kan worden.
De term “knoop”, zoals hij hier gebruikt wordt, verwijst bij voorkeur naar een autonome opslagknoop van een EPC, in het bijzonder een knoop die verbonden is met andere knopen in een opslagnetwerk, zodat welke knoop dan ook kan communiceren met welke andere knoop dan ook, en dit zonder dat gegevens via een gecentraliseerde switch dienen te passeren. Elke knoop is in het bezit van zijn eigen opslagmedium, microprocessor, vermögen tot indexeren, en beheer. Omdat EPCs niet-plaatselijke semantiek vereisen, kan de uitvoering van een welbepaalde knoop binnen een EPC afhangen van de toestand van andere knopen van de EPC, knopen die zelfs zeer verafgelegen kunnen zijn. Een cluster van dergelijke knopen kan
BE2016/5676 een gemeenschappelijke switch bezitten, maar elke knoop is eveneens verbonden met ten minste één andere knoopcluster. Knopen zijn individuele onderdelen van een grotere gegevensstructuur, zoals verbonden lijsten en gegevensboomstructuren. Indien trajecten, knopen, of containers van hetzeifde type parallel lopen, wordt emaar verwezen als naar “instanties” van een traject, knoop, of container.
Het onderhavige apparaat en systeem maken bij voorkeur gebruik van Event Driven Architecture (EDA - door een Gebeurtenis Aangedreven Architectuur), een systeem dat dikwijls gebruikt wordt in combinatie met in-memory gegevensnetwerken (in memory data grids - IMDG, verder netwerk genoemd) om gegevens op te slaan die frequent gebruikt worden of waarom frequent verzocht wordt, en dit omdat het een snelle inschaling mogelijk maakt. Het IMDG kan dan op zijn beurt gebruikt worden in combinatie met traditionele databases. De gegevens in de cache van het IMDG die vaker gebruikt worden of waartoe frequenter toegang wordt verkregen, zorgen ervoor dat een snellere toegang tot de gegevens mogelijk wordt gemaakt omdat de gegevens worden opgehaald uit geheugen in plaats van uit de database zelf, wat eveneens de belasting van de database reduceert. Ook bieden IMDGs het voordeel dat ze caches hebben die verdeeld zijn over een aantai knopen, zodat ze fungeren als kanaal en een snellere uitwisseling van gebeurtenissen mogelijk maken.
Bij voorkeur worden knopen opgeslagen in netwerken. Netwerkopslag introduceert een nieuw niveau van foutentolerantie en redundantie. Indien er zieh een fout voordoet in een opslagknoop of indien een traject tussen twee knopen wordt onderbroken, kan het netwerk de toegang op een andere wijze routen of een verbinding tot stand brengen met een redundante knoop. Dit reduceert de behoefte aan online-onderhoud, zodat downtime-periodes nagenoeg geëlimineerd worden. Ook zorgen de meerdere trajecten tussen paren van knopen ervoor dat een opslagnetwerk een optimale performantie kan behouden in omstandigheden waarin de belasting fluctueert. Ook is een netwerkopslag inschaalbaar. Indien een nieuwe knoop wordt toegevoegd, kan deze automatisch herkend worden door de rest van het netwerk omdat de knoop de naam van zijn entiteit bekendmaakt. Dit reduceert de behoefte aan dure hardwareactualisaties, en reduceert eveneens eventuele downtime. Geschikte softwarepakketten voor
BE2016/5676 een netwerkopslag voor het verwerken van de opgeslagen gegevens zijn verkrijgbaar bij Gemfire, Hazelcast, XAP Gigaspaces, en GridGain. Wat dit betreft, fungeert het gebruikte softwarepakket bij voorkeur als gegevenstoegangs- en verwerkende laag tussen de toepassing en de gegevensopslag, en maakt gebruik van geheugen (RAM) als primaire gegevensopslag voor de verwerking van gegevens, in de plaats van van een schijf.
Normaal gezien maken netwerkopslagsystemen voor het verwerken van opgeslagen gegevens gebruik van slechts een enkele gegevenscache die toegankelijk is door alle knopen. Omdat niet alle knopen in het systeem en het apparaat voigens deze uitvinding dezelfde functionaliteit bezitten, moet elke afzonderlijke gebeurtenis die verwerkt wordt door het systeem en het apparaat voigens de uitvinding slechts terechtkomen in de knopen die in Staat zijn om deze te verwerken. Hiervoor zijn het systeem en het apparaat voigens de onderhavige uitvinding in het bezit van verschiiiende voorbehouden gegevenscaches voor elk type traject, en elk van deze gegevenscaches is slechts toegankelijk door de knopen die in het bezit zijn van de code voor dit type traject. Gridgain is bijvoorbeeld technologie die het mogelijk maakt om gegevens op te slaan in een voorbehouden gegevenscache, en om de gegevens enkel te verspreiden binnen een vooraf bepaalde groep van knopen. Wanneer gegevens worden opgeslagen in een voorbehouden gegevenscache volstaat het om eenvoudigweg GridGain op de hoogte brengen van de naam van de voorbehouden gegevenscache. Hiervoor kunnen de namen van elke groep van voorbehouden gegevenscaches opgeslagen worden in een confîguratiecache waartoe GridGain toegang heeft.
De term “cache” verwijst hier naar een software-cache of, in fbnctie van de context, naar het actuele hardware-geheugen waarin de gegevens kunnen opgeslagen zijn. De term “inmemory gegevens” verwijst naar de gegevens die zijn opgeslagen in een cache. Bij voorkeur is elke knoop verantwoordelijk voor en definieert hij gegevens die in de cache worden opgeslagen, waarbij de term “cache” hier op sommige plaatsen gebruikt wordt om te verwijzen naar een geheel van gegevens of naar een softwarestructuur om gegevens op te slaan. Een systeem dat voorziet de knopen of wat bij voorkeur eveneens actuele cashhardware die wordt geleverd door één of meerdere servers, teneinde de gegevens in kwestie
BE2016/5676 op te slaan. Een systeem dat voorziet in de knopen omvat echter bij voorkeur eveneens actuele cache-hardware die wordt voorzien door één of meerdere servers waarin de gegevens in kwestie worden opgeslagen. Indien er gebruik wordt gemaakt van gespreide berekening, zoals van EDA, zal het netwerk ervoor zorgen dat de vereiste capaciteit op het vlak van de software en van de hardware-cache beschikbaar is alsook in-memory en andere geheugencapaciteit.
In het systeem en in het apparaat volgens deze uitvinding is elke voorbehouden gegevenscache voorzien van een specifieke naam voor elke van de trajecttypes volgens de uitvinding waarvoor gegevens worden opgeslagen. De knopen die een specifiek trajecttype kunnen verwerken, plaatsen de naam van de voorbehouden gegevenscache in een configuratiecache. Wanneer een knoop wordt opgestart, registreert deze zieh in het netwerk en verzoekt hij het netwerk om toegang te verkrijgen tot de voorbehouden gegevenscache met de specifieke naam van het trajecttype dat verwerkt wordt door de knoop.
De configuratiecache wordt eveneens geinformeerd wanneer knopen opstarten die beschikbaar zijn. Op deze wijze omvat de voorbehouden cache het trajecttype en de naam van het traject. Doordat elke knoop zichzelf registreert bij het netwerk weet het netwerk op basis van de configuratiecache welke knopen in Staat zijn om toegang te krijgen tot de voorbehouden gegevenscache met de specifieke trajectnaam.
Op deze wijze kent de verzoekverwerker de naam van de voorbehouden gegevenscache door de configuratiecache te doorzoeken. Wanneer de verzoekverwerker het verzoek naar de knopen wenst te sturen, plaatst deze het verzoek inde voorbehouden gegevenscache met de correcte naam, zodat het netwerk weet naar welke knopen het het verzoek eventueel kan versturen. Door op deze wijze gebruik te maken van de voorbehouden gegevenscaches en van de configuratiecache moet de verzoekverwerker enkel de naam of de namen kennen van de voorbehouden gegevenscache of gegevenscaches voor elk verzoek.
BE2016/5676
De term “container”, zoais hij hier gebruikt wordt, verwijst bij voorkeur naar een softwarepakket van een EPC, waarin ailes vervat zit om het softwarepakket uit te voeren: code, runtime, systeemtools, systeembibliotheken - ailes wat kan geïnstalleerd worden op een server. Een container garandeert dat de software ervan steeds op dezelfde wijze zal uitgevoerd worden, ongeacht de omgeving. Een container omvat gewoonlijk een volledige runtime-omgeving: een toepassing, met inbegrip van aile afhankelijke onderdelen, bibliotheken en andere binaire verzamelingen, alsook de configuratiebestanden die nodig zijn voor de uitvoering, en dit alles gebundeld in een enkel pakket. Door het tot een container omvormen van het toepassingsplatform en van de afhankelijke onderdelen ervan kunnen de effecten van verschillen in distributies van OS en onderliggende infrastructuur vermeden worden. Geschikte containersoftwarepakketten zijn bijvoorbeeid te verkrijgen bij Docker, Linux Containers, FreeBSD jails, AIX Workload Partitions, Solaris Containers en CoreOS rkt.
Een container omvat typisch een knoop van een welbepaald type, dat wil zeggen dat die in Staat is om een specifieke logica uit te voeren die gereiateerd is aan een specifiek type traject. Door de knopen in containers te bundelen, dat wil zeggen dat nieuwe knopen toegevoegd kunnen worden, dat wil zeggen dat nieuwe knopen in nieuwe containers kunnen toegevoegd worden zonder de bestaande systeem te wijzigen, kan de capaciteit uitgebreid worden zonder of met beperkte down-tijd. De tijd voor het testen van het systeem kan eveneens gereduceerd worden.
In overeenstemming met de onderhavige uitvinding wordt er voorzien in een verbeterd gegevensverwerkend systeem en apparaat die voorzien zijn voor het verwerken van diensten, meer bepaald van fmanciële diensten, en dit van een instelling die grote hoeveelheden gegevens bijhoudt, meer bepaald een bank of een verzekeringsfirma, waarbij het systeem en het apparaat zijn voorzien van:
a. een front-end interface om te communiceren met front-end toepassingen om externe verzoeken te ontvangen van gebruikers, teneinde het de gebruikers
BE2016/5676 mogelijk te maken om toegang te krijgen tot diensten die worden voorzien via het systeem,
b. een gebeurtenisseninterface om exteme gebeurtenissen op te nemen, waarbij de diensten worden voorzien in de vorm van een veelheid aan door een gebeurtenis aangedreven trajecten, waarbij elk exemplaar van deze laatste overeenstemt met een veelheid aan acties die getriggerd worden door één of meerdere gebeurtenissen die door de gebeurtenisseninterface worden opgenomen of die vertaald worden uit één of meerdere verzoeken die worden ontvangen via de front-end interface;
c. een back-end interface om te communiceren met een back-end systeem waarin logica en gegevens aanwezig zijn,
d. een veelheid aan knopen om te voorzien in logica en in in-memory geheugen om de veelheid aan trajecten te verwerken, waarbij de logica en de gegevens geassocieerd zijn met hetzelfde traject dat is opgeslagen in dezelfde knop, waarbij één of meerdere knoppen van de veelheid aan knopen voorzien is of zijn in een afzonderiijke container, waarbij de front-end interface een verzoekverwerker omvat om een verzoek dat geassocieerd is met de gebeurtenissentraject, te routen naar een knoop waarin logica en de gegevens zijn opgeslagen voor de verwerking van de gebeurtenis in kwestie.
Het systeem en het apparaat omvatten bij voorkeur eveneens ten minste één kopie van de container die de één of meerdere knopen omvat. Het systeem en het apparaat kunnen nog beter eveneens voorzien zijn van een container, waarbij de kopie werkzaam en verdeeld is over verschillende servers, zoals is terug te vinden in figuur 6, en waarbij het netwerk de taak heeft om de gepaste connectiviteit tot stand te brengen tussen de verdeelde caches en knopen.
Bij voorkeur omvat het apparaat bovendien een gebeurtenisseninterface om exteme gebeurtenissen op te nemen. Een exteme gebeurtenis kan een bijkomende exteme gebmiker zijn of kan eenvoudigweg een verschillende verwerker of een andere gebeurtenis zijn bijvoorbeeld het controleren van een wettelijke status of van een geolocatie.
BE2016/5676
Bij voorkeur omvat het apparaat bovendien ten minste één configuratiecache die gedeeld wordt tussen en toegankelijk is door alle knopen, waarbij alle exemplaren van deze laatste in een container worden uitgevoerd.
Bij voorkeur omvat het apparaat bovendien ten minste één trajecttype- en gebeurtenisgegevenscache die gedeeld wordt tussen en toegankelijk is door ten minste één knoop in container, en die bij voorkeur gedeeld wordt door meerdere knoppen die dezelfde verwerkende trajecttypelogica omvatten.
De één of meerdere knoppen zijn bij voorkeur geconfigureerd en werkzaam om een zelfinspectie uit te voeren op het moment dat ze worden opgestart, teneinde te definieren welke logica ze omvatten om een welbepaald traject uit te voeren, en om een unieke knoopbenaming te definieren die ten minste de entiteit, het fünctionele domein, en het trajecttype definieert, logicatyperekening (en optioneel de trajectversie), en om de unieke knoopbenaming te publiceren in de configuratiecache. Bij voorkeur omvat het apparaat bovendien instanties van een container.
Elke knoop is bij voorkeur geconfigureerd om een traject-ID te genereren voor elke aangevatte trajectinstantie, en om de traject-ID mee te delen aan de front-end interface, waarbij de front-end interface geconfigureerd is om een verzoek voor een aangevatte trajectinstantie te routen naar de knoop, en dit op basis van de traject-ID.
Elke knoop omvat eveneens bij voorkeur ten minste één externe gebeurtenissenprocessor om een externe gebeurtenis te vertalen in een interne gebeurtenis, teneinde een gebeurtenissenobject te genereren en om de trajectinstantie-ID en de gegevens die geassocieerd zijn met de externe gebeurtenis op te nemen in het object. De knoop omvat bij voorkeur ten minste één trajectgebeurtenissenprocessor om een traject te starten.
BE2016/5676
Het back-end systeem is bij voorkeur een bank- of verzekeringssysteem, een boekhoudsysteem, een car-sharing-systeem, en/of een systeem van een gelijkaardige instelling of bedrijf met een back-end met traditioneel grote hoeveelheden gegevens.
Dienovereenkomstig omvat de veelheid aan trajecten bij voorkeur ten minste één van een veelheid aan acties voor het controleren van het saldo van een rekening van de gebruiker, een veelheid aan acties voor het overschrijven van geld naar of vanuit een rekening, een veelheid aan acties voor het uitvoeren van een betaling, een veelheid aan acties voor een fmanciële instrumenttransactie.
Het systeem en het apparaat omvatten bij voorkeur knopen die allemaal in communicatieverbinding staan met een configuratiecache waartoe de front-end interface toegang heeft. Wat dit betreft, is elke knoop geconfigureerd om gegevens op te slaan betreffende de één of meerdere trajecten waarvoor hij geconfigureerd is om die te verwerken in overeenstemming met gegevens in de configuratiecache, waarbij de front-end interface geconfigureerd is om het verzoek naar de knoop te routen op basis van gegevens in de configuratiecache.
Het systeem en het apparaat omvatten eveneens bij voorkeur knopen die elk geconfigureerd zijn om een traject-ID te genereren voor elke aangevatte trajectinstantie, en om de traject-ID mee te delen aan de front-end interface, waarbij de front-end interface geconfigureerd is om een verzoek voor een aangevatte trajectinstantie te routen naar de knoop op basis van de traject-ID.
Het systeem en het apparaat omvatten eveneens bij voorkeur één of meerdere acties van ten minste één van de trajecten die een verzoek omvatten voor informatie die is opgeslagen in een back-end systeem, waarbij de back-end interface geconfigureerd is om vooraf gegevens in een gegevenscache te laden uit het back-end systeem, waarbij de gegevenscache toegankelijk is voor een veelheid aan knopen wanneer een gebeurtenis zieh voordoet. Het
BE2016/5676 systeem en het apparaat omvatten bij voorkeur eveneens de gebeurtenis die overeenstemt met een gebruiker die een trajectinstantie initieert.
Het systeem en het apparaat omvatten bij voorkeur eveneens een back-end systeem, en voorzien in een geschikte communicatie-interface met het back-end systeem. Op deze wijze kan samengewerkt worden met diverse architecturen en back-end Systemen. Het back-end systeem kan welk geschikt systeem dan ook zijn, en is bij voorkeur een bank- of verzekeringssysteem.
In het apparaat en in het systeem volgens de uitvinding kunnen één of meerdere acties van ten minste één van de trajecten bij voorkeur een verzoek omvatten voor gegevens die zijn opgeslagen in een back-end systeem, waarbij de back-end interface geconfigureerd is om vooraf gegevens uit het back-end systeem in een gegevenscache te laden die toegankelijk is door een veelheid en knopen wanneer er zieh een gebeurtenis voordoet. De gebeurtenis kan bij voorkeur overeenstemmen met een gebruiker die een trajectinstantie initieert.
Het systeem en het apparaat omvatten eveneens bij voorkeur de veelheid aan trajecten met ten minste één uit een veelheid aan acties voor het controleren van het saldo van een rekening van een gebruiker, en veelheid aan acties voor het overschrijven van geld naar of uit een bankrekening, een veelheid aan acties voor het uitvoeren van een betaling, een veelheid aan acties voor een fînanciële instrumenttransactie.
Bij voorkeur omvat het systeem voor het op dynamische wijze verwerken van grote hoeveelheden transacties tussen gebruikers en een instelling die grote hoeveelheden gegevens bijhoudt en verwerkt, meer bepaald een bank, volgens de uitvinding, (a) een front-end interface om te communiceren met front-end toepassingen om exteme verzoeken te ontvangen van gebruikers, teneinde het de gebruikers in kwestie mogelijk te maken om toegang te krijgen tot diensten die via het systeem worden aangeboden, (b) een gebeurtenisseninterface om exteme gebeurtenissen op te nemen, waarbij de diensten voorzien worden als een veelheid aan door een gebeurtenis aangedreven trajecten die elk
BE2016/5676 overeenstemmen met een veelheid aan acties die getriggerd worden door één of meerdere gebeurtenissen die worden opgenomen door de gebeurtenisseninterface of die vertaald worden uit één of meerdere verzoeken die worden ontvangen via de front-end interface; (c) een back-end interface om te communiceren met een back-end systeem, met logica en trajecten, waarbij de logica en de gegevens die geassocieerd zijn met hetzeifde traject zijn opgeslagen in dezelfde knoop, waarbij één of meerdere knopen van de veelheid aan knopen voorzien is of zijn in een afzonderlijke container; en (e) een IMDG dat ten minste één configuratiecache omvat die gedeeld wordt tussen en toegankelijk is voor ten minste één knoop in een container, en die bij voorkeur gedeeld wordt door een veelheid aan knopen.
Bij voorkeur omvat het systeem bovendien ten minste één traject- en gebeurtenissengegevenscache die gedeeld wordt tussen en toegankelijk is voor ten minste één knoop in een container, en di bij voorkeur gedeeld wordt door een veelheid aan knopen die dezelfde trajecttype-verwerkende logica omvatten.
Daarbij omvat de front-end interface bij voorkeur een verzoekverwerker om een verzoek dat geassocieerd is met een gebeurtenis van een traject te routen naar een knoop waarin logica en gegevens zijn opgeslagen om de gebeurtenis in kwestie te verwerken.
Het systeem omvat bij voorkeur bovendien een kopie van de container die de één of meerdere knopen omvat.
Bij voorkeur is de configuratiecache toegankelijk voor elke knoop, en de front-end interface, waarbij elke knoop geconfigureerd is om gegevens op te slaan met betrekking tot de één of meerdere trajecten waarvoor ze geconfigureerd zijn om die te verwerken, en dit in overeenstemming met gegevens in de configuratiecache, en waarbij de front-end interface geconfigureerd is om het verzoek naar de knopen te routen op basis van gegevens die aanwezig is in de configuratiecache.
BE2016/5676
Bij voorkeur is elke knoop geconfigureerd om een traject-ID te genereren voor elke aangevatte trajectinstantie en om de traject-ID mee te delen aan de front-end interface, waarbij de front-end interface geconfigureerd is om een verzoek voor een aangevatte trajectinstantie naar de knoop te routen op basis van de traject-ID.
Bij voorkeur omvatten één of meerdere acties van ten minste één van de trajecten een verzoek voor informatie die is opgeslagen in een back-end systeem, waarbij de back-end interface geconfigureerd is om vooraf gegevens uit het back-end systeem te laden in een gegevenscache waartoe een veelheid van knopen toegang heeft wanneer er zieh een gebeurtenis voordoet.
Bij voorkeur stemt de gebeurtenis overeen met een gebruiker die een trajectinstantie initieert.
Bij voorkeur omvat de veelheid aan trajecten ten minste één van een veelheid aan acties om het saldo van een rekening van een gebruiker te controleren, een veelheid aan acties om geld over te maken naar of uit een bankrekening, een veelheid aan acties om een betaling uit te voeren, een veelheid aan acties voor een fmanciële instrumenttransactie.
De onderhavige uitvinding heeft eveneens betrekking op een werkwijze om grote hoeveeiheden transacties te verwerken waartoe verzocht wordt door één of meerdere gebruikers in een apparaat of het systeem, de stappen omvattende met: (a) het opstarten van een container, (b) het opstarten van een knoop in de container die zichzelf inspecteert en een unieke benaming wegschrijft die de naam van de entiteit omvat, en het functionele domein ervan dat overeenstemt met de logica van de knoop, beschikbaar voor het verwerken van één of meerdere trajecttypes voor opslag in de configuratiecache, teneinde een identificatie door de verzoekverwerker mogelijk te maken.
De werkwijze omvat bij voorkeur bovendien de stappen met: (c) het ontvangen van een transactieverzoek door de verzoekverwerker, en (d) het routen van het verzoek, geassocieerd met een gebeurtenissentraject, naar een knoop waarin logica en gegevens zijn opgeslagen
BE2016/5676 voor het verwerken van de gebeurtenis in kwestie. De werkwijze omvat bovendien bij voorkeur de stappen met: (e) het uit de configuratiecache opvragen van de traject-ID van alle trajectinstanties die betrokken zijn bij de externe gebeurtenis in kwestie, en dit door de externe gebeurtenisverwerker en vanuit de configuratiecache, en het ontvangen van een lijst met alle traject-IDs van de trajectinstanties die betrokken zijn bij de externe gebeurtenis, (f) het controleren van de configuratiegegevenscache en het bepalen in welke gegevenscache elke trajectinstantie met de geassocieerde ID is opgeslagen; en (g) het, voor elke betrokken trajectinstantie, routen van de externe gebeurtenis naar de knoop die verantwoordelijk is voor de geïdentifîceerde gegevenscache en waarin een primaire kopie van het traject met de ID in kwestie op dat moment is opgeslagen.
De werkwijze omvat bij voorkeur bovendien de stappen met: (h) het door de externe gebeurtenissenprocessor van de relevante knoop ontvangen van de externe gebeurtenis; (i) het vertalen van de externe gebeurtenis in een interne gebeurtenis; (j) het genereren van een gebeurtenissenobject, met inbegrip van de trajectinstantie-ID en van gegevens die geassocieerd zijn met de externe gebeurtenis in het object, (k) het opslaan van het object in de geïdentifîceerde gegevenscache, en (1) het triggeren van de trajectgebeurtenissenprocessor om de verwerking van de gebeurtenis te starten.
Het systeem kan bij voorkeur meer dan een enkele verzoekverwerker omvatten. In het systeem kunnen Type B knopen eveneens de configuratiegegevenscache delen.
De fünctionaliteit van het systeem en van het apparaat en van elke van de servers ervan is geïmplementeerd via een centrale processor die het opstarten beheert van scriptbestanden en die de werking controleert van elke server. De centrale processor maakt gebruik van een centrale servicefunctionaliteit die op de achtergrond loopt en taken automatiseert van het systeem en van het apparaat. De centrale servicefunctionaliteit omvat twee types fünctionaliteiten, een eerste die loopt op de individuele servers, en een tweede die over alle servers heen loopt.
BE2016/5676
De centrale serverfunctionaliteit maakt gebruik van een door een gebeurtenis aangedreven ontwerp om taken uit te voeren door een set mappen te monitoren op de diverse servers, en om de aanwezigheid van een gebeurtenis te identificeren alvorens een daarmee geassocieerd script of een daarmee geassocieerde toepassing te initiëren of te triggeren. Meerdere scripts en vlaggen kunnen in combinatie gebruikt worden om taken uit te voeren, waarbij elke taak kan bestaan uit meerdere scripts en/of programma’s van derde partijen. Een gebeurtenis kan een leeg bestand omvatten, een bestand dat een enkele gegevenslijn omvat, of een volledig gegevensbestand; en een vlagbestand omvat gegevens die aanduiden welke taak moet uitgevoerd worden op basis van de gebeurtenis in kwestie.
De centrale servicefunctionaliteit biedt ondersteuning voor taken die worden uitgevoerd door standaard intemetgebaseerde diensten (bijvoorbeeld Internet Information Services (IIS) en Active Server Page Network (ASP.NET) diensten) en standaard software-framewerkgebaseerde diensten (bijvoorbeeld Component Model Plus (COM+) en .NET diensten). De intemetgebaseerde diensten bieden de nodige fimctionaliteit voor de robuuste en interactieve gegevensuitwisselingsprocessen volgens de onderhavige uitvinding, en bieden de multifunctionaliteit om gegevens aan gebruikers aan te kunnen bieden van de diverse Systemen van de IPI 100 in een formaat van het type webbrowser. De software-framewerk gebaseerde diensten bieden de nodige fimctionaliteit voor het centraal beheren van aile businesslogica en routines die gebmikt worden door de onderhavige uitvinding.
Elke van de servers omvat eveneens de nodige fimctionaliteit voor het beheren van een relationele database. Elke database maakt gebmik van relationele technologie (bijvoorbeeld een Relation Database Management System (RDBMS)) om alle discrete gegevens centraal te beheren, wat het probleemloos delen van gegevens over alle toepassingen heen vergemakkelijkt. Door gebmik te maken van gestandaardiseerde medische woordenschatten om gegevens te normaliseren kan informatie daarenboven probleemloos gedeeld worden. Door gegevens op te slaan in een relationele database kunnen deze gegevens ook op efficiëntere wijze opgevraagd worden om anonieme datasets te vormen.
BE2016/5676
Om het op efficiente wijze opvragen van gegevens nog verder te vereenvoudigen, maakt elke database ook gebruik van gestandaardiseerde databasetalen die ontworpen zijn voor het opvragen en voor het beheren van gegevens in relationele databases, zoais de Structured Query Language (SQL) en XML-Related Specifications (bijvoorbeeid SQL/XML).
Dergelijke gestandaardiseerde databasetalen worden gebruikt om genormaliseerde extensies toe te kennen aan welbepaalde types gegevens, zodat dergelijke gegevens gemakkelijker gelokaliseerd kunnen worden in een database. Naast het gebruik van standaard extensies die voorzien worden als onderdeel van deze talen kunnen deze talen eveneens gebruikt worden om specifieke extensies te definiëren die uniek zijn voor het systeem waarin ze gebruikt worden. Dienovereenkomstig voorziet de onderhavige uitvinding in de nodige fimctionaliteit om gegevens op te slaan op een betekenis voile wijze, waardoor een snelle en gemakkelijke toegang mogelijk wordt gemaakt en waardoor de mogelijkheden voor het opvragen van gegevens volgens de onderhavige uitvinding nog verder worden verbeterd.
Back-end pre-load: in het geval van zeer grote databases kan het in het IMDG piaatsen van in hoofdzaak alle gegevens niet economisch of niet praktisch zijn. In dergelijke omstandigheden kan een gebruiker vooraf op selectieve wijze gegevens laden waarvan men verwacht dat ze frequent opgevraagd of gebruikt zullen worden in het IMDG. Voor gegevens die niet vooraf in het IMDG geladen worden, kan een klant-pre-lader of lader-plug-in dienst doen als gegevenstoegangslaag om frequent opgevraagde gegevens op te vragen ofte verzamelen uit de database, en om deze gegevens in een cache van het IMDG op te slaan.
Lrequent opgevraagde gegevens kunnen gedefinieerd worden als welke gegevens of gegevensobjecten dan ook die een welbepaald aantal keren of met een welbepaalde frequentie gebruikt, opgevraagd, of toegankelijk gemaakt moeten worden waarbij dit aantal keren of de frequentie een vooraf bepaalde drempelwaarde overstijgt, of gegevens waartoe een vooraf ingesteld aantal keren binnen een welbepaalde tijdsperiode toegang zal moeten worden verkregen.
BE2016/5676
Figuur 1 [in de figuren is figuur 1 een stroomdiagram] illustreert de architectuur, vanuit het standpunt van de toepassing, van een server in het systeem en in het apparaat volgens de onderhavige uitvinding. Bij voorkeur omvatten het systeem en het apparaat volgens de onderhavige uitvinding een veelheid aan servers om te voorzien in de front-end interface, externe gebeurtenisseninterface, back-end interface, en de veelheid aan knopen. Eén of meerdere interfaces kunnen op verschillende servers lopen dan één of meerdere andere interfaces en/of één of meerdere knopen. Eén of meerdere knopen kunnen op een verschillende interface lopen dan één of meerdere andere knopen. De veelheid aan servers kan eveneens back-up servers omvatten die back-up interfaces en knopen uitvoeren. In sommige implementaties omvat het systeem ten minste twee parallelle servers waarvan er één bedoeld is voor de back-up van de andere, elke server heeft daarbij zijn eigen front-end interface, gebeurtenisseninterface, back-end interface, veelheid aan knopen en verzoekverwerker, zoals eveneens is terug te vinden in figuur 6 [6],
Figuur 2 is een stroomdiagram van de werking van de front-end interface of verzoekverwerker van het systeem en van het apparaat volgens de onderhavige uitvinding. De verzoekverwerker communiceert met front-end toepassing om externe verzoeken te ontvangen van gebruikers, teneinde het gebruikers mogelijk te maken om toegang te krijgen tot diensten die via het systeem en via het apparaat worden aangeboden.
Figuur 3 is een stroomdiagram van de werking van de gebeurtenisseninterface of optionele exteme verzoekverwerker van het systeem en van het apparaat volgens de onderhavige uitvinding.
Figuur 4 is een stroomdiagram van de werking van de back-end interface of trajectgebeurtenissenprocessor van het systeem en van het apparaat volgens de onderhavige uitvinding.
BE2016/5676
Figuur 5 is een stroomdiagram van de werking van de back-end interface of trajectgebeurtenissenprocessor van het Systemen van het apparaat volgens de onderhavige uitvinding.
Figuur 6 is een blokdiagram van de werking van diverse Systemen die verbonden zijn door middel van de netwerkconfiguratie en gegevenscaches.
Figuur 7 is een blokdiagram van diverse servers die op één of meerdere Systemen lopen, waarbij de hardware is te zien die nodig is om het apparaat te laten werken, alsook de systeemsoftware.
De stroomdiagrammen en blokdiagrammen die zijn terug te vinden in de figuren illustreren de architectuur, de functionaliteit, en de werking van mogelijke implementaties van Systemen, werkwijzen, en computerprogrammaproducten in overeenstemming met diverse uitvoeringsvormen van de onderhavige uitvinding. In deze context kan elk blok in de stroomdiagrammen of in de blokdiagrammen een module, segment, of deel van een code vertegenwoordiging met één of meerdere uitvoerbare instructies voor het implementeren van de gespecificeerde logische fimctie(s). Men dient eveneens op te merken dat in sommige alternatieve implementaties de in het blok vermelde functies kunnen voorkomen in een volgorde die niet voldoet aan deze uit de figuren. Zo kunnen twee blokken die achtereenvolgend weergegeven zijn, in de praktijk echter in hoofdzaak tegelijkertijd uitgevoerd worden, of de blokken kunnen in sommige gevallen in omgekeerde volgorde uitgevoerd worden, afhankelijk van de fimctionaliteit in kwestie. Men dient eveneens op te merken dat elk blok van de blokdiagrammen en/of stroomdiagrammen, en combinaties van blokken in de blokdiagrammen en/of stroomdiagrammen geïmplementeerd kunnen zijn door spéciale Systemen op basis van hardware die de gespecificeerde fimcties uitvoeren, dan wel door combinaties van specifieke hardware en van computerinstructies.
De hier gebruikte terminologie is enkel bedoeld voor het beschrijven van een welbepaalde uitvoeringsvorm en wordt niet geacht de uitvoeringsvormen van de uitvinding op welke
BE2016/5676 wijze dan ook te beperken. Zoals die hier gebruikt worden, worden de enkelvoudsvormen “de”, “het”, en “een” geacht ook de meervoudsvormen te omvatten, tenzij de context duidelijk aangeeft dat dat niet geval is. Het zal bovendien voor de hand liggen dat de termen “omvat” en/of “omvattende”, wanneer ze gebruikt worden in deze beschrijving, de aanwezigheid specificeren van vermelde kenmerken, gehele getallen, stappen, bewerkingen, elementen, en/of componenten, zonder echter de aanwezigheid of toevoeging van één of meerdere andere kenmerken, gehele getallen, stappen, bewerkingen, elementen, componenten, en/of groepen of combinaties daarvan uit te siuiten.
Figuur 1 geeft een weergave van een te verkiezen uitvoeringsvorm van de onderhavige uitvinding, namelijk van de wijze waarop een trajectinstantie wordt verwerkt: de verzoekverwerker ontvangt een verzoek (101) en controleert of het verzoek een trajectinstantie-ID (102) omvat. Indien dat het geval is, dat wil zeggen indien het antwoord in stap 102 positief is, controleert de verzoekverwerker de traject-ID/cachenaam, en identificeert het in welke gegevenscache een trajectinstantie met de welbepaalde ID is opgeslagen (112). De verzoekprocessor geeft de opdracht aan het netwerk om het verzoek te routen naar de knoop die verantwoordelijk is voor de ge'identificeerde gegevenscache en waarin de primaire kopie van het traject met de ID in kwestie op dat moment aanwezig is (113). De verzoekprocessor van de knoop ontvangt het verzoek (114). De verzoekprocessor vertaalt het verzoek in een gebeurtenis, genereert een gebeurtenisobject en neemt de trajectinstantie-ID en de gegevens die geassocieerd zijn met het verzoek op in het object (115). De verzoekprocessor slaat het object op in de ge'identificeerde gegevenscache (116). De trajectgebeurtenisprocessor wordt getriggerd en start de verwerking van de gebeurtenis (117).
Indien het antwoord in stap (102) “nee” is, controleert de verzoekverwerker de configuratiegegevenscache op een type traject dat overeenstemt met het verzoek, en identificeert hij op basis van de confîguratiegegevens de lijst met knopen die in Staat zijn om dit type traject te verwerken (103). De verzoekverwerker vraagt aan het netwerk om het verzoek te versturen naar de verzoekprocessor van één van de knopen uit de lijst, en het
BE2016/5676 netwerk selecteert bij voorkeur zelf welke van de knopen (104). De verzoekprocessor van de geselecteerde knoop ontvangt het verzoek (105), en de verzoekprocessor van de knoop genereert een unieke trajectinstantie-ID (106). De verzoekprocessor vertaalt vervolgens het ontvangen verzoek in een initiële gebeurtenis, genereert een initiële-gebeurtenissenobject, en neemt de unieke trajectinstantie-ID en de gegevens voor het verzoek op in het initiëlegebeurtenissenobj ect ( 107).
De verzoekprocessor identificeert vanuit zijn interne configuratie de naam van de cache die gebruikt moet worden voor dit type traject. Hij slaat het initiële-gebeurtenissenobject op in de geïdentificeerde gegevenscache, dat wil zeggen dat het netwerk bij voorkeur beslist welke knoop de primaire kopie van de gebeurtenis zal bewaren en welke knoop de back-upversie zal bewaren (108). De trajectgebeurtenisprocessor van de knoop waarin de primaire kopie van de gebeurtenis aanwezig is, wordt getriggerd en start de verwerking van de gebeurtenis (109). Vervolgens stuurt de trajectgebeurtenisprocessor een antwoord naar de verzoekverwerker met het trajectinstantie-ID en de naam van de cache (110), en de verzoekverwerker slaat de trajectinstantie-ID en de naam van de cache op (111).
Figuur 2 geeft een weergave van een te verkiezen uitvoeringsvorm van de werkwijze die is terug te vinden in figuur 1, namelijk deze waarbij verschillende versies van een traject gebruikt kunnen worden. De verzoekverwerker ontvangt een verzoek (201), en bevestigt of het verzoek een trajectinstantie-ID omvat (202). Indien dat niet het geval is, doorzoekt de verzoekverwerker de configuratiegegevenscache op een type traject dat overeenstemt met het verzoek, en identificeert hij op basis van de configuratiegegevens de lijst met knopen die in Staat zijn om dit type traject te verwerken (203).
Vervolgens bevestigt hij of meer dan één versie van het traject besehikbaar is (204). Indien dat het geval is, maakt de verzoekverwerker gebruik van versielogica om te bepalen op welke versie van een traject het verzoek betrekking heeft (205). De verzoekverwerker vraagt vervolgens aan het netwerk om het verzoek te versturen naar de verzoekprocessor van één van de knopen uit de lijst voor de vastgestelde versie, zoals aangeduid door de lijst (206). De
BE2016/5676 verzoekverwerker vraagt vervolgens aan het netwerk om het verzoek te versturen naar de verzoekprocessor van één van de knopen uit de lijst (207). De verzoekprocessor van de geselecteerde knoop ontvangt het verzoek (208), en de verzoekprocessor van de primaire knoop genereert een unieke trajectinstantie-ID (209). De verzoekprocessor vertaalt het ontvangen verzoek in een initiële gebeurtenis, genereert een initié le-gebeurtenissenobject, en neemt de unieke trajectinstantie-ID en de gegevens voor het verzoek op in het initiële gebeurtenissenobject (210). De verzoekprocessor identifîceert vanuit zijn interne confîguratie de naam van de voor dit type traject te gebruiken cache. Hij slaat het initiële gebeurtenissenobject op in de geïdentifîceerde gegevenscache (211). De trajectgebeurtenisprocessor van de knoop waarin de primaire kopie van de gebeurtenis is opgeslagen, wordt getriggerd en start de verwerking van de gebeurtenis (212). De trajectgebeurtenisprocessor stuurt een antwoord naar de verzoekverwerker met de trajectinstantie-ID en de naam van de cache (213). De verzoekverwerker slaat de trajectinstantie-ID en de naam van de cache (214) op.
Indien in stap 202 het antwoord “ja” is, controleert de verzoekverwerker de trajectID/cachenaam, en identifîceert hij in welke gegevenscache een trajectinstantie met de welbepaalde ID is opgeslagen (215). De verzoekprocessor geeft het netwerk de opdracht om het verzoek te routen naar de knoop die verantwoordelijk is voor de geïdentifîceerde gegevenscache, en waarin de primaire kopie van het traject met de ID in kwestie op dat moment aanwezig is (216). De verzoekprocessor van de knoop ontvangt het verzoek (217). De verzoekprocessor vertaalt het verzoek in een gebeurtenis, genereert een gebeurtenissenobject, en neemt de trajectinstantie-ID en de gegevens die geassocieerd zijn met het verzoek op in het object (218). De verzoekprocessor slaat het object op in de geïdentifîceerde gegevenscache (219). De trajectgebeurtenisprocessor wordt getriggerd en start de verwerking van de gebeurtenis (220).
Figuur 3 geeft een weergave van een stroomdiagram van een te verkiezen uitvoeringsvorm van een werkwijze van een exteme gebeurtenisverwerker: de exteme gebeurtenisverwerker ontvangt een exteme gebeurtenis (301). De exteme gebeurtenisverwerker stuurt een verzoek
BE2016/5676 naar het netwerk om de traject-IDs te vinden van alle trajectinstanties die betrokken zijn bij de externe gebeurtenis (302). De externe gebeurtenisverwerker ontvangt vanuit het netwerk een lijst met alle traject-IDs van de trajectinstanties die betrokken zijn bij de externe gebeurtenis (303). De externe gebeurtenisverwerker controleert de configuratiegegevenscache en bepaalt in welke gegevenscache elke trajectinstantie met de geassocieerde ID is opgeslagen (304). Verschillende gegevenscaches kunnen verschillende trajectinstanties van de lijst omvatten.
Voor elke betrokken trajectinstantie geeft de externe gebeurtenissenprocessor het netwerk de opdracht om de externe gebeurtenissen te routen naar de knoop die verantwoordelijk is voor de geïdentificeerde gegevenscache, en waarin de primaire kopie van het traject met de ID in kwestie op dat moment is opgeslagen (305).
De externe gebeurtenissenprocessor van de knoop die verantwoordelijk is voor een geïdentificeerde gegevenscache en waarin de primaire kopie van een trajectinstantie in kwestie aanwezig is, ontvangt de externe gebeurtenis (306). De externe gebeurtenissenprocessor vertaalt de externe gebeurtenis in een interne gebeurtenis, genereert een gebeurtenissenobject, en neemt de trajectinstantie-ID en de gegevens die geassocieerd zijn met de externe gebeurtenis op in het object (307). De externe gebeurtenissenprocessor slaat het object op in de geïdentificeerde gegevenscache (308). De trajectgebeurtenissenprocessor wordt getriggerd en start de verwerking van de gebeurtenis (309). De bewerkingen 306 tot 309 worden herhaald of parallel uitgevoerd op één of meerdere knopen, en dit voor elke betrokken trajectinstantie indien er sprake is van meer dan een enkele betrokken trajectinstantie.
Figuur 4 geeft een weergave van een te verkiezen uitvoeringsvorm van het apparaat en van het systeem (401), met inbegrip van een externe gebeurtenis (402) verwerker (407). Indien een gebruiksterminal (403) voor het versturen van verzoeken en voor het ontvangen van responsen door middel van de veiligheidslaag (404) is verbonden met de front-end interface (406). De front-end interface omvat één of meerdere verzoekverwerkers (405) die het
BE2016/5676 verzoek controleren. De verzoekverwerker heeft eveneens toegang tot de traject-ID en gegevenscache en tot het netwerk, om het verzoek te routen naar een knoop (413) met geschikte trajectverwerkende logica. Een gelijkaardige line-up bestaat voor exteme gebeurtenissen, waarbij de exteme gebeurtenissenverwerker op effectieve wijze kan beschouwd worden als een verschillende soort van knoop. De knoop zit vervat in een container, en omvat een verzoekprocessor (415), een trajectgebeurtenisprocessor (418), en logica om een welbepaald traject te verwerken. Knopen van hetzelfde type delen de trajectgebeurtenis- en gegevenscache die enkel toegankelijk is voor knopen van dit type (416); terwijl alle knopen de dynamische configuratiecache (411) gemeenschappelijk hebben. Zodra een gebeurtenis verwerkt is, onderhandelt en communiceert de trajectgebeurtenisprocessor met de communicatiegebeurtenisgegevenscache en met het backend systeem (425) door middel van een communicatieknoop (422). Het systeem verbindt aldus een back-end, voorziet in een front-end voor gebmikers, en is in hoge mate inschaalbaar omdat bijkomende knopen kunnen toegevoegd worden, waarbij het systeem wordt gebmikt door gebruik te maken van de dynamische configuratiecache in een netwerk.
In figuur 5 is een weergave temg te vinden van een werkwijze in het systeem volgens de uitvinding, waarbij verschillende trajecten getriggerd worden door gebeurtenissen, op hun beurt getriggerd door verschillende knopen. Een verzoekprocessor (501) creëert een A-E-l gebeurtenis, dat wil zeggen een gebeurtenis 1 van trajecttype A en plaatst het geheel in de trajectgegevenscache (518) voor trajecttype A. Vervolgens wordt de trajectgebeurtenisprocessor (515) getriggerd op de knoop (524) waarin de primaire kopie van de trajectinstantie is opgeslagen.
Vervolgens voert de trajectprocessor de logica uit voor A-E-l. Als onderdeel van deze logica wordt er een nieuwe gebeurtenis A-E-2 (504) gecreëerd die in de cache (518) wordt geplaatst. De verwerking voor A-E-l is nu beëindigd. De trajectgebeurtenisprocessor wordt vervolgens getriggerd op de knoop waarin de primaire kopie van de trajectinstantie is opgeslagen. De trajectprocessor voert vervolgens de logica uit voor A-E-2. Als onderdeel van deze logica wordt er een nieuwe gebeurtenis B-E-l gecreëerd, waarbij B een ander type traject
BE2016/5676 vertegenwoordigt, en wordt deze in de cache geplaatst. Dit is gelijkaardig aan het door de verzoekprocessor creëren van een gebeurtenis voor een traject, met uitzondering dat het nu de trajectgebeurtenisprocessor van een ander traject is. De verwerking van A-E-2 is nu beëindigd. De trajectgebeurtenisprocessor wordt getriggerd op de knoop waarin de primaire kopie van de trajectinstantie is opgeslagen. De trajectprocessor voert de logica uit voor B-E-l. Als onderdeel van deze logica moet de mogelijkheid bestaan tot een communicatie met het back-end systeem. Op deze wijze wordt er nieuwe gebeurtenis C-E-l gecreëerd (C is technisch slechts een ander type traject, maar, omdat er een communicatie bestaat met de boodschapomgeving van de bank wordt emaar verwezen als naar een communicatietraject) en wordt deze in de cache geplaatst. De verwerking voor B-E-l is nu beëindigd.
De communicatiegebeurtenisprocessor 508 wordt vervolgens getriggerd op de knoop waarin de primaire kopie van de communicatie-instantie is opgeslagen. De communicatieprocessor 509 voert de logica uit voor C-E-l. Dit impliceert het versturen van een boodschap naar de back-end en het wachten op het antwoord (509, stap 1). De communicatieprocessor creëert een boodschap en verstuurt deze via het communicatienetwerk naar de specifieke back-end. De technische routing wordt uitgevoerd door het communicatienetwerk (ESB/EAI, stap 509.2). De back-end ontvangt de boodschap en verwerkt deze. Nadat dit is afgerond, wordt er een antwoordboodschap verstuurd (509.3). De antwoordboodschap wordt ontvangen door de communicatiegebeurtenisprocessor. De communicatiegebeurtenisprocessor vertaalt deze antwoordboodschap in een gebeurtenis C-E-2 en plaats deze in de cache. De communicatiegebeurtenisprocessor is nu klaar met de verwerking van gebeurtenis C-E-l. De communicatiegebeurtenisprocessor 510 wordt getriggerd op de knoop waarin de primaire kopie van de communicatie-instantie is opgeslagen. De communicatieprocessor 511 voert de logica uit voor C-E-2. Dit bestaat uit het creëren van een gebeurtenis B-E-2 voor de trajectinstantie die C-E-l creëerde, en uit het in de cache plaatsen van het trajecttype. De trajectgebeurtenisprocessor 512 wordt getriggerd op de knoop waarin de primaire kopie van de trajectinstantie is opgeslagen. De trajectgebeurtenissenprocessor 513 voert vervolgens de logica uit voor B-E-2. Dit bestaat uit het creëren van een gebeurtenis A-E-3 voor de trajectinstantie die B-E-l creëerde, en uit het in de cache plaatsen van het trajecttype. De
BE2016/5676 trajectgebeurtenisprocessor 514 wordt getriggerd op de knoop waarin de primaire kopie van de trajectinstantie is opgeslagen. De trajectgebeurtenisprocessor 515 voert de logica uit voor A-E-3. Dit bestaat uit het creëren van een feedback en uit het terugsturen daarvan naar de verzoekverwerker.
Figuur 6 geeft een weergave van het te verkiezen gebruik van het systeem dat meerdere apparaten (in dit geval twee, 603 en 604) en servers omvat, bij voorkeur aanwezig op een enkele server of op verschillende servers die op onderlinge afstanden gelegen zijn, waarbij de bewerking gespreid kan zijn om bijvoorbeeld de veiligheid of de inschaalbaarheid te verzekeren. De confïguratie- en gegevenscaches zijn bij voorkeur gedeeld, alhoewel de containers en de knopen zieh op afstand kunnen bevinden in verschillende servers; terwijl het netwerk bij voorkeur de front-end verzoeken (601) van de gebruiker kan verdelen naar de meest geschikte verzoekverwerker (603 of 604).
Figuur 7 geeft als laatste een weergave van het te verkiezen gebruik van het systeem met een veelheid aan servers (in dit geval 701) die bij voorkeur gelokaliseerd kunnen zijn op verschillende afstanden, waarbij de werking gespreid kan zijn om bijvoorbeeld de veiligheid of de inschaalbaarheid te verzekeren. De confïguratie- en gegevenscaches zijn bij voorkeur gedeeld, alhoewel de containers in de knopen gelokaliseerd kunnen zijn op een afstand in verschillende servers; terwijl het netwerk bij voorkeur de front-end verzoeken (704) van de gebruiker kan verdelen naar de meest geschikte verzoekverwerker. Het systeem geeft een weergave van de gedeeide configuratiecache (702) en gegevenscache (703).
De overeenkomstige structuren, materialen, acties, en equivalenten van aile middeien of stappen, alsook fünctionele elementen in de hiernavolgende conclusies worden geacht welke structuur, materiaal, actie dan ook te omvatten voor het uitvoeren van de fünctie in combinatie met andere geclaimde elementen zoals die hier vermeld worden.
De beschrijving van de onderhavige uitvinding werd enkel gegeven bij wijze van illustratie en beschrijving, en is niet bedoeld om begrenzend of beperkend te werken voor de
BE2016/5676 uitvoeringsvormen van de uitvinding in de wijze waarop deze beschreven werden. Diverse modificaties en variaties zullen voor de hand liggen voor de vakman in het vakgebied, en dit zonder buiten de reikwijdte te treden van uitvoeringsvormen volgens de uitvinding. De uitvoeringsvormen werden op een zodanige wijze gekozen en beschreven dat de principes van uitvoeringsvormen van de uitvinding en de praktische toepassing ervan zo goed mogelijk verklaard werden en om vaklui in het vakgebied diverse uitvoeringsvormen van de uitvinding beter te doen begrijpen, en dit met inbegrip van diverse modificaties zoals die nuttig zouden kunnen zijn voor de welbepaalde, in beschouwing genomen toepassing.
Alhoewel specifieke uitvoeringsvormen hier geïllustreerd en beschreven werden, zal het voor de vakman in het vakgebied voor de hand liggen dat welk geheel of welke opstelling dan ook die hetzelfde doel dient of realiseert, de specifieke en beschreven en weergegeven uitvoeringsvormen kan vervangen, alsook dat uitvoeringsvormen van de uitvinding andere toepassingen in andere omgevingen kunnen hebben.
BE2016/5676
FIGUREN
Figuur1:
101 de verzoekverwerker ontvangt een verzoek
102 omvat het verzoek een traj ectinstantie-ID?
103 de verzoekverwerker controleert de configuratiegegevenscache op de aanwezigheid van een trajecttype dat overeenstemt met het verzoek, en identificeert op basis van de configuratiegegevens de lijst met knopen die in Staat zijn om dit trajecttype te verwerken
104 de verzoekverwerker vraagt het netwerk om het verzoek te versturen naar de verzoekprocessor van één van de knopen uit de lijst (het netwerk selecteert zelf naar welke van de knopen)
105 de verzoekprocessor van de geselecteerde knoop ontvangt het verzoek
106 de verzoekprocessor van de knoop genereert een unieke trajectinstantie-ID
107 de verzoekprocessor vertaalt het ontvangen verzoek in een initiële gebeurtenis, genereert een initiële-gebeurtenissenobject, en neemt de unieke trajectinstantie-ID en de gegevens voor het verzoek op in het initiële gebeurtenissenobject
108 de verzoekprocessor identificeert op basis van zijn interne configuratie de naam van de cache die gebruikt moet worden voor dit trajecttype, en slaat het initiëlegebeurtenissenobject in de geïdentificeerde gegevenscache op (het netwerk beslist welke knoop de primaire kopie van de gebeurtenis zal omvatten, en welke knoop een back-up kopie zal omvatten)
109 de trajectgebeurtenisprocessor van de knoop waarin de primaire kopie van de gebeurtenis is opgeslagen, wordt getriggerd en start de verwerking van de gebeurtenis
110 de trajectgebeurtenisprocessor beantwoordt de verzoekverwerker met de trajectinstantie-ID en met de naam van de cache
111 de verzoekverwerker slaat de trajectinstantie-ID en de naam van de cache op.
112 de verzoekverwerker controleert de traject-ID/cachenaam en identificeert in welke gegevenscache een trajectinstantie met de ID in kwestie is opgeslagen
BE2016/5676
113 de verzoekprocessor geeft het netwerk de opdracht om het verzoek te routen naar de knoop die verantwoordelijk is voor de geïdentifîceerde gegevenscache en waarin de primaire kopie van het traject met de ID in kwestie op dat moment aanwezig is
114 de verzoekprocessor van de knoop ontvangt het verzoek
115 de verzoekprocessor vertaalt het verzoek in een gebeurtenis, genereert een gebeurtenissenobject, en neemt de trajectinstantie-ID en de gegevens die geassocieerd zijn met het verzoek op in het object
116 de verzoekprocessor slaat het object in de geïdentifîceerde gegevenscache op
117 de trajectgebeurtenissenprocessor wordt getriggerd en start de verwerking van de gebeurtenis
Figuur 2:
201 de verzoekverwerker ontvangt een verzoek
202 omvat het verzoek een trajectinstantie-ID?
203 de verzoekverwerker controleert de confîguratiegegevenscache op de aanwezigheid van een trajecttype dat overeenstemt met het verzoek, en identifîceert op basis van de configuratiegegevens de lijst met knopen die in Staat zijn om dit trajecttype te verwerken
204 meer dan één versie van het traject?
205 de verzoekverwerker gebruikt versielogica om te bepalen op welke versie van een traject het verzoek betrekking heeft
206 de verzoekverwerker vraagt het netwerk om het verzoek te versturen naar de verzoekprocessor van één van de knopen uit de lijst voor de geïdentifîceerde versie, zoals aangeduid door de lijst
207 de verzoekverwerker vraagt het netwerk om het verzoek te versturen naar de verzoekprocessor van één van de knopen uit de lijst
208 de verzoekprocessor van de geselecteerde knoop ontvangt het verzoek
209 de verzoekprocessor van de knoop genereert een unieke trajectinstantie-ID
BE2016/5676
210 de verzoekprocessor vertaalt het ontvangen verzoek in een initiële gebeurtenis, genereert een initiële-gebeurtenissenobject, en neemt de unieke trajectinstantie-ID en de gegevens voor het verzoek op in het initiële-gebeurtenissenobject
211 de verzoekprocessor identificeert op basis van zijn interne configuratie de naam van de cache die gebruikt moet worden voor dit trajecttype, en slaat het initiëlegebeurtenissenobject in de geïdentifîceerde gegevenscache op
212 de trajectgebeurtenisprocessor van de knoop waarin de primaire kopie van de gebeurtenis is opgeslagen, wordt getriggerd en start de verwerking van de gebeurtenis
213 de traj ectgebeurtenisprocessor antwoordt de verzoekverwerker met de trajectinstantie-ID en met de naam van de cache
214 de verzoekverwerker slaat de trajectinstantie-ID en de naam van de cache op
215 de verzoekverwerker controleert de traject-ID/cachenaam en identificeert in welke gegevenscache een trajectinstantie met de ID in kwestie is opgeslagen
216 de verzoekprocessor geeft het netwerk de opdracht om het verzoek te routen naar de knoop die verantwoordelijk is voor de geïdentificeerde gegevenscache en waarin de primaire kopie van het traject met de ID in kwestie op dat moment aanwezig is
217 de verzoekprocessor van de knoop ontvangt het verzoek
218 de verzoekprocessor vertaalt het verzoek in een gebeurtenis, genereert een gebeurtenissenobject, en neemt de trajectinstantie-ID en de gegevens die geassocieerd zijn met het verzoek op in het object
219 de verzoekprocessor slaat het object in de geïdentificeerde gegevenscache op
220 de trajectgebeurtenissenprocessor wordt getriggerd en start de verwerking van de gebeurtenis
Figuur 3:
301 de externe gebeurtenisverwerker ontvangt een externe gebeurtenis
302 de externe gebeurtenisverwerker verstuurt een verzoek naar het netwerk om de traject-ID’s op te zoeken van aile trajectinstanties die betrokken zijn bij de externe gebeurtenis
BE2016/5676
303 de externe gebeurtenisverwerker ontvangt vanuit het netwerk een lijst met aile traject-IDs van de trajectinstanties die betrokken zijn bij de externe gebeurtenis
304 de externe gebeurtenisverwerker controleert de configuratiegegevenscache en bepaalt in welke gegevenscache elke trajectinstantie met de geassocieerde ID is opgeslagen
305 voor elke betrokken trajectinstantie geeft de externe gebeurtenissenprocessor het netwerk de opdracht om de externe gebeurtenis te routen naar de knoop die verantwoordelijk is voor de geïdentificeerde gegevenscache en waarin de primaire kopie van het traject met de ID in kwestie op dat moment is opgeslagen
306 de externe gebeurtenisprocessor van de knoop ontvangt de externe gebeurtenis
307 de externe gebeurtenissenprocessor vertaalt de externe gebeurtenis in een interne gebeurtenis, genereert een gebeurtenissenobject, en neemt de trajectinstantie-ID en de gegevens die geassocieerd zijn met de externe gebeurtenis op in het object
308 de externe gebeurtenissenprocessor slaat het object op in de geïdentificeerde gegevenscache
309 de trajectgebeurtenisprocessor wordt getriggerd en start de verwerking van de gebeurtenis
Figuur 4:
401
402
404
405
407
409
412,413
414
415
416
Uitvoeringsvorm van het apparaat en van het systeem
Externe gebeurtenis
Veiligheidslaag
V erzoekverwerker
Externe gebeurtenissenverwerker
Traject ID cache naam cache
Trajectknoop
Externe gebeurtenissenprocessor
Verzoekprocessor
Traject type A gebeurtenis en gegevenscache
BE2016/5676
417
418,419
420
421
422
423
424
425
Traject type B gebeurtenis en gegevenscache
Trajectgebeurtenisprocessor
Communicatiegebeurtenis en gegevenscache
V erbindingsknoop
Communicatiegebeurtenisprocessor
Configuratiegegevenscache
ESB/EAI
Back-end systeem
Legenda
A Logica om gebeurtenissen voor traject type A te verwerken
B Logica om gebeurtenissen voor traject type B te verwerken
C Logica om communicatiegebeurtenissen te mappen op/uit back-end boodschappen
R Logica om te bepalen welke versie van een traject gestart moet worden
E Logica om externe gebeurtenissen te mappen op/uit trajectgebeurtenissen voor trajecten van het type A
In-memory gegevens- en verwerkend netwerk
Figuur 5:
I Veiligheidslaag
II Verzoekverwerker
III Traject ID cache naam cache
IV Verzoekprocessor
V Trajectgebeurtenisprocessor
VI Trajectknoop voor trajecten van het type...
VII Communicatieknoop
VIII Communicatiegebeurtenisprocessor
IX Back-end systeem
BE2016/5676
Figuur 6:
602 API Gateway/ Veiligheidslaag
5 603 V erzoekverwerker
I Verzoekprocessor
II Trajectgebeurtenisprocessor
III Trajectknoop
IV Traject type A cache
10 V Traject type B cache
VI Communicatiegebeurtenisprocessor
VII Communicatie cache
VIII Verbindingsknoop
IX Confîguratie cache 15
Figuur 7:
700 Gebruikers front-end
702 Configuratiecache
20 703 Gegevenscache
BE2016/5676

Claims (33)

  1. CONCLUSIES
    1. Gegevensverwerkend apparaat voor het verwerken van diensten van een instelling die grote hoeveelheden gegevens bijhoudt en verwerkt, waarbij het apparaat omvat:
    a. een front-end interface om te communiceren met front-end toepassingen, om externe verzoeken van gebruikers te ontvangen om het de gebruikers mogelijk te maken om toegang te krijgen tot diensten die aangeboden worden via het apparaat, waarbij de diensten voorzien worden als één of meerdere gebeurtenisaangedreven trajecten die elk overeenstemmen met één of meerdere gebeurtenissen waarvan er ten minste sommige vertaald worden uit één of meerdere van de verzoeken die ontvangen worden via de front-end interface, en waarbij de gebeurtenissen één of meerdere acties triggeren;
    b. één of meerdere knopen om te voorzien in logica en in-memory gegevens voor het verwerken van de meerdere trajecten, waarbij elke knoop van de één of meerdere knopen logica opslaat en verantwoordelijk is voor gegevens die geassocieerd zijn met ten minste één traject uit de meerdere trajecten, waarbij de één of meerdere knopen elk voorzien zijn in een afzonderlijke container; en
    c. een back-end interface om te communiceren met een back-end systeem dat logica en gegevens omvat; waarbij de front-end interface een verzoekverwerker omvat die geconfigureerd en werkzaam is om een verzoek te routen dat geassocieerd is met een gebeurtenis van een traject, en dit naar een knoop waarin logica en gegevens zijn opgeslagen om de gebeurtenis in kwestie te verwerken.
  2. 2. Gegevensverwerkend apparaat volgens conclusie 1, bovendien een gebeurtenisseninterface omvattende om externe gebeurtenissen op te nemen.
  3. 3. Gegevensverwerkend apparaat volgens conclusie 1 of conclusie 2, bovendien ten minste één configuratiecache omvattende die gedeeld wordt tussen en toegankelijk is door alle knopen.
    BE2016/5676
  4. 4. Gegevensverwerkend apparaat volgens één der voorgaande conclusies, bovendien ten minste één trajecttype- en gebeurtenissengegevenscache omvattende die gedeeld wordt door en toegankelijk is door ten minste één knoop, en die bij voorkeur gedeeld wordt door een veelheid aan knopen met verwerkende logica voor hetzelfde trajecttype.
  5. 5. Gegevensverwerkend apparaat volgens één der voorgaande conclusies, waarbij de één of meerdere knopen geconfigureerd zijn en werkzaam zijn om een zelfinspectie uit te voeren bij het opstarten, teneinde te definiëren welke logica er aanwezig is om een welbepaald traject uit te voeren, en een unieke knoopbenaming te bepalen die ten minste de entiteit, het functionele domein, en het trajecttype, logicatyperekening (en optioneel de versie van het traject) omvat, en om de unieke knoopbenaming te publiceren in de configuratiecache.
  6. 6. Apparaat volgens één der voorgaande conclusies, waarbij het apparaat bovendien bijkomende instanties van een container omvat.
  7. 7. Apparaat volgens één der voorgaande conclusies, waarbij elke knoop geconfigureerd is om een traject-ID te genereren voor elke aangevatte trajectinstantie, en om de traject-ID mee te delen aan de front-end interface, waarbij de front-end interface geconfigureerd is om een verzoek voor een aangevatte trajectinstantie te routen naar de knoop op basis van de traject-ID.
  8. 8. Apparaat volgens één der voorgaande conclusies, waarbij elke knoop ten minste één exteme gebeurtenissenprocessor omvat om een exteme gebeurtenis te vertaten in een interne gebeurtenis, teneinde een gebeurtenissenobject te genereren en de trajectinstantie ID en gegevens die geassocieerd zijn met de exteme gebeurtenis op te nemen in het object.
  9. 9. Apparaat volgens één der voorgaande conclusies, waarbij elke knoop ten minste één trajectgebeurtenissenprocessor omvat om een traject te starten en/of te verwerken.
    BE2016/5676
  10. 10. Apparaat volgens één der voorgaande conclusies, waarbij het back-end systeem een bank- of verzekeringssysteem, een boekhoudsysteem, een car-sharing-systeem, en/of een systeem is van een gelijkaardige instelling of bedrijf met een back-end met traditioneel grote hoeveelheden gegevens.
  11. 11. Apparaat volgens één der voorgaande conclusies, waarbij de meerdere trajecten ten minste één van meerdere acties omvat om het saldo van een rekening van een gebruiker te controleren, meerdere acties voor het overschrijven van geld uit of naar een bankrekening, meerdere acties voor het uitvoeren van een betaling, meerdere acties voor het uitvoeren van een financiële instrumenttransactie.
  12. 12. Gegevensverwerkend systeem voor het op dynamische wijze verwerken van grote hoeveelheden transacties tussen gebruikers en een instelling die grote hoeveelheden gegevens bijhoudt en verwerkt, meer bepaald een bank, waarbij het systeem omvat:
    i. een front-end interface om te communiceren met front-end toepassingen, om exteme verzoeken van gebruikers te ontvangen, teneinde het de gebruikers mogelijk te maken om toegang te krijgen tot diensten die worden aangeboden via het systeem, ii. een gebeurtenisseninterface om exteme gebeurtenissen op te nemen, waarbij de diensten voorzien worden als een veelheid aan door een gebeurtenis aangedreven trajecten die getriggerd zijn door één of meerdere gebeurtenissen die door de gebeurtenisseninterface worden opgenomen of die vertaald zijn uit één of meerdere verzoeken die ontvangen werden via de front-end interface;
    iii. een back-end interface om te communiceren met een back-end systeem dat logica en gegevens omvat;
    iv. een veelheid aan knopen om te voorzien in logica en in-memory gegevens om de veelheid aan trajecten te verwerken, waarbij elke knoop van de één of meerdere knopen bedoeld is om logica en gegevens op te slaan die geassocieerd zijn met een traject uit de veelheid aan trajecten, waarbij één of meerdere knopen uit de veelheid aan knopen elk is voorzien in een afzonderlijke container; en
    BE2016/5676
    v. een geïntegreerd geheugengegevensnetwerk dat ten minste één configuratiecache omvat dat gedeeid wordt tussen en dat toegankeiijk is door ten minste één knoop, en die bij voorkeur gedeeid wordt door een veelheid aan knopen.
  13. 13. Systeem voigens conclusie 12, bovendien ten minste één traject- en gebeurtenissengegevenscache omvattende die gedeeid wordt tussen en toegankeiijk is door ten minste één knoop, en die bijvoorbeeld gedeeid wordt door een veelheid aan knopen die dezelfde trajecttype-verwerkende logica omvatten.
  14. 14. Systeem voigens conclusie 12 of conclusie 13, waarbij de front-end interface een verzoekverwerker omvat om een verzoek, geassocieerd met een gebeurtenis van een traject, te routen naar een knoop waarin logica en gegevens zijn opgeslagen om de gebeurtenis in kwestie te verwerken.
  15. 15. Systeem voigens één der conciusies 12 tot en met 14, bovendien een kopie van de container omvattende.
  16. 16. Systeem voigens één der conciusies 12 tot en met 15, waarbij de configuratiecache toegankeiijk is voor elke knoop, en de front-end interface, waarbij elke knoop geconfigureerd is om gegevens op te slaan betreffende de één of meerdere trajecten waarvoor hij geconfigureerd is om deze te verwerken in overeenstemming met gegevens in de configuratiecache, en waarbij de front-end interface geconfigureerd is om het verzoek naar de knopen te routen op basis van gegevens in de configuratiecache.
  17. 17. Systeem voigens één der conciusies 12 tot en met 16, waarbij elke knoop geconfigureerd is om een traject-ID te genereren voor elke aangevatte trajectinstantie, en om de traject-ID mee te deien aan de front-end interface, waarbij de front-end interface geconfigureerd is om een verzoek voor een aangevatte trajectinstantie te routen naar de knoop, en dit op basis van de traject-ID.
    BE2016/5676
  18. 18. Systeem volgens één der conclusies 12 tot en met 17, waarbij één of meerdere acties van ten minste éém van de trajecten een verzoek voor informatie omvat die is opgeslagen in een back-end systeem, waarbij de back-end interface geconfigureerd is om informatie vooraf te laden uit het back-end systeem en in een gegevenscache op te slaan waartoe een veelheid van knopen toegang hebben wanneer er zieh een gebeurtenis voordoet.
  19. 19. Systeem volgens conclusie 18, waarbij de gebeurtenis overeenstemt met een gebruiker die een trajectinstantie initieert.
  20. 20. Systeem volgens één der conclusies 12 tot en met 19, waarbij het back-end systeem een bank- of verzekeringssysteem is.
  21. 21. Systeem volgens één der conclusies 12 tot en met 20, waarbij de veelheid aan trajecten ten minste één omvat uit een veelheid aan acties voor het controleren van het saldo van een rekening van de gebruiker, een veelheid aan acties voor het overschrijven van geld naar of vanuit een bankrekening, een veelheid aan acties voor het uitvoeren van een betaling, een veelheid aan acties voor het uitvoeren van een financiële instrumenttransactie.
  22. 22. Werkwijze voor het verwerken van grote hoeveelheden transacties waartoe verzocht wordt door één of meerdere gebruikers in een apparaat volgens één der conclusies 1 tot en met 11, of het systeem volgens één der conclusies 12 tot en met 21, de stappen omvattende met:
    a. het opstarten van een container,
    b. het opstarten van een knoop in de container die zichzelf inspecteert en een unieke benaming wegschrijft die de naam van de entiteit omvat, en het fünctionele domein ervan dat overeenstemt met de logica van de knoop, beschikbaar voor het verwerken van één of meerdere trajecttypes voor opslag in de configuratiecache, teneinde een identificatie door de verzoekverwerker mogelijk te maken.
  23. 23. Werkwijze volgens conclusie 22, bovendien de stappen omvattende met
    BE2016/5676
    c. het ontvangen van een transactieverzoek door de verzoekverwerker, en
    d. het routen van het verzoek, geassocieerd met een gebeurtenissentraject, naar een knoop waarin logica en gegevens zijn opgeslagen voor het verwerken van de
    5 gebeurtenis in kwestie.
  24. 24. Werkwijze volgens conclusie 22 of conclusie 23, bovendien de stappen omvattende met:
    e. het uit de configuratiecache opvragen van de traject-ID van aile trajectinstanties
    10 die betrokken zijn bij de exteme gebeurtenis in kwestie, en dit door de exteme gebeurtenisverwerker en vanuit de configuratiecache, en het ontvangen van een lijst met aile traject-IDs van de trajectinstanties die betrokken zijn bij de exteme gebeurtenis,
    f. het controleren van de configuratiegegevenscache en het bepalen in welke
    15 gegevenscache elke trajectinstantie met de geassocieerde ID is opgeslagen; en
    g. het, voor elke betrokken trajectinstantie, routen van de exteme gebeurtenis naar de knoop die verantwoordelijk is voor de gei'dentificeerde gegevenscache en waarin een primaire kopie van het traject met de ID in kwestie op dat moment is opgeslagen.
    20
  25. 25. Werkwijze volgens één der conclusies 22 tot en met 24, bovendien omvattende:
    h. het door de exteme gebeurtenissenprocessor van de relevante knoop ontvangen van de exteme gebeurtenis;
    i. het vertalen van de exteme gebeurtenis in een interne gebeurtenis;
    j. het genereren van een gebeurtenissenobject, met inbegrip van de trajectinstantie25 ID en van gegevens die geassocieerd zijn met de exteme gebeurtenis in het object,
    k. het opslaan van het object in de gei'dentificeerde gegevenscache, en
    l. het triggeren van de trajectgebeurtenissenprocessor om de verwerking van de gebeurtenis te starten.
    BE2016/5676
  26. 26. Computerprogramma dat instructies omvat die, wanneer ze uitgevoerd worden door één of meerdere processoren, ervoor zorgen dat één of meerdere processoren de werkwijze volgens één der conclusies 22 tot en met 25 uitvoert of uitvoeren.
  27. 27. Door een machine uitvoerbare instructies die, wanneer ze uitgevoerd worden door ten minste één processor, ervoor zorgen dat de ten minste ene processor de werkwijze volgens één der conclusies 22 tot en met 25 uitvoert of uitvoeren.
  28. 28. Niet-transitoir, door een machine leesbaar medium dat door een machine uitvoerbare instructies omvat volgens één der conclusies 22 tot en met 25.
  29. 29. Door een machine leesbare opslag waarin door een machine uitvoerbare instructies opgeslagen zijn volgens één der conclusies 22 tot en met 25.
  30. 30. Gebruik van een apparaat volgens één der conclusies 1 tot en met 12, of van een systeem volgens één der conclusies 13 tot en met 21, voor het verwerken van diensten van een instelling die grote hoeveelheden gegevens bijhoudt en verwerkt.
  31. 31. Door een machine uitvoerbare instructies die, wanneer ze uitgevoerd worden door ten minste één machine, ervoor zorgen dat de ten minste ene machine voorziet in:
    een front-end interface om te communiceren met front-end toepassingen voor het ontvangen van exteme verzoeken van gebruikers, teneinde het de gebruikers mogelijk te maken om toegang te krijgen tot diensten, waarbij de diensten voorzien worden als één of meerdere door een gebeurtenis aangedreven trajecten die elk overeenstemming met één of meerdere gebeurtenissen, waarbij ten minste sommige daarvan vertaald zijn uit één of meerdere van de verzoeken die ontvangen zijn via de front-end interface, waarbij de gebeurtenissen één of meerdere acties triggeren;
    één of meerdere knopen om te voorzien in logica en in in-memory gegevens voor het verwerken van de veelheid aan trajecten, waarbij elke knoop van de één of meerdere knopen bedoeld is om logica op te slaan en om verantwoordelijk te zijn voor de opslag van gegevens die geassocieerd zijn met het ten minste ene traject van de
    BE2016/5676 veelheid aan trajecten, en waarbij ten minste één knoop van de één of meerdere knopen voorzien wordt in een afzonderlijke container; en een back-end interface om te communiceren met een back-end systeem dat logica en gegevens omvat; waarbij de front-end interface een verzoekverwerker omvat
    5 die geconfigureerd is en die werkzaam is om een verzoek te routen dat geassocieerd is met een gebeurtenis van een traject, en dit naar een knoop die logica en gegevens omvat om de gebeurtenis in kwestie te verwerken.
  32. 32. Niet-transitoir, door een machine leesbaar medium dat door een machine uitvoerbare
    10 instructies voigens conclusie 31 omvat.
  33. 33. Door een machine leesbaar opslagmedium waarin door een machine uitvoerbare instructies voigens conclusie 31 zijn opgeslagen.
    BE2016/5676
    Fsgswr 1
    11!
    BE2016/5676
    BE2016/5676
    309
    BE2016/5676
    LL
    BE2016/5676
    BE2016/5676 e-H in
    BE2016/5676
    701
    BE2016/5676
BE2016/5676A 2016-09-02 2016-09-02 Systeem en apparaat voor het verwerken van grote hoeveelheden gegevens BE1024532B1 (nl)

Priority Applications (2)

Application Number Priority Date Filing Date Title
BE2016/5676A BE1024532B1 (nl) 2016-09-02 2016-09-02 Systeem en apparaat voor het verwerken van grote hoeveelheden gegevens
PCT/EP2017/072022 WO2018042021A1 (en) 2016-09-02 2017-09-01 System and apparatus for processing large amounts of data

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
BE2016/5676A BE1024532B1 (nl) 2016-09-02 2016-09-02 Systeem en apparaat voor het verwerken van grote hoeveelheden gegevens

Publications (2)

Publication Number Publication Date
BE1024532A1 BE1024532A1 (nl) 2018-03-27
BE1024532B1 true BE1024532B1 (nl) 2018-04-03

Family

ID=57582995

Family Applications (1)

Application Number Title Priority Date Filing Date
BE2016/5676A BE1024532B1 (nl) 2016-09-02 2016-09-02 Systeem en apparaat voor het verwerken van grote hoeveelheden gegevens

Country Status (2)

Country Link
BE (1) BE1024532B1 (nl)
WO (1) WO2018042021A1 (nl)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120221886A1 (en) * 2011-02-24 2012-08-30 International Business Machines Corporation Distributed job scheduling in a multi-nodal environment
US20140136590A1 (en) * 2012-11-13 2014-05-15 Google Inc. Network-independent programming model for online processing in distributed systems

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120221886A1 (en) * 2011-02-24 2012-08-30 International Business Machines Corporation Distributed job scheduling in a multi-nodal environment
US20140136590A1 (en) * 2012-11-13 2014-05-15 Google Inc. Network-independent programming model for online processing in distributed systems

Also Published As

Publication number Publication date
BE1024532A1 (nl) 2018-03-27
WO2018042021A1 (en) 2018-03-08

Similar Documents

Publication Publication Date Title
US9466063B2 (en) Cluster processing of an aggregated dataset
Dreibelbis Enterprise master data management: an SOA approach to managing core information
CN110599276B (zh) 票据报销方法、装置和设备及计算机存储介质
US8386418B2 (en) System and method for an intelligent storage service catalog
Jain Big Data and Hadoop
CN112241506B (zh) 用户行为的回溯方法、装置、设备及系统
CN111930754A (zh) 一种区块链仓单的生成和更新方法、装置及设备
CN108897729B (zh) 一种交易模板共享方法、装置、电子设备及存储介质
CN113205402A (zh) 对账方法、装置、电子设备及计算机可读介质
CN115168460A (zh) 数据处理方法、数据交易系统、设备及存储介质
Mannhardt et al. Extending process logs with events from supplementary sources
US11979402B2 (en) Method, apparatus and computer program product for exchanging messages across a network
CN107180030B (zh) 一种网络上的关系数据生成方法及装置
BE1024532B1 (nl) Systeem en apparaat voor het verwerken van grote hoeveelheden gegevens
US11741036B2 (en) Unified smart connector
US20220391746A1 (en) Api optimizer using contextual analysis of interface data exchange
Tröger et al. Design options for supply chain visibility services: Learnings from three EPCIS implementations
Madaan et al. Big data analytics: A literature review paper
CN113487265A (zh) 一种用于物流信息订阅、查询、推送的方法、装置及设备
RU95149U1 (ru) Социальная сеть страхования, торговли и финансирования
Taori et al. Big Data Management
US10754838B1 (en) Registration framework for an analytics platform
BE1024534A1 (nl) Systeem en apparaat om te voorzien in verschillende versies van een type gegevenstraject
Kooijmans et al. Transaction Processing: Past, Present, and Future
Ahmad et al. Big Data Manipulation-A new concern to the ICT world (A massive Survey/statistics along with the necessity)

Legal Events

Date Code Title Description
FG Patent granted

Effective date: 20180403