Programovanie

Pamäťové dátové mriežky vs. pamäťové databázy

Osvojovanie výpočtov v pamäti sa stále zrýchľuje. Zrelé riešenia umožňujú organizáciám dosiahnuť rýchlosť a rozsah spracovania databázy, ktoré požadujú pre svoju digitálnu transformáciu a iniciatívy pre viackanálové skúsenosti zákazníkov. Napríklad investičná spoločnosť Wellington Management použila výpočtovú platformu v pamäti na urýchlenie a zväčšenie svojej investičnej knihy rekordov (IBOR), jediného zdroja pravdy pre pozície investorov, expozíciu, ocenenia a výkonnosť. Všetky obchodné transakcie v reálnom čase, všetky súvisiace aktivity na účte, údaje tretích strán, napríklad trhové kotácie, a všetky súvisiace činnosti back-office prechádzajú cez jeho IBOR v reálnom čase. IBOR podporuje aj analýzu výkonu, hodnotenie rizík, súlad s predpismi a ďalšie. V rôznych testoch bola nová platforma najmenej desaťkrát rýchlejšia ako starší systém spoločnosti postavený priamo na relačnej databáze Oracle.

Nikita Ivanov je technický riaditeľ v spoločnosti GridGain Systems, ktorá vyvíja výpočtové riešenia v pamäti.

Gartner predpovedá, že do roku 2019 bude 75 percent vývoja natívnych cloudových aplikácií využívať výpočty v pamäti alebo služby využívajúce výpočty v pamäti, aby umožnilo bežným vývojárom implementovať vysoko výkonné a masívne škálovateľné aplikácie. Avšak vývojári noví v oblasti výpočtových technológií v pamäti musia rozvíjať porozumenie rôznych stratégií pre pridanie technológie do svojej architektúry. Vo väčšine prípadov je prvým rozhodnutím, ktoré musia urobiť, či nasadiť mriežku údajov v pamäti alebo databázu v pamäti. Toto rozhodnutie bude založené predovšetkým na tom, či majú v úmysle urýchliť existujúce aplikácie, plánovať vývoj nových aplikácií alebo úplne preskúmať tie existujúce alebo či uvidia príležitosť urobiť obe. Musia tiež zvážiť, ktorá vrstva bude slúžiť ako systém záznamu, výpočtová vrstva v pamäti alebo podkladová dátová vrstva.

Poďme preskúmať výpočtové technológie v pamäti potrebné na implementáciu týchto stratégií.

Pamäťové dátové mriežky

Pamäťová mriežka v pamäti (IMDG) kopíruje údaje na disku z databáz RDBMS, NoSQL alebo Hadoop do pamäte RAM, kde prebieha spracovanie bez oneskorenia spôsobeného neustálym čítaním a zápisom na disk. Vložená medzi aplikačnú a dátovú vrstvu je dátová mriežka v pamäti nasadená na klastri serverových uzlov a zdieľa dostupnú pamäť a CPU klastra. Či už je nasadený vo verejnom alebo súkromnom cloudovom prostredí, lokálne alebo v hybridnom prostredí, mriežku dát v pamäti je možné škálovať jednoducho pridaním nového uzla do klastra. Niektoré dátové mriežky v pamäti môžu podporovať transakcie ANSI-99 SQL a ACID, pokročilé zabezpečenie, strojové učenie a natívne integrácie Spark, Cassandra a Hadoop.

Mriežka v pamäti predstavuje jednoduché a nákladovo efektívne riešenie pre existujúce aplikácie. Veľa dátových mriežok v pamäti však vyžaduje, aby sa všetky údaje v základnej diskovej databáze zmestili do pamäte, čo si vyžaduje, aby si podnik kúpil dostatok pamäte na uchovanie všetkých údajov. Pretože pamäť je stále nákladnejšia ako disk, mnoho spoločností môže uprednostniť uchovanie niektorých údajov iba na disku. Nové architektúry zamerané na pamäť to riešia spracovaním proti úplnej množine údajov, aj keď sú niektoré údaje uložené na disku. Táto schopnosť „trvalého ukladania“ umožňuje, aby množstvo údajov presiahlo množstvo pamäte. To znamená, že údaje je možné optimalizovať, takže všetky údaje sa nachádzajú na disku, ale častejšie sa používajú tiež sa nachádza v pamäti, zatiaľ čo zriedka sa používajú dáta iba na disku. Ďalšou kľúčovou výhodou je, že po reštarte môže systém s perzistentným úložiskom začať okamžite spracovávať údaje proti množine údajov na disku bez toho, aby čakal na načítanie množiny údajov do pamäte.

