Tegutsejate mudel Asjade Interneti hajusate rakenduste loomiseks servavõrgus Akka abil

Date

2019

Journal Title

Journal ISSN

Volume Title

Publisher

Abstract

Lähiaastatel oodatava Asjade Interneti seadmete hulga kasvuga kerkivad esile uued väljakutsed arvestades seadmete toodetud suuri andmemahtusid ja andmete efektiivse töötlemise vajadust. Pilve-põhised arhitektuurid, mis toetuvad kaugel asuvaile pilveserveritele andmete töötluseks, ei täida uue, dünaamilise Asjade Interneti vajadusi, kus mitmed seadmed peavad pidevalt üksteisega suhtlema ja reaalajaandmetöötlust teostama. Servaarvutuse mudel liigutab arvutused pilvest võrgu serva, andmeallikate lähedale, vähendades nii latentsust ja läbilaskevõime vajadusi võrgu jaoks tervikuna.Lisaks mängivad selles uues mudelis keskset rolli servaseadmed, hallates andmevoogude sisenemist ja väljumist ning varustades võrku arvutusliku võimekusega. Sealjuures on olemas võimalus jaotada arvutuslikku protsessi serva seadmete vahel laiali.Selles detsentraliseeritud mudelis on vajadus uue paradigma järele, mis taoliste hajusstsenaariumitega toime tuleks. Tegutsejate mudel (inglise k. actor model), mille arvutuslikeks baasüksusteks on tegutsejad, vastab hajuskeskkonna vajadustele arvestades teiste seas konkurrentsuse, veataluvuse ja skaleeruvuse nõuetega. Ainsaks suhtlusmehhanismiks tegutsejate vahel selles mudelis on sõnumite edastus, võimaldades konkurentset ja paralleelset arvutamist ilma lukustus- või lõime- turvalisusmehhanismideta. Akka tööriistakomplekt on tegutsejate mudeli implementsioon, mille platvorm pakub mooduleid ja teeke konkurrentsete ja hajusate rakenduste ehitamiseks. Käesolevas lõputöös kasutatakse Akka riistakomplekti rakendute arendamiseks servale, kasutades tegutsejate mudeli põhimõtet. Kergeid konteinertehnoloogiad Dockeri näol kasutatakse rakenduse juurutamiseks seadmete hajusvõrku, mis esindab servaseadmeid. Viimaks esitletakse Asjade Interneti süsteemi arhitektuuri koos implementatsiooniga, põhinedes juhtmevaba sensorvõrgu stsenaariumil, et demonstreerida rakenduste loomise teostatavust servas pilve-põhise lahenduse asemel.
With the upcoming wave of devices coming in the next few years to the Internet of Things (IoT), new challenges will arise with respect to the vast amount of data generated by these devices and the processing of all these data in an efficient manner. Cloud-centric architectures, that rely on the distant cloud for processing data, do not seem to fit the new requirements of this new dynamic Internet of Things, where multiple devices constantly need to interact with each other, handling real-time data processing. The edge computing model moves the computing from the cloud to the network edge, close to the source of data, reducing latency and bandwidth needs of the whole network among other benefits. Moreover, in this new model, edge devices play a central role, handling the incoming and outgoing of the data, and providing computation power to the network. Furthermore, there is the possibility to distribute the computation process among all edge devices. In this new decentralized model, a new paradigm is needed that can deal with this distributed scenario. The Actor model, which defines actors as its basic unit of computation, addresses the need of working in a distributed environment with requirements of concurrency, resiliency and scalability among others. Message passing is defined as the sole mechanism for interaction between actors in the model, allowing to perform concurrent and parallel computation without the need of locks or any thread-safe mechanisms. The Akka toolkit is an implementation of the Actor model which offers, through its platform, a series of modules and libraries than can be used to build concurrent and distributed applications. In this thesis, the Akka toolkit is used as an alternative for developing applications on the edge, applying the concept of the Actor model. Lightweight containerization through Docker is used to deploy the application on a distributed network of devices representing the edge devices. Finally, an IoT Akka system architecture is proposed along with its implementation, based on a Wireless Sensor Network IoT scenario, to demonstrate the feasibility of conceiving applications on the edge rather than using a cloud based approach.

Description

Keywords

Citation