La plateforme DataLab#

Lorsque DataLab a vu le jour en 2023, il s’agissait d’un produit unique : une application de bureau. Depuis, le même cœur scientifique a donné naissance à une petite famille d’outils complémentaires — la plateforme DataLab. Cette page clarifie le vocabulaire et vous aide à choisir l’édition la mieux adaptée à vos besoins.

../_images/ecosystem.png

La plateforme DataLab : l’application de bureau, DataLab-Web et DataLab-Kernel sont trois modes d’accès partageant le même moteur de calcul Sigima et interopérables via des espaces de travail HDF5.#

Voir aussi

L’histoire de cette évolution — l’extraction du moteur de calcul Sigima et l’édition native pour navigateur — est documentée dans les rapports de projet et les enregistrements de décisions d’architecture publiés sur le wiki DataLab.

Une note sur le vocabulaire#

Le terme DataLab désigne à la fois l’ensemble de la famille et son membre historique, l’application de bureau. Pour éviter toute confusion, cette documentation emploie le vocabulaire suivant :

Nom

Signification

DataLab Platform

Le terme générique désignant l’ensemble de l’écosystème (tous les produits listés ci-dessous).

DataLab

L”application de bureau de référence (basée sur Qt). Sauf indication contraire, le reste de cette documentation décrit ce produit.

DataLab-Web

L’édition native pour navigateur : la plateforme complète s’exécutant dans un onglet de navigateur web, sans aucune installation. Essayez-la sur datalab-platform.com/webprojet sur GitHub.

DataLab-Kernel

Un noyau Jupyter exposant les espaces de travail DataLab aux notebooks — soit synchronisé en direct avec une session de bureau en cours d’exécution, soit totalement autonome (y compris dans JupyterLite, dans le navigateur). Documentation.

Sigima

Le moteur de calcul sans interface (traitement du signal et de l’image) partagé par tous les produits ci-dessus. Documentation.

Note

Ce site de documentation est, avant tout, la documentation de l”application de bureau. Tout ce qui est commun aux différentes éditions — le modèle objet, le catalogue de traitements, les paramètres — est décrit ici et s’applique également à DataLab-Web. Seules les différences propres à une édition sont signalées explicitement.

Les membres de la plateforme#

DataLab (desktop)

L’application de référence, dotée d’une interface graphique Qt native et de la visualisation interactive complète de PlotPyStack. S’exécute localement sous Windows, Linux et macOS.

DataLab-Web

La même plateforme, s’exécutant entièrement dans votre navigateur via WebAssembly. Aucune installation, vos données ne quittent jamais votre machine. Essayez-la sur datalab-platform.com/web ou parcourez le projet sur GitHub.

DataLab-Kernel

Un noyau Jupyter pour les flux de travail pilotés par notebook : synchronisé en direct avec une session de bureau en cours d’exécution, ou totalement autonome — les notebooks s’exécutent à l’identique avec ou sans DataLab, y compris dans JupyterLite. Voir la documentation DataLab-Kernel.

Sigima

Le moteur de calcul open source qui propulse chaque édition. Voir la documentation Sigima.

Lequel choisir ?#

L’application de bureau et DataLab-Web ne sont pas concurrentes : ce sont deux modes d’accès à la même plateforme, et elles peuvent être utilisées indifféremment (les espaces de travail HDF5 sont interopérables). Quelques règles générales :

  • Utilisez l’application de bureau lorsque vous travaillez sur votre propre machine et souhaitez l’expérience la plus riche et la plus rapide, l’ensemble complet des outils interactifs PlotPy, un accès natif aux fichiers et la capacité de traiter de très grands jeux de données, limités uniquement par la mémoire vive de votre système.

  • Utilisez DataLab-Web lorsque vous ne pouvez pas ou ne voulez rien installer — par exemple sur un ordinateur partagé ou verrouillé, sur la machine de quelqu’un d’autre, ou simplement pour essayer rapidement DataLab. Tout s’exécute localement dans l’onglet du navigateur ; aucun serveur, aucun compte, aucun téléversement.

  • Utilisez DataLab-Kernel lorsque votre flux de travail est centré sur les notebooks et que vous souhaitez disposer du catalogue de traitements de DataLab depuis un notebook Jupyter — par exemple pour rédiger des rapports d’analyse reproductibles, rejouables avec ou sans DataLab. Vous pouvez l’essayer en ligne dans un environnement JupyterLite, sans rien installer.

Un usage courant consiste à utiliser l’application de bureau sur votre poste de travail personnel et DataLab-Web partout ailleurs, en échangeant le travail dans les deux sens via des fichiers d’espace de travail HDF5.

DataLab et DataLab-Web#

DataLab-Web partage le moteur de calcul (Sigima) et le catalogue de traitements avec l’application de bureau : c’est le même code Sigima — et non un portage — qui s’exécute sur CPython (bureau) et sur Pyodide (navigateur), de sorte que les résultats sont identiques pour les mêmes entrées. Les différences portent sur l”environnement d’exécution, non sur la science.

Sujet

DataLab (bureau)

DataLab-Web

Installation

Installé localement (Windows, Linux, macOS)

Aucune — s’exécute dans le navigateur

Environnement d’exécution Python

CPython du système

Pyodide (CPython compilé en WebAssembly)

Interface graphique

Qt + PlotPy

React + Plotly.js

Tracé

PlotPy (Qt), outils interactifs complets

Plotly.js (outils interactifs partiellement réimplémentés)

Accès aux fichiers

E/S natives du système de fichiers

Sélecteur de fichiers du navigateur, glisser-déposer

Persistance

HDF5 sur disque

Téléchargement / téléversement HDF5 (espaces de travail interopérables)

Mémoire

Limitée par la mémoire vive du système (64 bits)

Tas WebAssembly d’environ 2 Go par défaut ; un mode de stockage sur disque optionnel supprime entièrement cette limite, le jeu de travail étant alors borné par l’espace disque disponible plutôt que par la mémoire vive

Réactivité

Les calculs s’exécutent dans des processus de travail séparés ; l’interface reste réactive et les traitements peuvent être annulés

L’environnement Python s’exécute dans un Web Worker, hors du fil d’exécution de l’interface ; celle-ci reste réactive et les traitements par lots peuvent être annulés entre deux objets

Langues

Anglais et français

Anglais et français (langue du navigateur détectée automatiquement)

Pilotage à distance

XML-RPC et API Web FastAPI

Proxy intégré au navigateur et SDK postMessage optionnel

Ce qui ne change pas : le modèle objet (SignalObj, ImageObj, ROI, groupes), le catalogue de traitements découvert depuis Sigima, les boîtes de dialogue de paramètres générées automatiquement et le format d’espace de travail HDF5. Un espace de travail enregistré dans l’application de bureau peut être ouvert dans DataLab-Web, et inversement.

Note

Les plugins sont en grande partie portables entre l’application de bureau et DataLab-Web, avec quelques contraintes liées à l’environnement d’exécution du navigateur. Voir Plugins pour plus de détails.