OODIDA (On-board/Off-board Distributed Data Analytics) is a platform for distributing and executing concurrent data analytics tasks. It targets fleets of reference vehicles in the automotive industry and has a particular focus on rapid prototyping. Its underlying message-passing infrastructure has been implemented in Erlang/OTP. External Python applications perform data analytics tasks. Most work is performed by clients (on-board). A central cloud server performs supplementary tasks (off-board). OODIDA can be automatically packaged and deployed, which necessitates restarting parts of the system, or all of it. This is potentially disruptive. To address this issue, we added the ability to execute user-defined Python modules on clients as well as the server. These modules can be replaced without restarting any part of the system and they can even be replaced between iterations of an ongoing assignment. This facilitates use cases such as iterative A/B testing of machine learning algorithms or modifying experimental algorithms on-the-fly.
@article{arxiv.1910.03575,
title = {Active-Code Replacement in the OODIDA Data Analytics Platform},
author = {Gregor Ulm and Emil Gustavsson and Mats Jirstrand},
journal= {arXiv preprint arXiv:1910.03575},
year = {2020}
}
Comments
6 pages, 2 figures; Published in Euro-Par 2019: Parallel Processing Workshops proceedings; DOI was added to the PDF. There is also an extended version of this paper, cf. arXiv admin note: text overlap with arXiv:1903.09477