Big Data Processing API „Euphoria“ publikujeme jako opensource

V posledních letech se množí technologie pro zpracování velkých dat, které přináší zajímavé možnosti využití. Ke zpracování velké dávky dat (batch) se přidaly i možnosti zpracování v reálném čase, kdy data vznikají (stream). Robot vyhledávače zpracovává miliardy uložených webových stránek a zároveň denně stahuje obsah stovek milionů URL z internetu. Vždy hledáme ty nejvhodnější technologie pro výpočty, proto jsme na našich Hadoop clusterech vyzkoušeli řadu výpočetních frameworků pro velká data.

Abychom bez výrazné změny kódu výpočtu mohli vyměnit podkladový framework (runtime) za jiný, vytvořili jsme si nad jejich API vrstvu, ve které lze definovat datové operace, které se pro běh výpočtu přeloží do API použitého runtime. To nám umožňuje zkoušet nově vznikající frameworky a volit správný runtime pro tu kterou úlohu bez rizika, že v případě špatného rozhodnutí bude potřeba přepsat aplikační kód na jiné API.

Euphoria API navíc sjednocuje datové transformace nad streamovými i batchovými daty. To nám umožňuje jedním kódem zpracovat jak čerstvě vznikající data, tak například data uložená za delší uplynulé období.

Výpočty nad Euphoria API už rok a půl produkčně používá náš robot a po dobrých zkušenostech jsme se rozhodli vydat její zdrojové kódy jako opensource na github.com. Doufáme, že tím pomůžeme vývojářům, kteří naráží na stejné problémy, jako jsou naznačené v tomto článku.

Pokud vás toto krátké představení zaujalo, zveme vás na veřejné představení Euphoria API na Hadoop Meetupu 6. dubna v Praze.