Les API Big Data : Fonctionnement et conseils

Si les API ne sont pas nouvelles, leur rôle est de plus en plus prégnant dans les systèmes d’information, et elles deviennent les pilotes de l’économie numérique. Dans de nombreux domaines les API sont au cœur des projets, de leur développement et de leur déploiement, le Big Data n’y échappe pas.

Sur le marché du digital, nous assistons au phénomène relativement récent de l’explosion des API, même si en réalité elles existent depuis bien longtemps, mais sous d’autres appellations. Dans le seul domaine public, c’est-à-dire hors des solutions propriétaires avec leurs API privées, plus de 15 000 API sont disponibles et viennent enrichir un écosystème qui ne cesse de prendre de la valeur. Mais commençons par nous poser la question qu’est-ce qu’une API ? L’expression est l’acronyme de « Application Programming Interface ».

Dans son sens le plus classique, une API est un microprogramme intermédiaire entre deux applications pour qu’elles puissent communiquer. Les API permettent aux systèmes logiciels comme aux services (SaaS et dans le cloud), aux données et aux programmes de se croiser, de communiquer, de s’alimenter, de s’interconnecter. Par exemple, lorsque l’on publie un message sur un réseau social, lorsque l’on consulte un service Web sur notre Smartphone, ou lorsqu’une requête lancée par un logiciel va rechercher des données dans une base de données externes, cette mission de mise en relation et de transmission de l’information incombe aux API. Dans le même temps, les usages se multiplient, en particulier les développeurs associent de plus en plus une fonctionnalité à une API, ce qui simplifie un certain nombre de développements lorsqu’il s’agit de mettre en relation deux éléments applicatifs d’un système d’information. Autre usage des API, elles fournissent aujourd’hui une couche de sécurité, en évitant par exemple que les données de votre téléphone soient totalement exposées au serveur, et vice versa. C’est ainsi que le partage se résume à ce qui est seulement nécessaire, et donc l’exposition est minimale.

API

Les API support de l’économie numérique

La transformation digitale est un long cheminement qui passe par l’utilisation de la technologie pour ajouter une nouvelle dimension, le numérique, à la relation entre l’entreprise, ses clients et partenaires, et son marché. Ainsi qu’aux différentes solutions qui sont déployées. Avec une économie numérique en plein essor, les entreprises doivent adopter une stratégie d’intégration des systèmes qui soit capable d’accéder, d’analyser et de fournir les données les plus à jour et de manière la plus consommable possible, afin de garantir des gains en termes d’avantage concurrentiel significatif. C’est à ce titre que les API sont aujourd’hui appelés « le pilote de l’économie numérique ». Pour apporter de la valeur, les entreprises doivent briser les silos entre les systèmes, optimiser les processus, et apporter l’agilité. Et dans un monde aux frontières qui bougent qui nécessitent de s’adapter, les interfaces de programmation permettent en particulier d’ouvrir à l’innovation les systèmes d’information ‘préhistoriques’. 85 % des entreprises dans le monde s’adosseront à des API pour ouvrir leur SI. Les API sont le canal de cette transformation. Appliquées aux données, elles permettent l’ouverture des services tant aux fournisseurs et aux partenaires, qu’aux clients, ou au marché. L’accélération de l’innovation passe également par la réaffectation des actifs, dont les données, ce qui rend les API auxiliaires de l’organisation et de la transformation. Les applications sont alimentées par les API, les développeurs peuvent les utiliser afin de créer un chemin d’accès aux applications qui sont alimentées par elle. Elles permettent également de créer des liens avec les nouvelles sources de revenus et de briser les frontières traditionnelles des organisations en leur permettant de jouer la carte de l’ouverture.

La valeur des modèles économiques dépend de plus en plus de la façon dont on intègre et opère l’ensemble ces éléments numériques qui composent l’entreprise. L’objectif pour cette dernière est d’arriver à ce que toutes ses solutions, internes et externes, soient disponibles sous forme d’API, que ce soit pour gérer l’infrastructure (le calcul, le stockage, le réseau, la gestion…), les fonctions de base (les lieux, les profils des utilisateurs, le paiement, la sécurité…), les métiers (la finance, les ventes, le marketing…), et ce dans une gamme d’industries toujours plus large. Or, entre la complexité grandissante des systèmes d’information et la fragmentation des entreprises, que ce soit au travers de la création de nouveaux modèles, des fusions-acquisitions, ou encore par la multiplication des systèmes et processus, et cela sur un marché qui ne cesse de s’accélérer, le déploiement, l’interconnexion, la gestion et l’optimisation des applications représentent aujourd’hui un véritable casse-tête. Les API, par leur position d’intermédiaire, deviennent non pas le point central mais le carrefour principal des architectures, des processus métiers, du traitement des événements, de la gestion des données, et bien évidemment de l’intégration des applications d’entreprise.

« Dans un monde connecté, les trois choses les plus désirables sont les connexions, les connexions et les connexions. »
Marc Andreessen, co-créateur en 1993 de Mosaic, le premier navigateur graphique web, fondateur de SGI (Silicon Graphics), et de Netscape, la première entreprise entièrement orientée vers Internet.

Les API dans le monde Big Data

