80 likes | 211 Vues
Migrating CRISTAL from Objectivity to RDBMS. Andrew Branson University of the West of England CERN, 13/01/2014. CRISTAL. Production tracking system for CMS Project started 1996 Tracked construction of CMS ECAL Barrel, Endcap , ECAL Electronics, Preshower .
E N D
Migrating CRISTAL from Objectivity to RDBMS Andrew Branson University of the West of England CERN, 13/01/2014
CRISTAL • Production tracking system for CMS • Project started 1996 • Tracked construction of CMS ECAL Barrel, Endcap, ECAL Electronics, Preshower. • Ran at CERN and other sites, or imported data from other remote construction software • Extremely object-oriented concept. • Objectivity was an obvious choice.
CRISTAL 1 • Objectivity-based prototype (CRISTAL 1) completed 2000 • Collected prototype data: • Crystals and test ECAL modules at CERN and INFN, Rome • APD capsules at IN2P3, Lyon. • C++ backend, Java UIs. • Heavily integrated with OO DB, required extensive re-engineering to migrate to alternative database.
Redesign • Prototype had design problems. • Object DBs had failed to catch on, support waning at CERN. • Large amount of work to remove Objectivity. • Small amount of production data to migrate. • Decision made to redesign and redevelop from scratch
CRISTAL 2 • Production system deployed August 2003 • Storage still object based, but with abstraction layer. • Plugins for Oracle, MySQL, SQLite. • Fall-back XML file serialization.
CRISTAL 2 • Application design implemented using descriptions - metamodels. • XML (text) based. Portable, human readable. • Self-documenting, web standards (XSD) • Some preservation against technology obsolescence • Investigating migrating to XMLDB for enhanced query capability.
Conclusion Technology dependency comes in two flavours: • Dependency on Implementation • Prevent redesign through abstraction. • Small, self-contained redevelopment when obsolete. • Dependency on Philosophy • Could require large re-engineering. • Only protection is to safeguard data, schema and logic in a documented form that could be reinterpreted in the future.