Wann?
2004 - 2012Verwendete Technologien?
- C++
- Python
- Oracle
- MySQL
- SQLite
Das COOL-Projekt – COnditions Objects for LHC (Large Hadron Collider) – wurde am Europäischen Zentrum für Elementarteilchenphysik im Rahmen der Software für den Large Hadron Collider entwickelt. Der LHC wird gegenwärtig am Europäischen Zentrum für Elementarteilchenphysik (CERN) betrieben und stellt das weltweit größte Instrument zur Forschung auf dem Gebiet der Elementarteilchenphysik dar.
COOL zielt darauf ab, den LHC-Experimenten eine einheitliche Programmierschnittstelle (API) für die Verwaltung sogenannter “Conditions”-Daten (Zustandsdaten) zur Verfügung zu stellen. Im Gegensatz zu “Event”-Daten (Ereignisdaten), die Informationen über die Detektormessungen eines Teilchendurchgangs durch die Instrumente - ein sogenanntes “Ereignis” - enthalten, registrieren “Conditions”-Daten den Zustand des Detektors selbst. Es gibt viele verschiedene Arten von Zustandsdaten, beispielsweise die Detektorgeometrie, Messungen von Kontrolldaten wie Temperaturen und Spannungen, sowie Ausrichtungs- und Kalibrationskonstanten, die aus Messdaten berechnet werden.
Der Umfang (z.B. in Bytes) von Zustandsdaten ist typischerweise um einige Größenordnungen geringer als der von Ereignisdaten. Dennoch sind sie von großer Bedeutung, denn sie werden für die sinnvolle Rekonstruktion und Analyse eines Ereignisses aus den Ereignisdaten benötigt.
Die Haupteigenschaft von Zustandsdaten ist ihre zeitliche Veränderlichkeit. Jede Information von Zustandsdaten beschreibt den Zustand des Detektors zu einem gewissen Zeitpunkt und hat ein Gültigkeitsintervall, ein sogenanntes “interval of validity” (IOV). Die Länge dieses Intervalls hängt in der Regel von der Art der Daten ab und kann von Sekunden und Minuten im Fall von Umgebungsdaten wie Temperatur und Druck bis zu Monaten und Jahren im Falle der Detektorgeometrie reichen.
Zusätzlich zu ihrer zeitlichen Veränderlichkeit können Zustandsdaten auch in verschiedenen Versionen vorliegen. Dies ist typischerweise bei berechneten Größen wie Kalibrations- oder Ausrichtungskonstanten der Fall. Die conditions-Datenbank verwaltet neben der zeitlichen Gültigkeit auch die unterschiedlichen Versionen von Zustandsdaten.
Die COOL-API wird in vielen Bereichen innerhalb der LHC-Experimente eingesetzt, beispielsweise im Rahmen der Datennahme oder der Ereignisrekonstruktion.
Allein im Rahmen des ATLAS-Experiments (eines der vier Experimente am LHC) wurden pro Jahr mehrere hundert Gigabyte an Zustandsdaten über die COOL-API aufgezeichnet und verwaltet. In der Produktionsumgebung liefert das System mehreren tausend Clients gleichzeitig Zugriff auf diese Daten.
Der Beitrag des abstracture-Teams zum Design und zur Entwicklung der COOL-API beträgt rund 50% des Gesamtaufwands.