Login
Scalable content-based publish/subscribe and application to online trading
Résumé Le système pub/sub basé sur le contenu est un candidat idéal pour concrétiser la communication d'applications à grande-échelle. Il permet de découpler les producteurs de messages (publishers) des consommateurs (subscribers), qui communiquent alors de manière indirecte. Les producteurs génèrent un flux d'informations (publications) qui sont acheminées vers les abonnés en fonction des leurs intérêts (exprimés au travers d'abonnements).

Le filtrage des messages a un coût de traitement non-négligible. La première contribution dans cette thèse est la conception et l'analyse d'une infrastructure générique, modulaire et supportant le passage à l'échelle permettant d'avoir un système pub/sub basé sur le contenu à haute performance.

De tels systèmes pub/sub doivent fournir un débit très élevé, en filtrant des milliers de publications face à des centaines de milliers d'abonnements tout en garantissant une faible latence ainsi qu'un passage à l'échelle horizontal et vertical. La composition d'applications à grande-échelle peut nécessiter des formes complexes de publications et d'abonnements, la conception d'un système pub/sub ne doit pas dépendre des caractéristiques de filtrage particulières pour mettre en oeuvre le passage à l'échelle. La seconde contribution de cette thèse est la conception et la mise en oeuvre de STREAMHUB, une approche à plusieurs niveaux innovante et pragmatique offrant une haute performance ainsi qu'un passage à l'échelle. Nous séparons l'ensemble du processus en trois opérations et tirons avantage de leur potentiel naturel de parallélisation.

Dans les scénarii du monde réel, la quantité d'abonnements ainsi que le débit de publications varie au cours du temps et par conséquent les coûts de traitement y étant liés. La troisième contribution de cette thèse est STREAMHUB, un système pub/sub élastique. La troisième contribution de cette thèse contient: (1) un mécanisme permettant la réduction/augmentation des ressources utilisées, (2) un système global et local d'application de polices d'utilisation maintenant un usage élevé du système ainsi que des latences stables et (3) une évaluation faite avec des données réelles provenant de la bourse de Francfort.

La quatrième contribution se concentre sur une application spécifique du monde de la finance, dans laquelle, une structure de donnée nommée carnet d'ordres, est utilisée pour contenir et mettre en correspondance les ordres d'achats et de ventes arrivant à une rythme soutenu. Cette dernière a des propriétés intéressantes mettant en évidence un grand potentiel de parallélisation mais est aussi relativement complexe et requiert le respect de certaines garanties (notamment en rapport à l'ordre des opérations). Nous proposons de nombreuses approches pour tirer profit de la concurrence dans une structure de donnée partagée, en augmentant le niveau de sophistication en partant de solutions basées sur des verrous jusqu'à des conceptions partiellement sans verrouillage. Comme corollaire, nous proposons un générateur de données historiques synthétiques suivant des modèles réalistes venant de l'éconophysique.
   
Mots-clés publish/subscribe, informatique en nuage, passage à l'échelle, élasticité, carnet d'ordres, programmation concurrente
   
Citation R. Barazzutti, "Scalable content-based publish/subscribe and application to online trading," Doctorat, Faculté des sciences, Institut d'informatique, Neuchâtel, Neuchâtel, 2019.
   
Type Thèse (Anglais)
Année 2019
Departement academique Faculté des sciences, Institut d'informatique
Université Neuchâtel (Neuchâtel)
Degré Doctorat
URL http://doc.rero.ch/record/326898