Workday, poskytovateľ riešení v oblasti financií a HR SaaS, ktorý slúži spoločnostiam Fortune 50, súvisí s tým, ako využíva dátovú mriežku v pamäti na spracovanie asi 189 miliónov transakcií za deň, s maximom okolo 289 miliónov za deň. Pre porovnanie, Twitter spracuje približne 500 miliónov tweetov denne.

Pamäťová databáza

Databáza v pamäti (IMDB) je najvhodnejšia pre nové alebo rekonštruované aplikácie. Jedná sa o plnohodnotnú samostatnú databázu bežiacu v pamäti, ktorá podporuje API na spracovanie údajov, ako napríklad ANSI-99 SQL, kľúč – hodnota, výpočty a strojové učenie. Výhodou pamäte v pamäti oproti mriežke údajov v pamäti je, že architektúra je redukovaná z troch vrstiev (aplikácia, v pamäti a dáta) na dve. Nevýhodou je, že sa nemôže použiť pre existujúcu aplikáciu bez zdvihnutia a presunu súboru údajov z existujúcej databázy. Ďalej, pretože pamäťová databáza slúži ako systém záznamu, musí riešenie obsahovať stratégiu ochrany údajov v prípade výpadku. Táto stratégia môže byť podobná schopnosti trvalého ukladania diskutovanej pre dátové mriežky v pamäti, alebo môže zahŕňať použitie energeticky nezávislej pamäte RAM, novej technológie, ktorá bude v budúcnosti pravdepodobne hrať čoraz významnejšiu úlohu.

V súčasnosti veľká banka so 135 miliónmi zákazníkov používa databázu v pamäti s možnosťou trvalého ukladania na vývoj architektúry webového rozsahu, ktorá dokáže spracovať až 1,5 PB dát spolu s požadovaným objemom transakcií. Toto riešenie slúži ako systém záznamu a nesedí na vrchole existujúceho dátového úložiska.

Pamäťové výpočtové platformy

Organizácie, ktoré vyvíjajú dlhodobú stratégiu zahŕňajúcu akceleráciu existujúcich aplikácií a zavádzanie nových, sa môžu rozhodnúť pre počítačovú platformu v pamäti, ktorá kombinuje škálovateľnosť IMDG s plnými schopnosťami relačnej databázy IMDB. Počítačová platforma v pamäti môže byť preto použitá na zrýchlenie existujúcich aplikácií alebo môže byť základom pre vytváranie nových alebo prehľadne chránených aplikácií, ktoré môžu využívať výhody distribuovaného výpočtu a stáleho úložiska.

Okrem rozhodnutia, ktorá technológia najlepšie vyhovuje ich potrebám, by organizácie mali zvážiť, či požadujú ďalšiu podporu technológií v pamäti, ako napríklad:

  • Streamovací analytický nástroj na správu celej zložitosti toku údajov a spracovania udalostí.
  • Rámec kontinuálneho učenia založený na hlbokom učení, ktorý slúži ako stavebný kameň pre to, čo spoločnosť Gartner označuje ako HTAP v procese (hybridné transakčné / analytické spracovanie); to znamená schopnosť aplikovať strojové učenie alebo analýzu hlbokého učenia na operačné údaje v reálnom čase.

Výpočtová technológia v pamäti je dnes používaná poprednými digitálnymi podnikmi a v budúcnosti sa ešte viac rozšíri. Čím skôr získate dôkladné pochopenie stratégií nasadenia a schopností výpočtovej techniky v pamäti, tým skôr budete môcť pomôcť svojej organizácii získať potrebnú konkurenčnú výhodu.