Přístupnostní navigace
E-přihláška
Vyhledávání Vyhledat Zavřít
diplomová práce
Autor práce: Ing. Ondřej Šulc
Ak. rok: 2022/2023
Vedoucí: Ing. Jiří Hynek, Ph.D.
Oponent: Ing. Vladimír Bartík, Ph.D.
Tato práce se zabývá optimalizací zpracování dat z IoT senzorů chytrých měst do podoby klíčových indikátorů výkonu (zkr. KPI). KPI jsou prostředkem pro monitorování velkého množství dat a vyjádření stavu výkonnostních faktorů, ovlivňujících prosperitu celého města. Zpracování dat do této podoby je výpočetně náročný proces, který se ale skládá z velkého množství vzájemně nezávislých výpočtů. Cílem této práce tedy bylo provést optimalizaci využitím paralelizace. Při paralelním zpracování lze výpočty rozdělit mezi více vláken a mohou tak být plně využívány všechny dostupné výpočetní prostředky (jádra CPU). Tento koncept byl prakticky implementován v projektu Smart City od firmy Logimic. Projekt je ovšem vybudován na platformě Node.js a při využití paralelizace dochází ke komplikacím s využíváním knihoven pro objektově relační mapování (zkr. ORM). Knihovny pro ORM na platformě Node.js nejsou vždy připraveny pro fungování v paralelním prostředí. Problém je v práci řešen vytvořením samostatné instance použité knihovny pro každé paralelní vlákno. Práce se zaměřuje na snížení režie s tím spojené a také na správné rozdělování práce mezi paralelní vlákna, aby docházelo k rovnoměrnému využití všech jader. Výsledky této práce dokazují, že optimalizace zpracování dat z IoT využitím paralelizace vede k významnému zrychlení, které odpovídá Amdahlovu zákonu, protože problémy s režií je možné snížit na zanedbatelné minimum.
klíčové indikátory výkonu, KPI, chytrá města, internet věcí, IoT, databázové systémy, objektově relační mapování, ORM, optimalizace, paralelizace, multithreading, Typescript, Node.js
Termín obhajoby
22.06.2023
Výsledek obhajoby
obhájeno (práce byla úspěšně obhájena)
Klasifikace
A
Průběh obhajoby
Student nejprve prezentoval výsledky, kterých dosáhl v rámci své práce. Komise se poté seznámila s hodnocením vedoucího a posudkem oponenta práce. Student následně odpověděl na otázky oponenta a na další otázky přítomných. Komise se na základě posudku oponenta, hodnocení vedoucího, přednesené prezentace a odpovědí studenta na položené otázky rozhodla práci hodnotit stupněm A.
Otázky k obhajobě
Jazyk práce
čeština
Fakulta
Fakulta informačních technologií
Ústav
Ústav informačních systémů
Studijní program
Informační technologie a umělá inteligence (MITAI)
Specializace
Kybernetická bezpečnost (NSEC)
Složení komise
doc. Dr. Ing. Petr Hanáček (předseda) prof. RNDr. Alexandr Meduna, CSc. (člen) prof. Ing. Jiří Jaroš, Ph.D. (člen) Ing. Vladimír Veselý, Ph.D. (člen) Ing. Ondřej Kanich, Ph.D. (člen) Mgr. Ing. Pavel Očenášek, Ph.D. (člen)
Posudek vedoucíhoIng. Jiří Hynek, Ph.D.
Student ke své práci přistupoval svědomitě, dokázal pracovat samostatně a vytvořil použitelné řešení, díky kterému výrazně zefektivnil zpracování dat z chytrých zařízení v systému firmy Logimic. Výsledky byly publikovány. Navrhuji hodnocení stupněm A.
Zadání vzniklo ve spolupráci s firmou Logimic. Cílem bylo analyzovat a optimalizovat současný způsob výpočtů tzv. klíčových identifikátorů výkonu (KPI) z dat získaných z chytrých zařízení. Student musel důkladně prostudovat proces ukládání dat do databáze InfluxDB a následné agregace těchto dat do relační databáze PosgtreSQL nasazené na platformě AWS. Dále se musel důkladně seznámit problematikou objektově relačního mapování (knihovnou TypeORM), prostředím NodeJS a možnostmi paralelních výpočtů, které byly použity pro optimalizaci výpočtu KPI. Zadání hodnotím jako složitější. Bylo splněno ve všech jeho bodech.
Student prostudoval doporučenou literaturu a aktivně si vyhledával další zdroje týkající se zejména databázových systémů, principů paralelizace, KPI a použitých technologií.
Student komunikoval během celého akademického roku. Konzultace probíhaly online s vedoucím práce a Ing. Františkem Mikulů z firmy Logimic. Dále se mimo jiné aktivně zapojil i do dalších diskusí firmy týkajících se dané problematiky. Student řádně plnil zadané úkoly a práce postupovala dobrým tempem.
Práce byla dokončena v předstihu, a mohla tak být řádně konzultována s vedoucím práce a vývojáři firmy Logimic.
Způsoby využití paralelizace byly prezentovány formou posteru na konferenci Excel@FIT 2023.
Známka navržená vedoucím: A
Posudek oponentaIng. Vladimír Bartík, Ph.D.
Celkově práci hodnotím jako nadprůměrnou, nedostatky jsou pouze drobné, jinak je technická zpráva i realizační výstup kvalitní. Navrhuji proto hodnotit tuto práci stupněm B (velmi dobře).
Stupeň hodnocení: průměrně obtížné zadání
Zadání pro externího zadavatele vyžadovalo prozkoumání způsobu výpočtu KPI v jejich systému pracujícím s daty IoT zařízení a pokusit se o zefektivnění tohoto výpočtu, které by umožnilo navýšit počet KPI, které by současně mohly být počítány. Zadání bylo náročné díky nutnosti důkladně prozkoumat stávající řešení a vyzkoušet různé možnosti paralelizace těchto výpočtů.
Stupeň hodnocení: zadání splněno
Všechny body zadání byly splněny.
Stupeň hodnocení: je v obvyklém rozmezí
Rozsah technické zprávy splňuje předepsané požadavky.
Technická zpráva je psána srozumitelně, organizace kapitol a jejich návaznost je v pořádku. Celé řešení je popsáno a vyhodnoceno velmi pečlivě a přínos vytvořeného řešení je tak zřejmý. V práci bych ocenil podrobnější vysvětlení některých údajů ukládaných v databázi a v kapitole popisující samotné řešení bych místo poměrně rozsáhlých ukázek zdrojového kódu ocenil spíše slovní vysvětlení některých konstrukcí. To však jsou jediné menší nedostatky, jinak hodnotím prezentační úroveň kladně.
Formální úpravu hodnotím také jako nadprůměrnou, chyb v textu a překlepů je minimální množství, typogtafické nedostatky se v technické zprávě prakticky nevyskytují.
Z hlediska výběru studijní pramenů a práce s literaturou nevidím v práci žádné pochybení, vlastní výsledky jsou v práci jasně odlišeny od převzatých a z hlediska splnění norem je také vše v pořádku.
Realizačním výstupem je upravené řešení pro výpočet KPI v systému Smart Cities. Optimalizace byla realizována paralelizací celého výpočtu, ale i drobnými úpravami schématu databáze a přesunutím některých výpočtů do jiných částí kódu. Přínos celého řešení byl ověřen díky experimentům, které jsou v práci také popsány a vyhodnoceny.
Výsledky práce využije především firma, která je zadavatelem práce. Díky výsledkům bude možné provést výpočet většího počtu KPI v rozumném čase.
Známka navržená oponentem: B
Odpovědnost: Mgr. et Mgr. Hana Odstrčilová