TY - JOUR
T1 - Striped Data Server for Scalable Parallel Data Analysis
AU - Chang, Jin
AU - Gutsche, Oliver
AU - Mandrichenko, Igor
AU - Pivarski, James
N1 - Funding Information:
We would like to thank FAPESP (2009/11908-8, 2011/01434-9, 2009/16428-4, 2007/52015-0), CNPq (481556/2009-5, 201732/2007-6, 302617/2007-8), and the University of Campinas for the financial support, J. K. Udupa and the creators of the Grab-Cut and Berkeley datasets for the images and groundtruths.
Publisher Copyright:
© Published under licence by IOP Publishing Ltd.
PY - 2018/10/18
Y1 - 2018/10/18
N2 - A columnar data representation is known to be an efficient way for data storage, specifically in cases when the analysis is often done based only on a small fragment of the available data structures. A data representation like Apache Parquet is a step forward from a columnar representation, which splits data horizontally to allow for easy parallelization of data analysis. Based on the general idea of columnar data storage, working on the FNAL LDRD Project FNAL-LDRD-2016-032, we have developed a striped data representation, which, we believe, is better suited to the needs of High Energy Physics data analysis. A traditional columnar approach allows for efficient data analysis of complex structures. While keeping all the benefits of columnar data representations, the striped mechanism goes further by enabling easy parallelization of computations without requiring special hardware. We will present an implementation and some performance characteristics of such a data representation mechanism using a distributed no-SQL database or a local file system, unified under the same API and data representation model. The representation is efficient and at the same time simple so that it allows for a common data model and APIs for wide range of underlying storage mechanisms such as distributed no-SQL databases and local file systems. Striped storage adopts Numpy arrays as its basic data representation format, which makes it easy and efficient to use in Python applications. The Striped Data Server is a web service, which allows to hide the server implementation details from the end user, easily exposes data to WAN users, and allows to utilize well known and developed data caching solutions to further increase data access efficiency. We are considering the Striped Data Server as the core of an enterprise scale data analysis platform for High Energy Physics and similar areas of data processing. We have been testing this architecture with a 2TB dataset from a CMS dark matter search and plan to expand it to multiple 100 TB or even PB scale. We will present the striped format, Striped Data Server architecture and performance test results.
AB - A columnar data representation is known to be an efficient way for data storage, specifically in cases when the analysis is often done based only on a small fragment of the available data structures. A data representation like Apache Parquet is a step forward from a columnar representation, which splits data horizontally to allow for easy parallelization of data analysis. Based on the general idea of columnar data storage, working on the FNAL LDRD Project FNAL-LDRD-2016-032, we have developed a striped data representation, which, we believe, is better suited to the needs of High Energy Physics data analysis. A traditional columnar approach allows for efficient data analysis of complex structures. While keeping all the benefits of columnar data representations, the striped mechanism goes further by enabling easy parallelization of computations without requiring special hardware. We will present an implementation and some performance characteristics of such a data representation mechanism using a distributed no-SQL database or a local file system, unified under the same API and data representation model. The representation is efficient and at the same time simple so that it allows for a common data model and APIs for wide range of underlying storage mechanisms such as distributed no-SQL databases and local file systems. Striped storage adopts Numpy arrays as its basic data representation format, which makes it easy and efficient to use in Python applications. The Striped Data Server is a web service, which allows to hide the server implementation details from the end user, easily exposes data to WAN users, and allows to utilize well known and developed data caching solutions to further increase data access efficiency. We are considering the Striped Data Server as the core of an enterprise scale data analysis platform for High Energy Physics and similar areas of data processing. We have been testing this architecture with a 2TB dataset from a CMS dark matter search and plan to expand it to multiple 100 TB or even PB scale. We will present the striped format, Striped Data Server architecture and performance test results.
UR - http://www.scopus.com/inward/record.url?scp=85055788196&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=85055788196&partnerID=8YFLogxK
U2 - 10.1088/1742-6596/1085/4/042035
DO - 10.1088/1742-6596/1085/4/042035
M3 - Conference article
AN - SCOPUS:85055788196
SN - 1742-6588
VL - 1085
JO - Journal of Physics: Conference Series
JF - Journal of Physics: Conference Series
IS - 4
M1 - 042035
T2 - 18th International Workshop on Advanced Computing and Analysis Techniques in Physics Research, ACAT 2017
Y2 - 21 August 2017 through 25 August 2017
ER -