Realtime zpracovaní dat přes datové gridy
Co jsou to datové gridy
Nejjednodušší cestou jak zajistit aby každý věděl, kam data ukládat a kde je následně hledat je skladování všech dat na jednom místě (jednom serveru). Nebo snad existuje lepší způsob? V mnoha případech může výše uvedený přístup stačit, ale můžeme najít i komplexnější situace. A ty si žádají sofistikovanější řešení.
Datový grid je architektura, nebo systém služeb, které garantují uživatelům přístup k datům, možnost změn v těchto datech a přenosy velkých objemů i geograficky vzdálených dat, a to vše na základě pro uživatele transparentní autentizace a autorizace. Data z mnoha administrativních domén (částí datového gridu) jsou klientům předkládána na základě jejich požadavků v reálném čase.
Proč používat datový grid
- Nízké náklady - naše řešení používá open source a využívá k ukládání dat běžný hardware, neplatíte žádné licence.
- Stabilita - běh v cloudu zajišťuje stabilní prostředí pro váš systém. Data i jejich zpracování je chráněno před selháním hardware. Pokud selže jeden node, práce na něm prováděná je automaticky převedena na další nody.
- Škálovatelnost - díky použitým technologiím je možné udržovat systém rychlý nezávisle na jeho zatížení. Navýšení výkonu je bezproblémové a levné - začnete s málem a postupně můžete jednoduše přidávat další nody.
- Výpočetní výkon - distribuovaný model datových gridů umí rychle zpracovat i velké množství dat (čím více nodů, tím více výkonu).
- Flexibilita - narozdíl od relačních databází nemusíte data předzpracovávat předtím, než je uložíte. Prostě toho uložíte kolik chcete a až později se rozhodnete, jak data zpracovávat.
To ale není vše. Schopnost zachovat vysoký podíl času bez výpadků, možnost ukládat data do cloudu a práce s komplexními datovými strukturami jsou pouze některé z výhod datových gridů. Máte možnost uložit data pouze v části gridu a na zbylé části provádět upgrade nebo rozšiřování systému, vše bez výpadku nebo zpomalení gridu. Datový grid lze použít pro cachování dat z běžné databáze, tak aby se zvýšila její výkonnost. Zvažte datový grid pro jeho rychlost nebo pro jeho možnosti jako datového úložiště.
Naše řešení
Každý projekt datového gridu je jedinečný. Naše zkušenosti s implementacemi tohoto typu systémů nám umožňují se zaměřit na takové technologie, které přinesou zákazníkovi vysokou přidanou hodnotu. A nemusí jít pouze o úspory nákladů, ale jedná se také o samotný budoucí vývoj softwaru u klienta. Námi používané komponenty se vyznačují spolehlivostí běhu aplikací, možnostmi škálování systému podle aktuální potřeby nebo vysokou dostupností dat. Nejčastěji používáme ke spokojenosti klientů následující technologie (často v kombinaci s Big Data):
- Infinispan - distribuovaná cache a NoSQL datové úložiště, ideální jako vrstva dat pro Enterprise aplikace. Umoňuje např. globální zasílání zpráv po datovém gridu a výborně se integruje do Java aplikací.
- Elasticsearch - ideální nástroj na prohledávání dat a fulltextové vyhledávání v reálném čase. Elasticsearch exceluje v ukládání logů aplikací, které lze potom online analyzovat a prohledávat. Umožňuje také využít např. fuzzy search technologie pro získání výsledků a mnoho dalšího.
- OrientDB - distribuovaná grafová databáze druhé generace, jejíž předností je schopnost udržování relací mezi jednotlivými daty v gridu a podporu relací pomocí „constraints“ - obdobně jako standardní relační databáze.