BioMAJ
BioMaJ (Biologie Mise A Jour) est un moteur de workflows dédié à la synchronisation puis au traitement de données. L’application peut gérer une masse de données importante et des workflows de post-traitements relativement complexes: typiquement, l'indexation de banques de données peut constituer un post-traitement. Une des motivations de son développement a été la mise en place d'une démarche qualité pour la maintenance des données de séquence biologiques.
Initialement conçue pour traiter des données de biologie, BioMaJ est généraliste et peut être utilisée dans tout domaine ayant à gérer des données massives et distribuées, qui nécessitent des consolidations puis des traitements.
Elle peut également être utilisée simplement pour synchroniser les données entre un appareillage disposant d’un server ftp et un serveur central unix: l’avantage est alors une traçabilité complète des sessions réalisées. Enfin dans un autre registre BioMaJ peut être utilisé pour déployer des données sur une frontale de calcul en vue de leur traitement. Ce mode d'utilisation est maintenant facilité par son interface graphique (biomajwatcher), qui permet selon son groupe et ses droits :
- d’administrer,
- de consulter,
- de post-traiter,
- ou de planifier la mise à jour de source de données publiques (visibles de tous) ou privées (visibles uniquement d'un utilisateur ou d'un groupe)
L'application est disponible pour les principales distributions linux.
- Synchronisation
- Support de protocoles variés (ftp, sftp, rsync , local copy, AmazonS3, Http direct URL download)
- Sélection de tout ou parti des données de la source via des expressions régulières.
- Reprise sur erreur lors de la synchronisation et des post-traitements
- Vérification de l'intégrité des données transférées
- Multi threading
- Normalisation de l'organisation des versions et des données
- Post processing
- Formalisme facile mais avancé de description de workflows (D.A.G)
- Post-process d'indexation prêts à l'emploi pour de multiples applications bioinformatiques (blast, srs, fastacmd, readseq, etc.)
- Intégration aisée de script de post- traitements personnel dans le langage de votre choix
- Supervision
- interface d'analyse des log
- Génération automatique de rapports d'exploitation du logiciel au format html
- incluant différentes statistiques représentées sous forme de Graphes, notamment :
- de suivi d'évolution du dépôt global
- de suivi d'évolution individuelle pour chaque source maintenue
- Envoi d'un courriel lors de l'exécution d'un cycle de mise à jour
- Interrogation en ligne du contenu du dépôt
Un éventail important de fichiers de description de workflows pour la récupération et l'indexation de banques de données biologiques est disponible sur le site du projet (Genbank, PDB, EMBL, Swissprot, génomes complets, tant eucaryotes que procaryotes, ....). Des scripts d'indexation ou de conversion de format pour une dizaine d'outils bioinformatiques sont également mis à disposition.
la dernière version inclut des nouvelles interfaces pour :
* la consultation et l'administration (Bmajwatcher)
* la maintenance de banque privées visible par un utilisateur
* le déport automatique de calcul de post-processus via un système de queue
* la gestion des dépendances entre banques
* une interface permettant la planification des mises à jours de banques
* l'application supporte maintenant la connexion aux cloud Amazon et google
BioMAJ est compatible avec les OS de base UNIX disposant de java 1.6.x et ant 1.7.
BioMAJ n'est pas compatible avec les OS Microsoft car l'application utilise des liens symboliques ( sur des fichiers et des répertoires).
BioMaJ est déjà utilisée par trois plates-formes bioinformatique depuis 2007, ou il maintient environ une soixantaine de banques biologiques (genbank , embl, swissprot, genomes, pdb ...) occupant plusieurs Téraoctets.
En résumé BioMaJ permet de:
- Réaliser le mirroring de données distantes ou locales
- Automatiser des traitements sur les données (via des post-processus fournis ou vos propres script de traitement)
- Si on inverse le référentiel, l'application peut être utilisée pour déployer des données en vue de leur traitement sur un serveur distant
- Il peut être aussi utilisé pour maintenir la mise à jour de logiciel non distribué sous aptitude ou yum
Vous pouvez consulter un rapport d'exécution en cliquant ici.
- Le mode block de rsync n'est pas supporté.