Le « hype » en bibliothèque : cloud multi-tenant

Je n’ai pas le temps de blogguer autant que je le voudrais, mais j’ai quand même envie, en ce début d’année, de prendre le temps de parler d’un sujet qui me tient à coeur : le cloud et le multi-tenant en bibliothèque. Ce terme est en effet utilisé dans tous les cercles que je cotoie comme une espèce de Saint Graal. Et ça me semble largement excessif, ce sont deux termes essentiellement marketing.

Qu’est-ce que le « hype » ?

Wiktionnaire en donne 2 définitions que j’aime bien : c’est ce qui créée la mode, et le battage médiatique.

Il y a, depuis quelque années, deux termes qui sont très « hype », et qui, à mon sens, sont surtout une grande réussite marketing dans le monde des bibliothèques

  • cloud computing. Que l’on ne se méprenne pas : le cloud computing, ça correspond à quelque chose de réel. Et c’est très utile, notamment pour la partie « élasticité ». Cela permet par exemple à une start-up de démarrer avec de petites ressources pour son site, et de grossir très facilement et dans des facteurs considérables si elle a du succès. Ca permet aux plateformes de vente en ligne qui ont des pics cycliques d’adapter les ressources que ce soit aux soldes (chausseurs en ligne), à Paques (les chocolatiers), à la Fête des Mères (les fleuristes en ligne). Ca permet à des statisticiens de bénéficier de très grosses ressources durant 2H pour faire des calculs complexe, puis de rendre les ressources dès que les résultats sont calculés. Mais en bibliothèque, le cloud computing, c’est de l’hébergement caché derrière un terme hype. Une bibliothèque ne multiplie pas son activité par 10 avant de le rediviser par 10. La surcharge d’un mercredi en lecture publique ne nécessite pas l’élasticité d’un cloud. Bref, les bibliothèques n’ont pas besoin de cloud, mais d’hébergement performant (incluant la virtualisation des ressources). Mais c’est cloud le terme « hype », « hébergement » ça fait vieux.
  • multi-tenant. là encore, on trouve une définition intéressante sur wikipedia : le multi-tenant est une architecture permettant à un même logiciel de servir plusieurs clients à partir d’une unique installation. Cela implique/inclut également l’aggrégation de données. Là encore, ce terme est très à la mode, mais qu’en est-il du besoin des bibliothèques ? servir plusieurs clients à partir d’une unique installation, pourquoi pas, même si je ne vois pas en quoi cela apporte un avantage décisif par rapport à un même logiciel installé plusieurs fois. Avoir une unique base de données via une aggrégation, je suis beaucoup plus critique. Certaines données ont un évident intérêt à être partagées (les catalogues par exemple) mais d’autres sont strictement locales (les prêts). Enfin, d’autres peuvent être mixtes (les usagers : une BM ne verra pas l’intérêt de partager ses inscrits avec une autre, les universités trouveront utile d’avoir une base centrale des étudiants). Par dessus tout, il me semble que répondre à ce besoin fonctionnel en centralisant les données nous ramène au temps des ordinateurs centraux. La bonne réponse à cette vraie problématique me semble plutôt résider dans une architecture à base de micro-services/webservices, ou chaque ressource communique avec les autres. L’internet, c’est l’ère de la décentralisation, profitons-en !

Je suis régulièrement interrogé sur ces questions, notamment vis à vis de Koha : « Koha est il cloud », « Koha est-il multi-tenant » ?

Voilà la réponse courte : oui, et oui/bientôt

La réponse longue :

« Koha est-il cloud »

Bien sûr. Et depuis l’an 2000, bien avant que le terme cloud ne soit inventé ! Pendant longtemps, le terme « à la mode » était « hébergement ». Maintenant que c’est cloud le terme à la mode, nous avons changé notre vocabulaire. Mais pas notre infrastructure. Oui, Koha s’intègre parfaitement sur des architectures cloud, peut-être proposé en SaaS.

Juste 2 exemples : nous avons une centaine de clients, en mode « cloud » / « SaaS » : le client dispose d’un accès à l’application via le web et un navigateur, on s’occupe du reste. Nos collègues de ByWaterSolutions, aux USA, font de même, et leur infrastructure est basée à 100% sur le cloud d’Amazon : du SaaS sur IaaS.

Précisons également qu’il existe des applications de « cloud personnel », des logiciels libres, qui permettent à tout un chacun (enfin, si l’on a les compétences techniques), d’implémenter son propre cloud sur ses propres serveurs. Et donc son Koha personnel dans son cloud personnel. Je citerai juste CozyCloud, OwnCloud et NextCloud, il y en a d’autres.

« Koha est-il multi-tenant sur le code » ?

