ArticleApplications & Développement
Irods, une solution open source avancée pour la gestion des données
Dans un monde où les données sont devenues une ressource essentielle, leur gestion efficace est primordiale. C'est ici qu'intervient Irods, une solution de data management open source qui propose une couche d'abstraction entre l'infrastructure et les logiciels pour permettre l'évolution des couches basses sans impacter les couches hautes.

En direct de Boston. Lors d’un IT Tour à Boston, début octobre, nous avons rencontré Terrell Russell, directeur de la gestion des données pour Renci et directeur exécutif du consortium Irods (Integrated Rule-Oriented Data System). Cet acronyme cache un système de gestion de données open source développé depuis les années 1990. Il repose sur une architecture client-serveur en C++ et offre une API de protocole propre ainsi que des fonctionnalités RPC. L’initiative est née de la collaboration entre le San Diego Supercomputer Center et General Atomics financée par des fonds publics pendant plus de dix ans pour la recherche sur le stockage en grille et les catalogues de données. En 2006, le code d’Irods a été complètement ouvert au public sous licence BSD-3 et a vu son développement évoluer vers un modèle communautaire sous la direction du Renaissance Computing Institute (Renci) de l’université de Caroline du Nord en 2008.
Une gestion des données distribuées
L'une des forces d'Irods est sa capacité à gérer des données stockées sur des infrastructures hétérogènes réparties géographiquement, comme le font ses concurrents Starfish ou Hammerspace. Qu'il s'agisse de disques locaux, de systèmes de fichiers existants, de stockage d'objets en cloud ou encore de systèmes d'archivage, Irods permet de créer un espace de noms unifié. Cette virtualisation des ressources de stockage propose aux utilisateurs de visualiser et d'interagir avec leurs données de manière logique, indépendamment de la complexité physique des systèmes sous-jacents. C'est une solution adaptée pour les entreprises et les institutions qui évoluent dans un environnement de stockage diversifié, tout en offrant une flexibilité future en cas d'évolution technologique grâce à sa couche d’abstraction entre la partie infrastructures et la couche applications.

Irods apporte propose une couche d'abstraction entre la partie infrastructures et la partie applicative pour permettre l'évolution des couches basses sans impacter les couches hautes.
Irods ne se contente pas de stocker les données. Il offre aussi une capacité de catalogage (avec metadata) et d'automatisation poussée grâce à son moteur de règles. Ce dernier permet de déclencher des points d'exécution de politiques (Policy Enforcement Points - PEPs) à chaque opération réalisée dans le système : que ce soit l'accès au stockage, l'authentification, ou l'interaction avec une base de données. Ces règles, définies par les administrateurs, permettent d'ajouter des contextes, de restreindre ou d’autoriser des opérations, d’envoyer des notifications ou encore de générer des audits pour des raisons de conformité légale ou de sécurité. Cette capacité d'automatisation est particulièrement prisée dans des domaines tels que la santé et la bio-informatique, où la gestion des données doit respecter des protocoles rigoureux de sécurité et de traçabilité.

Solution de data management ouverte, Irods contrôle les accès aux données.
Sécurité et collaboration
Irods se distingue aussi par sa capacité à faciliter la collaboration entre différentes organisations, sans pour autant nécessiter une infrastructure commune ou des financements partagés. Grâce à son modèle de fédération, Irods offre à des entités distinctes de collaborer temporairement en partageant leurs espaces de noms, tout en maintenant la sécurité et l’intégrité des données. Ce modèle est particulièrement adapté aux projets collaboratifs de grande envergure, comme les réseaux de superordinateurs ou les consortiums de recherche dans les secteurs médicaux et scientifiques.

L'indexation des fichiers est une des fonctions de base d'Irods.
Une autre fonctionnalité clé d’Irods est son extensibilité via des plugins. La solution peut s’intégrer avec d’autres systèmes grâce à des interfaces comme S3, WebDAV, NFS, ou encore le pilote CSI pour Kubernetes. Cela permet aux utilisateurs d’exploiter Irods dans des environnements IT existants, sans avoir à apprendre ou déployer des outils complètement nouveaux. Par exemple, certaines organisations peuvent choisir de l’utiliser comme une extension à leurs outils de gestion de données déjà en place, renforçant ainsi leur efficacité sans réinventer complètement leurs infrastructures.
Vers un futur cloud natif
Depuis sa création, Irods a été adopté par de nombreux centres de supercalcul, des universités, ainsi que des industries diverses allant de la bio-informatique à la logistique. Grâce à sa flexibilité, il permet une personnalisation avancée en fonction des besoins spécifiques de chaque domaine d'application. Par exemple, dans le domaine médical, il est utilisé pour gérer des données complexes comme les images issues d’équipements d’imagerie médicale. De plus, les politiques de sécurité et de traçabilité offertes par Irods sont un atout majeur pour respecter des régulations strictes telles que le HIPAA aux États-Unis ou les équivalents européens sur la protection des données personnelle.

Solution de type global file system, Irods distribue les données sur plusieurs centres si besoin.
Avec l'évolution rapide des technologies, Irods s'adapte aux nouveaux besoins des entreprises. L'une des priorités futures de l’équipe de développement est de rendre la plateforme compatible avec les environnements cloud natif tout en conservant sa robustesse pour les déploiements locaux. Les plans incluent l'intégration avec des technologies populaire chez les développeurs comme Kubernetes, ainsi que l'introduction d'outils de suivi en temps réel pour mesurer l'utilisation des données et générer des statistiques. En parallèle, le consortium explore la possibilité d'ajouter des fonctionnalités de tableau de bord pour faciliter la visualisation des flux de données et des coûts associés.
Irods s’impose aujourd'hui comme une solution à considérer pour les organisations cherchant à gérer de grandes quantités de données de manière plus efficace, flexible et sécurisée. Son modèle open source permet aux utilisateurs de bénéficier d'une technologie en constante évolution, capable de s'adapter aux infrastructures technologiques les plus variées. Reste que le support n'est pas au niveau des concurrents dit commerciaux.


