Innovations Big Data, Internet des objets , mobile , web & architectures Java - Leuville Objects

 Axes de Recherche

 Nos axes de Recherche et développement portent actuellement sur:

  • les Architectures Orientées Services (SOA) et plus particulièrement les bus de services d'entreprises (ESB)
  • l'exploitation de données massives (Big Data)
  • la notion de conteneurs
  • l'internet des objets

L’exploitation des données massives (Big Data)

Qu’elles soient massives ou pas, l’exploitation de données a fait ces preuves comme une méthode pour comprendre et potentiellement améliorer une situation ou un service, quel que soit le domaine. En effet cette exploitation permet de comprendre ce qui s’est passé, d’étudier le présent et de prédire au mieux le futur et de s’y adapter. La prédiction se fait grâce à des modèles. « L’informatisation » de la collecte de données, et la démocratisation de celle-ci a considérablement augmenté la taille des données recueillies. L’exploitation de ces données a donc nécessité une « informatisation  ». Les dernières années la taille des données recueillies a tellement augmenté qu’il y a eu besoin de nouveaux outils et d’architectures spécifiques pour pouvoir recueillir, gérer et exploiter celles-là.

Ainsi tout un « éco-système » a été mis en place sous l’intitulé « Big-Data » (traduction littéraire: données massives). Cet éco-système inclus des Systèmes de Fichiers (File System) comme HDFS, des Bases De Données SQL et NoSQL comme Cassandra et Couchbase, des modèles de données comme les « dataframes », des langages et des outils d’analyse statistiques comme R, des architectures pour l’optimisation des calculs comme Hadoop, et des algorithmes d’apprentissage connus sous le nom de Machine Learning etc.

 

LEUVILLE OBJECTS, et plus particulièrement son pôle R&D se sont lancés dans une montée en compétence sur tous ces aspects pour pouvoir proposer des solutions personnalisées à des problématiques dites de Big Data. L’idée étant de proposer aux clients, des méthodes de récupération et d’analyse de données, les outils adaptés, et l’architecture à mettre en place pour répondre au besoin d’exploitation de leurs données massives. LEUVILLE OBJECTS tient aussi un blog autour de ces différents sujets de Recherche. En voici un exemple autour du champ lexical Big Data.

La notion de conteneur

La conteneurisation est à la base un processus qui a proposé l'usage de conteneurs dans le transport de marchandises, principalement dans le transport maritime et donc sur des "dockers". Aujourd'hui il est quasi-impossible de séparer la notion de conteneurisation informatique de la technologie Docker.

En effet Docker s'est inspiré du processus de conteneurisation de marchandises pour conteneuriser des services informatiques. Le principe est de partager les ressources de l'hôte, qui est une machine virtuelle "classique" dans des "micro machines virtuelles", les containers. Ces containers sont légers et basés sur une "image" qui décrit ce qu'ils portent. La technologie Docker permet de créer les images, lancer les containers, gérer leur File System, les faire communiquer, gérer leurs ressources etc. Ainsi des architectures logiciels peuvent se construire entièrement à partir de containers Docker. Docker peut également être utilisé pour gérer le packaging et le cycle de vie du logiciel. L'éco-système autour Docker, comme sont DockerHub, et son lien proche avec Git le rend populaire auprès de la communauté d'utilisateurs.

LEUVILLE OBJECTS cherche à utiliser des containers dans la mise en place de ces solutions. On parle de micro-services où chaque container est une brique. Ainsi la BDD sera par exemple séparée du serveur et de l'administrateur etc. Dans le cadre de sa R&D notamment autour du Big Data LEUVILLE OBJECTS propose aussi des images Dockers réutilisables par la communauté via le DockerHub.

Haute disponibilité des communications dans les systèmes embarqués par l’emploi d’agents mobiles dans un environnement cloud

Les systèmes embarqués sont le support des périphériques mobiles qui ont envahi notre quotidien : ordinateurs portables, terminaux de poche (« smartphones »), tablettes tactiles, … ont profondément modifiés notre comportement. Les puissances de calculs (de plus en plus grandes) et les moyens de communications (e.g. Wifi, Bluetooth) dont-ils disposent leur permettent d'interagir entre eux et avec le monde environnement.  Il est possible d’échanger avec l’un de ces systèmes lorsque le périphérique destinataire est joignable par un réseau informatique. Les périodes d’indisponibilités de ces périphériques sont fréquentes au cours de leur cycle d’utilisation (par exemple la perte d’une connexion à un réseau Wifi ou téléphonique mobile lors d’un déplacement).

Les périphériques mobiles représentent un des axes stratégiques de développement de la recherche actuelle. La mise au point de ce mécanisme inédit de haute disponibilité des communications doit permettre d’ouvrir la voie à des applications industrielles innovantes. Ce mécanisme consiste à communiquer par l’emploi d’agents mobiles envoyés directement au périphérique destinataire quand celui-ci est joignable. Dans le cas contraire (si le périphérique destinataire est injoignable), les agents mobiles s’adresseront à un « clone » (une image virtuelle) du périphérique destinataire présent dans un environnement cloud. Ainsi, la communication est assurée entre l’expéditeur et le destinataire. Lorsque le destinataire sera de nouveau joignable, la synchronisation avec son clone sera réalisée par des agents mobiles.

Gestion de clusters d'ESB par mobilité

Un ESB ou Enterprise Service Bus est une solution d’intégration implémentant une architecture totalement distribuée, et fournissant des services comme la transformation des données ou le routage basé sur le contenu (CBR), ainsi qu’une interopérabilité accrue par l’utilisation systématique des standards comme XML, les Web Services et les normes WS-I. L’ESB est une solution packagée qui permet de mettre en oeuvre une architecture SOA. La notion de distribution est centrale pour un ESB. En effet, les applications à intégrer sont réparties sur différentes machines ou systèmes d’informations. Par la mise en oeuvre de ce principe de distribution, les données de configuration et d’administration sont alors distribuées sur les extrémités de l’ESB, c’est-à-dire au plus près des applications à intégrer.

Les architectures orientées services, et notamment leur constituant essentiel à savoir l’Enterprise Service Bus (ESB) font l’objet de travaux récents. Il en est de même pour la vision du système d’informations en tant qu’expression automatisée et informatisée des processus métiers de l’organisation. De ce fait, même s’il existe des normes au niveau de certains constituants « microscopiques » d’une architecture SOA (langages XML par exemple), il n’existe pas de norme « macroscopique » et la mise en oeuvre globale résulte de choix spécifiques de tel ou tel acteur.

L’objectif de LEUVILLE OBJECTS est d’automatiser la gestion des ESBs en enrichissant les approches actuelles d’orchestration de services. L’objectif est également d’apporter, grâce à cette mobilité d’orchestration, une meilleure disponibilité et donc une auto adaptation des ESBs au sein d’un cluster. Aussi, pour définir une solution de gestion évolutive et réutilisable, LEUVILLE OBJECTS a suivi une approche MDA (Model driven architecture).

A ce titre, ces travaux ont fait l’objet de publications en 2013 et 2014.