ATLAS Job Monitoring adatok elosztott feldolgozása

OData támogatás
Konzulens:
Dr. Ekler Péter
Automatizálási és Alkalmazott Informatikai Tanszék

Ez a dolgozat a CERN-ben végzett munkám alapján készült, ahol Technical Student-ként töltöttem egy évet. A monitoring csapat tagjaként a fő feladatom a valós idejű és múltbeli statisztikákat számító, illetve a szimulációs feladatokat elosztó rendszer leváltása volt.

Ehhez a rendszerhez a Spark elosztott adatfeldolgozó keretrendszert választottuk, mint építőkövet, amire három különbözo alkalmazást fejlesztettünk Scala programozási nyelven.

Ezek az alkalmazások tesztelve lettek a saját klasztereinken, majd összehasonlítottuk az eredményeket a jelenlegi élesen futó párjukkal.

Ezen felül feladatkörömbe tartozott a virtuális gépek és a további adatkezelő vagy alkalmazásfuttató keretrendszerek konfigurálása és karbantartása, ilyen például az Apache Flume, Apache Kafka, Mesosphere Marathon, Mesosphere Chronos, és a Docker.

Munkám eredményeként jelenleg egy teljesen automatizált rendszer felügyeli, hogy a három Spark alkalmazás megfelelőképpen fut, naponta 30 gigabyte-nyi adatot feldolgozva, ezeken összesítéseket és kiegészítéseket végezve külső adathalmazokkal.

Az első fejezetben egy rövid ismertetőt szeretnék adni a projektről, és a CERN-nél található adatfeldolgozásról.

A második fejezetben az olvasó elé helyezem a problémát, és a javasolt megoldást, mely a munkám nagy részét képezte.

A Spark-ról és annak használatának történelméről a csapatunkban fogok írni a harmadik fejezetben, kezdve a legegyszerűbb kézi futtatástól egészen az erre szakosodott keretrendszerek alkalmazásáig.

A negyedik fejezet a bemenő adatok begyűjtéséről szól, illetve egy részletes bevezetést fogok adni a Flume használatáról, hogy miként nyerünk ki sorokat adatbázisokból és azokat hogyan küldjük tovább egyszerre több kimenetre.

Az ötödik fejezetben ismertetni fogom, hogyan működik az Oracle-ön alapuló jelenlegi éles rendszer, illetve a javasolt megoldásunk Spark feldolgozási egységeinek folyamatát, illetve bemutatom a Spark alkalmazást, mely a valós idejű monitoring adatokat egészíti ki értékes külső adatokkal.

Az ötödik utáni kettő fejezetben egy áttekintést adok a másik kettő Spark alkalmazásról, melyek a múltbeli adatokra alapozva különböző típusú statisztikákat számolnak.

A nyolcadik fejezetben beszámolok a különböző nehézségekről, melyekkel megbirkóztam a Spark keretrendszer használata során.

Végül az utolsó, kilencedik fejezetben egy rövid összefoglalót adok a munkáról, mely alapja ennek a dolgozatnak.

Letölthető fájlok

A témához tartozó fájlokat csak bejelentkezett felhasználók tölthetik le.