Quand les organisations ouvrent leurs données, elles multiplient les applications, les accès au cloud, à la mobilité, à l’Internet des objets. Les API constituent alors le fondement de cette ouverture, permettant aux entreprises de réutiliser leurs actifs informationnels existants au travers des frontières organisationnelles. Dans ce cadre, le développement des API privés permet aux entreprises d’offrir en interne comme à leurs partenaires des outils qui participent à la rationalisation de la relation, des opérations, et du service. Les API publiques sont quant à elles un autre modèle de connexion et de participation, qui accompagne les clients de l’entreprise via le Web, les mobiles, ou encore les applications sociales. C’est ainsi que les API permettent la connexion entre applications et avec les clients, la rationalisation des opérations, l’amélioration de l’efficacité opérationnelle et des services rendus à la clientèle. Le Big Data n’échappe pas à ce phénomène, voire au contraire il s’impose ! La quantité de données collectées par les entreprises continue de croître à un rythme exponentiel, et toutes les organisations, quel que soit leur secteur d’activité, sont soumises à cette croissance. L’accès aux grandes collections de données, la capacité de traitement, la sécurité appliquée à l’information, figurent parmi les difficultés majeures qui apparaissent aujourd’hui. L’exposition et l’analyse des très grands volumes de données deviennent un atout stratégique et commercial, avec les API qui fournissent un accès programmatique à certaines parties des grands ensembles de données qui composent le Big Data. Par définition, ce dernier est difficile à traiter en utilisant des applications classiques. La nécessité d’agréger d’énormes quantités de données, qui plus est de formats disparates et provenant de sources diverses, l’analyse de ces informations, la nécessité de maintenir la sécurité des sources de données originales comme des outils de traitement durant tout le processus, sont le vivier dans lequel les API fleurissent.

L’architecture décrite dans le schéma ci-dessous représente une plateforme d’infrastructure Big Data Hadoop. Notre but n’est pas de décrire ici cette architecture, mais l’interconnexion entre les différents éléments qui la composent, et l’interconnexion avec les ressources externes, s’exercent par le canal des API. Celles-ci sont le lien entre les composants, les composants et les données, les données et les bases de données, sans oublier les outils analytiques.

2

Schéma d’une architecture Big Data MapR

Pourquoi utiliser des API dans votre architecture Big Data ?

Prenons comme exemple une architecture lambda permettant d’ingérer des données (en temps réel ou en batch) et de les mettre à la disposition des utilisateurs via des applications métiers.

3

 

Dans ce contexte, l’architecture Big Data est composée de 3 éléments :

  • Les sources de données internes ou externes ;
  • Le Data Provider Services Center qui a pour rôle d’ingérer les données, de les organiser, de les mutualiser et de les fournir aux applications métiers ;
  • Le Market Place Services Center qui a pour rôle de mettre à disposition des applications pour les métiers.

Dans cette architecture, le fait de passer par des APIs Rest permet de :

  • « consommer » le Datalake et de déployer du calcul sans sortir les données,
  • gérer une logique de sécurité au niveau des accès à chaque API et simplifier considérablement la sécurité et l’administration associées aux droits données/utilisateurs,
  • accroitre la maintenabilité (respect du principe des demi-interfaces / gestions des versions différentes de l’API),
  • dissocier l’accès aux données, le traitement et les applications,

Il est aussi possible d’enrichir les Datasets avec les résultats et commentaires utilisateurs en développant les fonctions PUT des API Rest.

4

10 conseils pour gérer les API  

1) Obtenir le soutien au plus haut niveau ; les initiatives liées aux API doivent être cohérentes, fruit de la coopération étroite et en mode agile entre l’entreprise et sa DSI. 

2) Traiter et gérer vos API comme des produits. 

3) Imposer un même traitement pour les API privées et publiques ; elles doivent en particulier suivre les mêmes processus de contrôle de qualité. 

4) Analyser l’utilisation des API ; déterminer l’accès aux données, la quantité et la fréquence, afin de gérer efficacement le programme d’API. 

5) Encourager les développeurs externes à utiliser vos API ; activer une plus grande innovation numérique pour construire de nouvelles sources de revenus. 

6) Prendre en compte l'architecture globale, l'évolutivité et l'intégration ; les systèmes doivent pouvoir croître avec le volume et les transactions au fil du temps afin fournir un environnement informatique durable. 

7) Adopter une architecture modulaire ; elle permet d’exploiter les actifs existants tout en permettant l'ajout de fonctionnalités best-of-breed dès qu'il est disponible. 

8) Ne pas sous-estimer la nécessité pour l’entreprise et IT de travailler en étroite collaboration ;  le parcours commun assurera une compréhension commune en vue d'atteindre vos objectifs business. 

9) Communiquer efficacement avec toutes les parties prenantes internes ; c’est vital pour le succès de tout grand projet de transformation. 

10) Envisager une approche progressive ; choisir une première API de portée limitée afin que votre organisation puissent très tôt voir les avantages, pour gagner une expérience précieuse, et pour aider à affiner la stratégie de déploiement des API.

Autres sources :

http://www.programmableweb.com/category/big-data

https://www.mulesoft.com/platform/api/developer-portal

Partager :
Partager sur Twitter
Partager sur LinkedIn
Partager par email

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *