Git Product home page Git Product logo

bachelor-thesis's Introduction

bachelor-thesis

This is a bachelor thesis written in 2019 for BSc Informatik, Goethe-Universität Frankfurt am Main

Abstract

This thesis aims at an explorative implementation of a real-time learning analytics engine based on Kafka and Kafka Streams. A real-time learning analytics engine should be able to make re- sults of analytics run on data by a multitude of sources available near the time of the data’s arrival in the system. Amongst these sources may be traditional relational databases as well as streams of data from sensors or micro-controllers. Such a learning analytics engine would allow for delivering observations and indications to actors in the learning environment whilst the relevant action itself is happening, enabling a fluent interaction of the system and its en- vironment. This thesis is concerned with building such a system. It consists of two parts, a conceptual and an implementation part. In the conceptual part, the κ-Architecture is under- stood as a derivation of the λ-Architecture. While requirements defined by aspects of big data as well as devops may be well met by the κ-Architecture, doubts regarding its use for a learning analytics engine are articulated. Given the Log-based conception of Kafka, problems of com- pliance with the GDPR are articulated, though not addressed further. Next, some conventions for the system are suggested and discussed, including naming patterns, data structures and data formats. This prepares the thesis’s second part, the implementation. A dockerized, hori- zontally scalable system based on Kafka and Kafka Streams applications will be implemented. The system processes two exemplary, heterogeneous sources of data, which differ with regard to the data’s velocity and to their processors’ complexity: Relations from a Moodle’s MySQL database represent a first class of data, frames from a leap motion sensor represent a second class. The results, some simple statistical evaluations made possible by joins and aggregations of several streams, will be presented in a continuous view.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.