• Aucun résultat trouvé

Construction et déploiement d'applications web basées sur R

N/A
N/A
Protected

Academic year: 2021

Partager "Construction et déploiement d'applications web basées sur R"

Copied!
2
0
0

Texte intégral

(1)

HAL Id: hal-01836400

https://hal.archives-ouvertes.fr/hal-01836400

Submitted on 25 Jul 2018

HAL is a multi-disciplinary open access

archive for the deposit and dissemination of

sci-entific research documents, whether they are

pub-lished or not. The documents may come from

teaching and research institutions in France or

abroad, or from public or private research centers.

L’archive ouverte pluridisciplinaire HAL, est

destinée au dépôt et à la diffusion de documents

scientifiques de niveau recherche, publiés ou non,

émanant des établissements d’enseignement et de

recherche français ou étrangers, des laboratoires

publics ou privés.

Construction et déploiement d’applications web basées

sur R

Alassane Samba

To cite this version:

Alassane Samba. Construction et déploiement d’applications web basées sur R. Septièmes Rencontres

R, Jul 2018, Rennes, France. �hal-01836400�

(2)

Construction et déploiement d’applications web basées

sur R

Alassane Samba

Orange Labs

2 avenue Pierre Marzin 22300 Lannion

alassane.samba@orange.com

Mots clefs : application web, API, Shiny, Plumber, Swagger, déploiement, DevOps, Docker.

La Data Science se développe à grand pas. Le langage R, précurseur dans l’implémentation d’algorithmes issus du monde de la statistique et du Machine Learning, bénéficie d’une certaine avance dans ce domaine comparé à la plupart des langages de programmation. Cependant, vu le besoin grandissant d’embarquer de l’intelligence artificielle dans les applications web, la course est aujourd’hui à la capacité à construire et déployer des applications professionnelles, robustes et fiables, capables d’analyse et d’apprentissage sur les données diverses auxquelles elles peuvent avoir accès. Grâce à sa large communauté de développeurs à travers le monde, le langage R est en train de se doter de plus en plus d’extensions lui permettant de rivaliser avec des langages traditionnels tels que Java, Python ou JavaScript avec NodeJS, qui ont fait leurs preuves sur la construction et le déploiement d’applications web professionnelles.

Au sein des services de recherche et développement d’Orange, nous sommes souvent confrontés à des problématiques nécessitant de construire, d’automatiser et de déployer des outils d’analyse, de visualisation et d’apprentissage de données sous forme d’applications web. Le langage R et plusieurs de ses extensions telles que les packages shiny et plumber nous ont largement servi dans ce cadre. Les réponses aux questionnements qui ont émergé tout au long des processus de développement, d’intégration et de déploiement de ces applications ont fait l’objet de passionnants travaux. Ces derniers ont d’ailleurs donné naissance à un package R nommé

Rapp. Ce dernier vise en particulier à faciliter le déploiement sur une machine distante de toute application

R, qu’elle soit une application Shiny (e.g. [1]) ou une API Plumber (e.g. [2]).

La présentation proposée consistera d’abord en un panorama de packages R et d’outils complémentaires intéressants montrant le potentiel de ce langage pour supporter les besoins actuels de déploiement de Data Science et d’intelligence artificielle en tant que service web. Nous parlerons entre autres d’intégration avec des bases de données ou des APIs tierces, de développement d’API et d’interface web sous R, ainsi que de containerisation des applications R. Par la suite, nous présenterons des approches inspirées du monde DevOps que nous utilisons pour construire et déployer des applications web basées entièrement ou en partie sur R. Enfin, nous introduirons le package Rapp que nous proposons pour partager ces approches avec les communautés d’utilisateurs de R.

Références

[1] https://tomyardstick.sigmant.net/

[2] https://api.tomyardstick.sigmant.net/swagger/

Références

Documents relatifs

C’est durant cette étape que sont prises en compte les caractéristiques fonctionnelles pouvant avoir un impact sur la sécurité ainsi que les besoins de

- car elle est simple, rapide et fonctionne pour une variable de sortie non binaire, et des variables d’entrées de type quelconque.. - elle permet de traiter des données de

Cas de figure : les entrées utilisateur sont utilisées pour effectuer des traitements sur le système. Contre-mesure : Traitement des entrées utilisateur avant

dans laquelle l’information se voit associ´ ee ` a un sens bien d´ efini am´ eliorant la capacit´ e des ordinateurs [...] ` a travailler en coop´ eration.”.. o L’appelation:

L’archive ouverte pluridisciplinaire HAL, est destinée au dépôt et à la diffusion de documents scientifiques de niveau recherche, publiés ou non, émanant des

Bases de données géospatiales; type de données spatiales [point, ligne, polygone; données de type OGC], SESQL [opérateurs spatiaux]; contraintes d'intégrité des données

Le mécanisme de l'héritage est très utilisé en JavaFX. A chaque fois que nous créerons un type d'objet graphique quelconque, nous devrons faire hériter la classe qui définit cet

A partir d’une unité médiatique, un lien structurel permet d’aller vers les unités connexes dans la structure navigationnelle (unités suivante, précédente, page