Abstract

We will describe a component of the Intelligent Data Delivery Service being developed in collaboration with IRIS-HEP and the LHC experiments. ServiceX is an experiment-agnostic service to enable on-demand data delivery specifically tailored for nearly-interactive vectorized analysis. This work is motivated by the data engineering challenges posed by HL-LHC data volumes and the increasing popularity of python and Spark-based analysis workflows. ServiceX gives analyzers the ability to query events by dataset metadata. It uses containerized transformations to extract just the data required for the analysis. This operation is colocated with the data to avoid transferring unnecessary branches over the WAN. Simple filtering operations are supported to further reduce the amount of data transferred. Transformed events are cached in a columnar datastore to accelerate delivery of subsequent similar requests. ServiceX will learn commonly related columns and automatically include them in the transformation to increase the potential for cache hits by other users. Selected events are streamed to the analysis system using an efficient wire protocol that can be readily consumed by a variety of computational frameworks. This reduces time-to-insight for physics analysis by delegating to ServiceX the complexity of event selection, slimming, reformatting, and streaming.

Highlights

  • Transformed events are cached in a columnar datastore to accelerate delivery of subsequent similar requests

  • Data organization in HEP experiments often follows a standard workflow, starting from raw detector data or simulated data, which is processed by reconstruction algorithms into higherlevel physics objects

  • This reconstructed data is stored in ROOT files in a nested branch structure and used as input to analysis software to produce physics insights

Read more

Summary

ServiceX overview

ServiceX, a part of the IRIS-HEP Data Organization, Management, and Access (DOMA) effort, is an experiment-agnostic service that seeks to address these problems by enabling on-demand data delivery, tailored for nearly-interactive, high performance arraybased and Pythonic analyses. It provides uniform backend interfaces to data storage services and frontend (client-facing) service endpoints for multiple different data formats and organizational structures. It is capable of retrieving and delivering data from data lakes, using Rucio to find and access the data. The service is capable of on-the-fly data transformations to enable data delivery in a variety of different columnar formats, including small flat ROOT files and streaming Apache Arrow buffers. ServiceX includes pre-processing functionality for event data and preparation for clustering frameworks (e.g. Apache Spark). It will be able to automatically unpack compressed formats, potentially using hardware accelerated techniques, and will prefilter events so that only useful data is transmitted to the user

ServiceX features
Simple transform requests
ServiceX architecture
Python transformers
What’s next?
Full Text
Paper version not known

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call

Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.