1 / 21

Hybrid Event Store Integration with Athena/StoreGate

Hybrid Event Store Integration with Athena/StoreGate. ATLAS Software Week Event Data Model and Detector Description Session. David Adams BNL March 5, 2002. Contents. Introduction Athena/HES components HES StoreView StoreSvc Proxy DataHandle StoreGateSvc DataLink AHesView

lelia
Download Presentation

Hybrid Event Store Integration with Athena/StoreGate

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Hybrid Event Store Integration with Athena/StoreGate ATLAS Software Week Event Data Model and Detector Description Session David Adams BNL March 5, 2002

  2. Contents • Introduction • Athena/HES components • HES • StoreView • StoreSvc • Proxy • DataHandle • StoreGateSvc • DataLink • AHesView • Tasks and schedule HES in Athena SW week – EDM session

  3. Athena/HES components • Figure • The following page shows selected components of Athena and HES and their physical dependencies. • The Athena/StoreGate components (DataLink,…) shaded in blue are new or will have to be modified to integrate HES into Athena/StoreGate. • These are discussed in the following sections. HES in Athena SW week – EDM session

  4. Athena/HES components (cont) HES in Athena SW week – EDM session

  5. HES • Definition • Define a subsystem called HES which has no dependencies on StoreGate, Athena or Gaudi. • HesView is the top of this subsystem. • This subsystem will be discussed in the DB meeting on Thursday. • Links to this talk and that one can be found on the hybrid web page • http://www.usatlas.bnl.gov/~dladams/hybrid HES in Athena SW week – EDM session

  6. StoreView • Purpose • StoreView is a new abstract interface which allows Athena to interact with different persistent stores in a generic manner. • Each persistent storage mechanism to be used in Athena will provide an implementation of this interface. • HES • ZEBRA • Objectivity? HES in Athena SW week – EDM session

  7. StoreView (cont) • Interface • Select the next event ID. • Read an input event • Identify the included type-keys and create proxies in StoreGate • Locate the data (on demand from proxy) for any of these EDO’s • Write an output event • Take ownership of selected new EDO’s • (add EDO ID to proxy) • Write EDO’s to selected output streams HES in Athena SW week – EDM session

  8. StoreView (cont) • Configuring a job • The choice of store view (or views) and their configuration is made at run time using Gaudi JobOptions • StoreView is a Gaudi service • No physical dependence on concrete implementation except that library must be provided at run time HES in Athena SW week – EDM session

  9. StoreSvc • Purpose • StoreSvc provides the interface between the store views and the rest of Athena/StoreGate • StoreSvc holds one or more store views • Requests are fulfilled by forwarding to a selected view or looping over all views. • Each view is assigned an ID called store ID. HES in Athena SW week – EDM session

  10. StoreSvc (cont) • Interface for reading • Assign the next event ID • Pass request to a designated store • Or assign in some other manner (e.g. user input) • Define input event • Loop over store views • Fetch data • Given a proxy for an EDO that has not be located, • identify the appropriate view and • ask the view to locate the EDO HES in Athena SW week – EDM session

  11. StoreSvc (cont) • Interface for writing • Stream selection • Run selection algorithms and notify views which streams should be written. • EDO ownership • Give each view the opportunity to take ownership of EDO’s in StoreGate. • Writing data • Give each view the option to to write EDO’s from StoreGate (or from that view). HES in Athena SW week – EDM session

  12. StoreSvc (cont) • Configuring a job • Configure in job options • StoreSvc is a Gaudi service • No physical dependency on Athena/StoreGate HES in Athena SW week – EDM session

  13. Proxy • Purpose • The transient data store (StoreGateSvc) “holds” EDO’s by proxy. • This allows us to • Defer output conversion until all data is produced and selections are made • Defer input conversion until data is accessed • HES environment • It is sensible to also defer location on input • Some data may not be accessible HES in Athena SW week – EDM session

  14. Proxy (cont) • Proxies will be modified for HES • From persistent store, there will be four states: • No data; proxy has type, key, store ID and EDO ID • Above plus IOpaqueAddress (EDO located) • Above plus transient address (EDO converted) • Marked inaccessible (EDO cannot be located) • For proxies from transient store, it will be possible to assign ownership (EDO ID). • Proxy uses StoreSvc to locate EDO when desired. HES in Athena SW week – EDM session

  15. DataHandle • Current usage • A data handle is returned when a user asks StoreGate for an EDO. • Conversion may be deferred. • Changes (implied by change in proxy) • Location may also be deferred. • DataHandle may be invalid because the EDO cannot be located. HES in Athena SW week – EDM session

  16. StoreGateSvc • Purpose and current implementation • StoreGateSvc is the transient data store. • Single instance holds data (by proxy) for current event. • Pileup adds more • Given a type and key, StoreGate returns a DataHandle for the corresponding EDO • Any type-key may not be duplicated in the store HES in Athena SW week – EDM session

  17. StoreGateSvc (cont) • Changes • One instance will hold proxies for visible data • Directly accessed from algorithms • Other(s) will hold proxies for data which is accessible (by reference) but not visible. • Request for data from DataLink will include EDO ID in addition to type-key. • Only EDO with matching ID is returned. • Someone has to search the other transient stores if match is not found in the visible store • Visible store knows the reference stores? HES in Athena SW week – EDM session

  18. DataLink • Purpose and current implementation • DataLink provides a persistent mechanism to reference objects in other EDO’s. • Persistent data includes: • EDO specifier and • index specifying the location of object in EDO. • At present, EDO specifier is the type and key and an event ID implied by context. • Any StoreGate EDO with matching type and key can serve as the reference EDO HES in Athena SW week – EDM session

  19. DataLink (cont) • Changes: • In the new model, we explicitly recognize that persistent store may hold multiple EDO’s with the same event ID, type and key. • Persistent data for the DataLink will also include the ID of the referenced EDO. • May also need to add (transient) store ID to resolve EDO ID ambiguities between different store types. HES in Athena SW week – EDM session

  20. AHesView • Implementation of StoreView for HES • Depends on both Athena/StoreGate and the HES core software. • Creates proxies • Puts proxies in StoreGate • Calls converters to write data • See talk at DB session for information on the HES core. HES in Athena SW week – EDM session

  21. Tasks and schedule • Requirements • Sufficient functionality to use HES as the primary storage mechanism for DC1-2. • We would like a first implementation by June1. • Estimate the Athena/HES piece will require 7FTE-weeks for this implementation. • 2X contingency • We need to adjust priorities to meet this schedule. HES in Athena SW week – EDM session

More Related