On-board vehicle data analysis An evaluation of possibilities using stream processing on an on-board low-powered computer

Automotive vehicles have had an extensive journey in development, from simple mechanical parts in the early days to complex systems built up by several dozens of computers and thousands of sensors. The technical development has increased the security both for people traveling in the car as well as people and animals in close proximity to the traffic. The new technology also allows additional features to be developed, such as vehicle-to-vehicle communication. Nevertheless, the technological development has not only increased the safety and user experience, it has also made the development, testing and verification processes more complex. Because of this, recording and analyzing sensor data to verify that the vehicle is working as intended is a necessary process today. When it comes to analyzing vehicle data a classic approach is to record, store and process data in batches. With this approach the vehicle would collect data over a period of time, eventually transfer the data to some storage facility and later a large batch of data would be processed. With vehicles connected to the internet the data could be streamed to the cloud in real time. This could not only reduce the lead time before an analysis can be made but also enable real time analysis. However, the store-and-process approach come with large demand for storage and compute resources as the data volume increases. The first approach is also not suitable for cases that require real-time results. While the latter approach is suitable for real-time analyses, it requires good cellular coverage and will infer large cost for data transfer. A third option is to run the analysis in the vehicle and only send the result to the cloud. With such approach, each vehicle would run an analysis on its own data and the results could be combined by compute resources in the cloud, performing a very large distributed analysis. This can allow use cases with real-time requirements and will reduce the amount of data that needs to be transferred. However, the computational resources in a vehicle is limited and it is not known how an on-board devices perform when it comes to analyzing data. This thesis focus on the latter approach with a goal of evaluating possibilities and constraints for analyzing data on-board on embedded, resource constrained hardware, using mainstream stream processing engine software.