Les leçons de Babar Stéphane Plaszczynski LAL CNRS/IN2P3 Inspiré par: A.M Lutz, J.N Albert, D. Boutigny Journées Informatiques In2p3/Dapnia - Cargèse 23-28 Juillet 2001
Les leçons de Babar BaBar: contraintes et choix Objectivity CC-in2p3 TIER A 2
1.Babar: les contraintes Volume des données Babar = «usine à B» à SLAC 100 Hz(L3) X30 semaines 2 10 8 evts physique/an L = 3 10 33 cm -2 s -1 atteinte très rapidement (fin 2000) (4 mois BaBar» 5 ans LEP) doublement attendu tous les ans 2001 : >3 10 33 cm -2 s -1 2002 : 6 10 33 2004 : 1.5 10 34 Données réelles 2000 : 138 Tb (307 kb/evt) à SLAC Simulation: 55 Tb (592 kb/evt) en principe 3-5 fois les données 3
Babar: les contraintes Collaboration très large et dispersée USA-Canada-Europe 100 instituts 500 physiciens 6 pays européens (France, Italie, GB, Allemagne, Russie, Norvège) 4
Les choix Tout C++ (possibilité de wrapping F77) Outils commerciaux: Objectivity Rogue-Wave (STL) 1 ère exp HEP de grande envergure: peu/pas d expérience + planning serré (pas vraiment de comparaisons) 5
C++ Passage difficile des physiciens («pourquoi?») Peu/pas de design OO Pas d outil de conception (Rose ) Manque de formation Utilisation de «gadgets» C++ Peu/pas de documentation Peu/pas optimisation CPU Problèmes de portabilité : compilateurs natifs (abandon HP,AIX: Sun+Linux(+OSF) dichotomie physiciens/ experts soft JAVA? 6
Les choix de BaBar (1) Production des données données réelles : tout à slac «prompt reconstruction» (~) en ligne (OPR) actualisation en ligne des calibrations filtrage en ligne données simulées : production répartie sur collaboration puis centralisées à slac uniformisation? contrôle de qualité? 7
Les choix de BaBar (2) Stockage des données Tout dans Objectivity (Objy) structuration/éclatement des données («clustering») accès hiérarchisé aux données par degré de détail «Raw,Reco,(Mini),Micro,Tag» 8
Les choix de BaBar (4) distribution des données Transferts minimaux ( GB, Italie, Univ. US...): micro-dst ROOT seulement exception : cc-in2p3 «site miroir» de slac copie des micros (données+sim) sous Objy. 2000:18 Tb Les REC non disponibles à Lyon! Transferts massifs TIER A 9
Les choix de BaBar (5) Distribution du code CVS (packages/versions, package coordinators, commits publics) SoftRelTools (notion de releases et de «builds», outils et makefiles standard) «releases» fréquentes (1/quinzaine). ensemble complet des packages (sources+lib+dependances) +bin 2.5 GB/release (Sun) Compilation automatisée (+mails) mises à jour bases de données «condition database» (calibrations, alignements) très important en 1999 (démarrage de l expérience) 10
Les choix de BaBar (6) stratégies de communications hypernews (centralisées à slac) www (centralisé à slac) audio-meetings importance cruciale des réseaux 11
Du stockage a l analyse des données Donnees (xtc) OPR Données calibrations Objy ROOT utilisateur Beta Analyse ntuples Skims (collections) 12
Simulation Donnees (xtc) OPR Donnees calibrations Skims (collections) Objy ROOT utilisateur Beta Analyse ntuples Geant 4 Geant 3 (xdr) Mix r Objy 13
Online Prompt Reco Datamover Datamover Datamover 0.5Tb 0.5Tb 0.5Tb 0.5Tb Input 0.5Tb Locks 0.5Tb RAW Journal 0.5Tb Metadata CPU Pilot Objectivity HPSS 14
Online Prompt Reconstruction 15
2.Ojectivity Technologie nouvelle dans la communauté Démarrage tardif Pas de réelles comparaisons Produit commercial: impossibilité de toucher au code source! Produit inadapté a l environnement (JNA) Pas d accord (DB) beaucoup d énergie investie pour plier le produit aux besoins de l expérience 16
Accès aux données AMS Objy server (2Tb) AMS Objy server (2Tb) Lock server Mon job Objy server (2Tb) AMS Objy server (2Tb) AMS federation journal Socket Objy HPSS 17
Problèmes occasionnels Crash d un AMS Crash lock server Locks mal «enlevés» La plupart de ces problèmes résolus (?) Gestion HPSS pour plusieurs utilisateurs accédants au même AMS Fuites de mémoire Objy Crashs imprédictibles des jobs 18
Désillusions Abandon de plate-formes (Objy= compilateurs natifs) Abandon de l unicité de la BD Fédérations de reconstruction, analyse, simulation Pas de connexions entre fédérations (super-fédérations?) Lourdeur des transferts de données (en amélioration) Abandon de la connexion entre sites Pas de stockage de données utilisateurs 19
Base de données vs. Deux concepts distincts Base de données Persistance Persistance Base de données= cohérence clustering Protections Sécurité Récupération d erreurs Besoin de tout ça pour lire des données? 20
Conduit a. Taille des evts (optimisation possible) Lenteur lors de l analyse Instabilités Imports/exports massifs Pas d accès au code source: couches Babar (gros investissement) Quand même: ~100 Millions evts analyses en ~30h (avec filtrage utilisateur et peu d autres utilisateurs) Mais ~10% crashs (chiffre officieux: varie entre 0 et 40% selon utilisateurs) 21
Un monde idéal? Stockage persistent des données: ROOT(?) Book-keeeping : Oracle(?) Calibrations en ligne (?) Collections Tags Objectivity 22
CC-In2p3: Tier A Structure d analyse complète Objy + spécificités régionales: Utilisation plus systématique de HPSS (tests en cours) RFIO plutôt que NFS BQS 130 CPU disponibles pour Babar (Linux+SUN) TierA: ouverture a toute la collaboration Hébergement d une partie complète (ie. une partie des RAW) des données 23
Network Connection between SLAC and IN2P3 (*) SNV ESnet CHI Micro Data PHYnet (Renater) SLAC Stanford Star Tap IN2P3 Internet 2 Bulk Data CERN 30-40 Mbps * From SCS Network Team 155 Mbps 622 Mbps 24
Exports/imports de donnees Export base sur BdbDistTools and + perl Import base Java: Jimport Outil efficace de transfert parallèle: bbftp (G. Farrache). Ligne 34 Mb/s Ligne 155 Mb/s 25
Monitoring des ressources 1 normalized CPU hour = 1 hour on an IBM 3090S processor ~ 10' on a PIII 750 MHz 26
Hébergement des données Actuellement: duplication x3 (22 streams) 27
Conclusions Babar peut (actuellement) reconstruire+analyser une grande masse de données. Mais extrapolations: volume énorme a attendre (Pbytes) C ++ OK (surtout pour la reconstruction): mais + formation design + documentation: l architecture doit être laissée aux experts! Utilisation d Objectivity a coûté énormément d efforts (de dernière minute) et causé plus de difficultés qu elle n en a résolues. Néanmoins satisfaisant pour les utilisateurs (actuellement) malgré des pbs de robustesse. Problème persistance à découpler de B.D: comparaisons! Cc-in2p3 en bonne forme pour suivre les flots de données et d utilisateurs 28