Oui, tout à fait, même si ce n’est pas beaucoup mis en avant. Koha peut être déployé en mode « multi-tenant », avec une unique base de code, qui sert plusieurs clients. tout un tas d’outils sont fournis pour piloter les différentes instances. Le technicien anglophone pourra aller jeter un oeil au wiki communautaire.

C’est ainsi que fonctionne notre offre pikoloco par exemple : tout le monde est mis à jour en une seule opération. Nos plus gros clients, par contre, ne sont pas en mode multi-tenant. Cela nous permet de déployer des personnalisations ou des mises à jour individuellement. Ce qui est parfois nécessaire : Koha doit parfois être interfacé avec un logiciel non standard, avec du code spécifique à un client. Ou bien nous avons déployé Koha pour un client, qui utilise un portail X (pas géré par nous), et la mise à jour nécessite une coordination pour ne pas casser le portail : nous mettrons à jour ce client lorsque son « prestataire portail » aura vérifié le bon fonctionnement dan la nouvelle version.

« Koha est-il multi-tenant sur les données » ?

Pour la partie « aggrégation de données », Koha en lui-même ne fonctionne pas ainsi. Mais nous avons lancé en 2016 un projet qui introduira une vraie rupture : le projet mana. C’est un projet de base de connaissance bibliothéconomique.

Il permet aux établissements de partager (« produire ») des données, et de dériver (« consommer ») dans son instance de Koha les données disponibles. Mana est un projet basé sur des webservices, rien n’interdit à d’autres logiciels de « participer » à la base de données ainsi créée, que ce soit comme « consommateur » de données ou comme « producteur ».

Pour l’instant, les modèles de prédiction des abonnements aux périodiques sont opérationnels. Dans les mois qui viennent, nous allons rajouter de nombreuses possibilités, le projet a été conçu pour être facilement extensible à tout type de données : fournisseurs, requêtes statistiques Koha, mais aussi, pourquoi pas, XSLT de présentation des notices, modèles de modification MARC (ah la transformation MARC21 > UNIMARC !!!). A terme, on pourrait également imaginer mettre dans mana des notices bibliographiques, des notices d’autorité, des fichiers liés aux ressources électroniques (des fichiers kbart ou ONIX-PL, interfacés avec Coral), des recommandations ou des « les lecteurs ayant lu X ont aussi lu Y ». Bref, proposer une base collaborative, mondiale de données bibliothéconomiques.

Qui, je me répête, seraient utilisable librement par toutes les bibliothèques.

Pour l’instant, Mana n’est pas intégré dans Koha, mais j’espère bien que ce sera fait en version 17.05. Un de nos collaborateur, assisté d’un stagiaire, va consacrer du temps à ce projet dans les 6 mois à venir.

Et le libre dans tout ça ?

Le modèle « cloud multi-tenant propriétaire » est à l’exact opposé de ce que proposent les logiciels libres.

Enfonçons des portes ouvertes :

  • Un logiciel libre vous donne le pouvoir sur le code de l’application.
  • Un logiciel libre vous donne le pouvoir sur vos données.
  • Un logiciel libre est communicant par construction, sans limitation autre que votre imagination (pour être honnête, il y a quand même la limite de vos ressources, qu’elles soient humaines ou financières)
  • Un logiciel libre vous donne le pouvoir sur votre modèle d’implémentation (cloud ou pas, hébergement local ou distant)
  • Un logiciel libre vous donne le choix de votre prestataire.

Un logiciel « cloud multi-tenant propriétaire » c’est le contraire sur chacun de ces points. J’avoue ne être très surpris de voir les bibliothécaires se plaindre des problèmes posés par les pratiques des propriétaires et accepter un modèle qui va rapidement les priver de ce qui leur reste de liberté : vous mettez tous vos oeufs dans un unique panier, confié à un éleveur qui gère aussi le poulailler, l’achat des graines et la vente des oeufs à vos clients.

Je préfère, de loin, un modèle ouvert, communicant, décentralisé et surtout qui n’obère pas l’avenir.

En guise de PS : tout ce que j’ai dit en citant Koha est valable également pour les autres logiciels que nous proposons : Omeka (nous avons 3 clients sur notre cloud, représentant 8To de données numériques), Piwik (nous avons une trentaine de clients sur notre cloud), Bokeh (les serveurs d’AFI ont plusieurs centaines de clients).

Share

A propos Paul Poulain

Paul est impliqué dans des projets de logiciels libres depuis 1998. Depuis 2001, il œuvre à faire connaître les logiciels libres dans le monde des bibliothèques. Contributeur aux développements de Koha depuis fin 2001, Paul s’est impliqué à temps plein dans ce projet dès 2002. Après 5 ans comme indépendant, il a créé BibLibre et a piloté son développement. Paul est et reste avant tout un libriste dans l'âme, toujours motivé à partager.

Laisser un commentaire

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