Duration: 3-6 months
Bell Labs has an opportunity for a student to join our Application Platforms and Software Systems research lab in Antwerp for an internship in the area of stateful stream processing.
The student will design, build and test a real time system state checker for an in-house distributed stream processing platform by post-processing log messages generated by various components of the platform.
The monitoring subsystem of our in-house distributed stream processing platform, collects log messages generated by different components of the platform. We would like to build a state-checker infrastructure that based on the collected log events, models the behavior of our platform; e.g. as a state machine with transitions that can be driven by such trace log events.
Building such tool involves addressing issues such as machine parsing of messages, multi-node synchronization (e.g. via logical clocks), modeling state machine behavior based on visible changes to the system, detecting the absence of events (e.g. timeout-based triggers),...
· The student will conduct a focused survey on related work and existing technologies
· Will design and implement his/her system model and state-checker
· Submit a final report and give a presentation to the research team
· Enrolled student in Master in Computer Science
· Familiarity with the following items is a plus
o distributed system concepts and tools (e.g. vector clocks, behavior modeling tools)
o regexp or equivalent text extraction tools
o log processing and management technologies (e.g. ELK stack)
o distributed tracing (e.g. OpenZipkin/OpenTracing)
· Language skills: a working proficiency of English
· Communication skills: be able to fluently present his work to a team of experts