Active-Code Replacement in the OODIDA Data Analytics Platform

03/22/2019
by   Gregor Ulm, et al.
0

OODIDA (On-board/Off-board Distributed Data Analytics) is a platform for distributing and executing concurrent data analysis tasks. It targets a fleet 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, but the external applications for user interaction and carrying out data analysis tasks use a language-independent JSON interface. These applications are primarily implemented in Python. A data analyst interacting with OODIDA uses a Python library. The bulk of the data analytics tasks are performed by clients (on-board), while a central 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 both the client and the server, which can be replaced without restarting any part of the system. Modules can even be swapped between iterations of an ongoing assignment. This facilitates use cases such as iterative A/B testing of machine learning algorithms or deploying experimental algorithms on-the-fly. Active-code replacement is a key feature of our system as well as an example of interoperability between a functional and a non-functional programming language.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
02/01/2019

OODIDA: On-board/Off-board Distributed Data Analytics for Connected Vehicles

Connected vehicles may produce gigabytes of data per hour, which makes c...
research
09/22/2020

From Things' Modeling Language (ThingML) to Things' Machine Learning (ThingML2)

In this paper, we illustrate how to enhance an existing state-of-the-art...
research
02/18/2021

A Unified System for Data Analytics and In Situ Query Processing

In today's world data is being generated at a high rate due to which it ...
research
12/01/2020

Python Workflows on HPC Systems

The recent successes and wide spread application of compute intensive ma...
research
01/29/2023

Data accounting and error counting

Can we infer sources of errors from outputs of the complex data analytic...
research
08/24/2018

Functional Federated Learning in Erlang (ffl-erl)

The functional programming language Erlang is well-suited for concurrent...
research
03/17/2021

PythonFOAM: In-situ data analyses with OpenFOAM and Python

In this article, we outline the development of a general-purpose Python-...

Please sign up or login with your details

Forgot password? Click here to reset