Towards a distributed implementation of a data extraction system for monitoring the processing of video clips
Vasbinder, Thomas
Promoteur(s) : Wolper, Pierre
Date de soutenance : 27-jui-2016/28-jui-2016 • URL permanente : http://hdl.handle.net/2268.2/1306
Détails
Titre : | Towards a distributed implementation of a data extraction system for monitoring the processing of video clips |
Auteur : | Vasbinder, Thomas |
Date de soutenance : | 27-jui-2016/28-jui-2016 |
Promoteur(s) : | Wolper, Pierre |
Membre(s) du jury : | Boigelot, Bernard
Donnet, Benoît Latour, Louis |
Langue : | Anglais |
Discipline(s) : | Ingénierie, informatique & technologie > Sciences informatiques |
Institution(s) : | Université de Liège, Liège, Belgique |
Diplôme : | Master en ingénieur civil en informatique, à finalité approfondie |
Faculté : | Mémoires de la Faculté des Sciences appliquées |
Résumé
[en] The objective of this work was to review the data handling of an application monitoring the processing of video clips and to remove any barrier preventing the concurrent execution of multiple instances of the service, while maintaining or improving the overall performance.
The main obstacle to concurrent execution was that the caching infrastructure didn’t provide synchronisation between the cache and the database. We showed that the database could perform queries in memory like the in-memory cache at the server. The database executed most of the queries in a more efficient and predictable way than the cache, thanks to its query optimiser.
Based on those results, we decided to remove the cache and perform queries directly on the database. This removal simplified and shortened the code of the application. However, there was no mechanism of translation of the query contained in the URI to the database. We thus used OData, a tool providing a query language for RESTful APIs, that can translate automatically query parameters from the URI to SQL queries. Yet, OData came with some performance flaws. To restore performances, we used indexes to speed up queries execution and we restricted query parameters combinations.
This work resulted in a solution allowing the concurrent execution of multiple instances of the service. Moreover, queries are in most cases faster and thus the service can now support more clients.
So, this work showed that the cache was not better than the database when executing the queries and could be removed.
Fichier(s)
Document(s)
Annexe(s)
Description: Program parsing measured times (client, middleware, controller) from logs
Taille: 2.2 kB
Format: Unknown
Description: Modified version of the MultiMonitoring application
Taille: 1.71 MB
Format: Unknown
Description: Initial version of the MultiMonitoring application
Taille: 1.72 MB
Format: Unknown
Description: Program allowing to send queries to the server a given number of times.
Taille: 1.35 kB
Format: Unknown
Description: Gatling script used to measure the number of clients (OData version)
Taille: 3.51 kB
Format: Unknown
Description: Gatling script used to measure the number of clients (cache version)
Taille: 3.29 kB
Format: Unknown
Description: SQL script creating 132 indexes on the Jobs table
Taille: 14.62 kB
Format: Unknown
Description: PowerShell script used to fill the database
Taille: 2.15 kB
Format: Unknown
Citer ce mémoire
L'Université de Liège ne garantit pas la qualité scientifique de ces travaux d'étudiants ni l'exactitude de l'ensemble des informations qu'ils contiennent.