Facilitating Rapid Prototyping in the OODIDA Data Analytics Platform via Active-Code Replacement

OODIDA (On-board/Off-board Distributed Data Analytics) is a platform for distributed real-time analytics. It targets fleets of reference vehicles in the automotive industry; its users are data analysts. The bulk of the data analytics tasks are performed by clients (on-board), while 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 step is potentially disruptive, however. 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; they can even be replaced between iterations of an ongoing assignment. This feature is referred to as active-code replacement. It facilitates use cases such as iterative A/B testing of machine learning algorithms or modifying experimental algorithms on-the-fly. As a consequence, OODIDA is now very well suited for rapid prototyping.
View on arXiv