Comparthing Logo
ruajtja në memorjeridizajni ruajtur në memcachesisteme të shpërndaraperformancëmikroshërbimeinfrastrukturë cloud

Caching Lokal kundrejt Grumbujve të Caching të Centralizuar

Ruajtja lokale e memorjes (caching) ruan të dhënat direkt në serverat e aplikacioneve për akses me vonesë ultra të ulët, ndërsa grupet e centralizuara të memorjes së memorjes (cache) vendosin infrastrukturë të dedikuar dhe të përbashkët, të cilës shumë shërbime mund t'i qasen njëkohësisht për menaxhim të qëndrueshëm të gjendjes.

Theksa

  • Ruajtja lokale në memorje eliminon plotësisht vonesën e rrjetit, por krijon sfida të qëndrueshmërisë që sistemet e centralizuara i zgjidhin në mënyrë native.
  • Redis dhe Memcached fuqizojnë shumicën e implementimeve të centralizuara të prodhimit, duke ofruar veçori shumë më tepër se ruajtja e thjeshtë e çelësave dhe vlerave.
  • Arkitekturat hibride me memorje lokale me TTL të shkurtër të mbështetura nga grupe të centralizuara janë gjithnjë e më të zakonshme në sistemet e ndjeshme ndaj latencës.
  • Kërkesat e pjekurisë operacionale ndryshojnë në mënyrë dramatike; ruajtja lokale në memorje është mashtrueshëm e thjeshtë, ndërsa grupet e shpërndara të memorjes kërkojnë ekspertizë të vërtetë.

Çfarë është Ruajtja lokale e memorjes?

Ruan të dhënat në të njëjtën makinë si aplikacioni, duke eliminuar mbingarkesën e rrjetit për shpejtësi maksimale.

  • Të dhënat ndodhen në të njëjtin proces ose makinë si aplikacioni, zakonisht duke përdorur struktura në memorie si hartat e hash-it ose bibliotekat e integruara.
  • Nuk nevojiten udhëtime vajtje-ardhje në rrjet për goditjet në memorien e përkohshme, duke rezultuar në kohë përgjigjeje nën milisekonda
  • Pavlefshmëria e memorjes së përkohshme bëhet komplekse kur instanca të shumta aplikacionesh mbajnë kopje të vjetra të të njëjtave të dhëna.
  • Implementimet popullore përfshijnë Caffeine për Java, cachetools për Python dhe objektet native Node.js Map.
  • Kufizimet e memories së serverave individualë kufizojnë madhësinë totale të të dhënave të ruajtura në memorje, shpesh në disa gigabajt.

Çfarë është Grumbuj të centralizuar të memorjes së përkohshme?

Serverë të dedikuar të ruajtjes në memorje të ndarë në shumë aplikacione, duke siguruar akses të qëndrueshëm dhe të shkallëzueshëm në të dhëna.

  • Redis dhe Memcached dominojnë shpërndarjet e prodhimit, me Redis që mbështet persistencën, pub/sub dhe strukturat komplekse të të dhënave.
  • Vonesa e rrjetit zakonisht shton 0.5-2 milisekonda për operacion, madje edhe brenda të njëjtës zonë disponueshmërie.
  • Shkallëzimi horizontal përmes sharding lejon që madhësitë e memorjes së përkohshme të rriten në terabajt nëpër grupet e nyjeve të shpërndara.
  • Burimi i vetëm i së vërtetës eliminon mospërputhjet e të dhënave të vjetra që prekin memorjet lokale me shumë instanca.
  • Kompleksiteti operacional përfshin menaxhimin e dështimit të funksionimit, replikimit, fragmentimit të memories dhe ribalancimit të klasterit.

Tabela Krahasuese

Veçori Ruajtja lokale e memorjes Grumbuj të centralizuar të memorjes së përkohshme
Latencia Nën-milisekondë (pa kërcim rrjeti) Zakonisht 0.5-2ms për operacion
Konsistenca Përfundimisht; të dhëna të vjetra ka të ngjarë të jenë në të gjitha rastet Konsistencë e fortë me konfigurim të duhur
Shkallëzueshmëria I kufizuar nga memoria e një serveri të vetëm Shkallëzimi horizontal nëpërmjet grupimit
Kompleksiteti Operacional I ulët; infrastrukturë minimale I lartë; kërkon ekspertizë të përkushtuar
Kostoja e goditjes në memorien e përkohshme Vetëm ciklet e CPU-së CPU + rrjet + mbingarkesë serializimi
Ndikimi i dështimit Humbja e memorjes së përkohshme lidhet me dështimin e instancës së aplikacionit Domen i pavarur i dështimit; mund të degradojë në mënyrë të këndshme
Mbështetje për Strukturën e të Dhënave Çelësi-vlerë bazë, e kufizuar nga gjuha Lloje të pasura (Redis: lista, grupe, transmetime, etj.)
Ndarja e Shërbimeve Ndërmjetëse E pamundur; të dhënat e bllokuara lokalisht Native; e projektuar për akses nga shumë konsumatorë

Përshkrim i Detajuar i Krahasimit

Karakteristikat e Performancës

Ruajtja lokale në memorje dominon absolutisht kur shpejtësia e të dhënave bruto ka rëndësi. Meqenëse gjithçka ndodh gjatë procesit, po shqyrtojmë kohë aksesi nga nanosekonda në mikrosekonda që asnjë sistem i bazuar në rrjet nuk mund t'i përputhet. Grumbujimet e centralizuara paguajnë një taksë të pashmangshme latence për çdo operacion, megjithëse kjo taksë është shpesh e papërfillshme për shumë ngarkesa pune. Është interesante se memorjet e centralizuara në memorje ndonjëherë mund të tejkalojnë memorjet e centralizuara të implementuara dobët në kushte të njëkohshmërisë së lartë, pasi ato trajtojnë bllokimin dhe menaxhimin e memories në mënyrë më efikase sesa implementimet lokale ad-hoc.

Konsistenca dhe Pavlefshmëria

Këtu shkëlqejnë grupet e centralizuara. Kur përdoruesi juaj përditëson profilin e tij, pavlefshmëria e asaj hyrjeje në Redis përhapet menjëherë tek të gjithë konsumatorët. Me memorjet lokale të fshehta, ju ngecni ose duke pranuar të dhëna të vjetra për kohëzgjatjet TTL, duke ndërtuar sisteme komplekse të pavlefshmërisë së transmetimit, ose duke zbatuar modele pranë memorjes së fshehtë që e shfuqizojnë pjesërisht qëllimin. Shumë ekipe e nënvlerësojnë këtë sfidë dhe përfundojnë me gabime delikate, që godasin prodhimin, ku serverë të ndryshëm shërbejnë versione të ndryshme të së vërtetës.

Shpenzimet Operacionale dhe Kostoja Totale

Ruajtja lokale në memorje ndihet e lirë derisa të mos jetë më e tillë. Ju shmangni kostot e infrastrukturës, por paguani në kohë inxhinierike për problemet e koherencës së memorjes në memorje dhe në memorien e aplikacionit që përndryshe mund t'u shërbente kërkesave. Grumbullimet e centralizuara kërkojnë investime paraprake në monitorim, automatizim të dështimit të programit dhe planifikim të kapacitetit. Grumbullimet Redis ose shërbimet e menaxhuara si AWS ElastiCache zhvendosin disi barrën, por prezantojnë modelet e tyre të çmimeve që shkallëzohen me rendimentin dhe përdorimin e memories.

Modelet Arkitekturore dhe Rastet e Përdorimit

Mikroshërbimet me kërkesa të rrepta latence në shtigje me lexim të rëndë shpesh i shtresojnë të dyja qasjet: një memorje të vogël lokale për të dhënat më të nxehta me TTL të shkurtra, të mbështetur nga një grumbull i centralizuar për ndarje më të gjerë. Ruajtja e pastër lokale e memorjes funksionon shkëlqyeshëm për të dhënat e konfigurimit, shabllonet e përpiluara ose agregatet e llogaritura që nuk kanë nevojë për konsistencë ndër-instancash. Grumbullimet e centralizuara bëhen thelbësore për kufizimin e shpejtësisë, ruajtjen e seancave, tabelat e renditjes dhe çdo skenar ku shërbime të shumta duhet të bien dakord për gjendjen aktuale.

Mënyrat e Dështimit dhe Rezistenca

Humbja e memorjes lokale të memorjes do të thotë që një instancë aplikacioni rindërtohet nga burimi, zakonisht një rreze shpërthimi e menaxhueshme. Dështimet e centralizuara të klusterit mund të dëmtojnë shumë shërbime njëkohësisht nëse nuk trajtohen në mënyrë mbrojtëse. Arkitekturat inteligjente zbatojnë ndërprerës qarku dhe rikthim në bazat e të dhënave origjinale kur klusterët e memorjes së memorjes së memorjes kanë probleme. Redis Sentinel dhe Redis Cluster ofrojnë ndërprerje automatike të funksionimit, por skenarët me tru të ndarë dhe dritaret e humbjes së të dhënave gjatë promovimeve mbeten shqetësime operative që memorjet lokale të memorjes thjesht nuk i hasin.

Përparësi dhe Disavantazhe

Ruajtja lokale e memorjes

Përparësi

  • + Latenci jashtëzakonisht e ulët
  • + Asnjë infrastrukturë për të menaxhuar
  • + E thjeshtë për t’u zbatuar fillimisht
  • + Pa varësi nga rrjeti
  • + Kosto zero serializimi

Disavantazhe

  • Makthe për qëndrueshmërinë
  • Presioni i memories në serverat e aplikacioneve
  • Nuk ka ndarje ndërinstancash
  • Ngrohja e memorjes së përkohshme për çdo vendosje
  • Më e vështirë për t'u monitoruar dhe debuguar

Grumbuj të centralizuar të memorjes së përkohshme

Përparësi

  • + Opsione të qëndrueshmërisë së fortë
  • + I ndarë në të gjitha shërbimet
  • + Horizontalisht i shkallëzueshëm
  • + Struktura të pasura të të dhënave (Redis)
  • + Domeni i pavarur i dështimit

Disavantazhe

  • Mbingarkesë e vonesës së rrjetit
  • Kompleksiteti operacional
  • Kosto shtesë e infrastrukturës
  • Mbivendosja e serializimit
  • Pikë e vetme e mundshme mosmarrëveshjeje

Idenë të gabuara të zakonshme

Miti

Memorjet e centralizuara të fshehta janë gjithmonë më të ngadalta dhe duhet të shmangen për aplikacionet kritike për performancën.

Realiteti

Ndërsa ruajtja lokale në memorje fiton në latencën e papërpunuar, memorjet e centralizuara të optimizuara mirë shpesh trajtojnë miliona operacione në sekondë me ndikim të papërfillshëm. Shpenzimet e rrjetit shpesh janë të pakta nga përpunimi në nivel aplikacioni, dhe përfitimet e qëndrueshmërisë shpesh i tejkalojnë kostot marxhinale të latences.

Miti

Ruajtja lokale në memorje është më e thjeshtë sepse nuk keni nevojë të ekzekutoni një infrastrukturë të veçantë6.

Realiteti

Infrastruktura mund të jetë më e thjeshtë në fillim, por pavlefshmëria e memorjes së përkohshme (cache) në memorjet e shpërndara lokale sjell kompleksitet të konsiderueshëm. Shumë ekipe përfundojnë duke ndërtuar sisteme të shpërndara ad-hoc për të mbajtur memorjet e përkohshme lokale të sinkronizuara, duke e rishpikur në mënyrë efektive me kujdes ruajtjen e centralizuar në memorje.

Miti

Redis është i dobishëm vetëm si një memorje e centralizuar dhe nuk mund të plotësojë memorjen lokale.

Realiteti

Redis shërben shpesh si depo mbështetëse në strategjitë e ruajtjes në memorje shumënivelëshe. Aplikacionet përdorin memorje lokale për të dhënat më të nxehta me TTL agresive, ndërsa Redis mban një grup pune më të gjerë, duke kombinuar më të mirën e të dy qasjeve.

Miti

Problemet e koherencës së memorjes së përkohshme me memorizimin lokal janë të rralla dhe ndikojnë vetëm në sisteme në shkallë të gjerë.

Realiteti

Çdo sistem me instanca të shumëfishta aplikacionesh mund të hasë probleme me të dhënat e vjetra. Edhe një vendosje e thjeshtë me dy servera që u shërben seancave të përdoruesve mund të ofrojë informacione kontradiktore nëse memorjet lokale të përkohshme nuk menaxhohen me kujdes.

Miti

Grumbujt e centralizuar të memorjes së përkohshme eliminojnë automatikisht të gjitha shqetësimet për konsistencën.

Realiteti

Ndërsa sistemet e centralizuara ofrojnë një burim të vetëm të së vërtetës, gabimet e aplikacionit, kushtet e garës në kodin e klientit dhe TTL-të e konfiguruara gabimisht mund të shkaktojnë ende probleme konsistence. Ato zvogëlojnë, por nuk eliminojnë nevojën për një dizajn të kujdesshëm të pavlefshmërisë së memorjes së përkohshme.

Pyetjet më të Përshkruara

Çfarë është ruajtja lokale në memorje dhe si funksionon?
Depozitat lokale të ruajtjes në memorje shpesh aksesonin të dhënat direkt brenda hapësirës së memories së aplikacionit ose në të njëjtin server fizik. Kur aplikacioni juaj ka nevojë për të dhëna, ai së pari kontrollon këtë depo në memorie përpara se të godasë backend-e më të ngadalta si bazat e të dhënave. Meqenëse gjithçka mbetet në proces, nuk ka vonesë në rrjet, duke e bërë rikuperimin tepër të shpejtë. Kompromisi është se çdo instancë aplikacioni mban memorjen e vet të izoluar në memorje, gjë që mund të çojë në probleme të qëndrueshmërisë.
Kur duhet të përdor një grumbull të centralizuar të memorjes së përkohshme në vend të memorjes së përkohshme lokale?
Përdorni grupe të centralizuara kur shumë shërbime ose instanca aplikacionesh duhet të ndajnë gjendjen e ruajtur në memorje, kur të dhënat tuaja tejkalojnë atë që futet në memorien e një serveri të vetëm ose kur qëndrueshmëria në të gjithë sistemin tuaj të shpërndarë ka më shumë rëndësi sesa vonesa absolute. Skenarët e zakonshëm përfshijnë ruajtjen e seancave të përdoruesit, numëruesit që kufizojnë shpejtësinë, tabelat e renditjes në kohë reale dhe konfigurimin e përbashkët që duhet të mbetet i sinkronizuar.
A është Redis opsioni i vetëm për ruajtjen e centralizuar në memorje?
Redis dominon peizazhin për një arsye të mirë, ai ofron persistencë, pub/sub, streams dhe struktura të pasura të të dhënave përtej ruajtjes së thjeshtë të çelës-vlerë. Memcached mbetet popullor për ruajtjen e pastër në memorje me kosto minimale. Janë shfaqur alternativa më të reja si KeyDB (një degëzim i Redis me shumë fijezime) dhe Dragonfly, ndërsa opsionet cloud-native përfshijnë AWS ElastiCache, Azure Cache për Redis dhe Google Cloud Memorystore.
A mund ta kombinoj ruajtjen lokale dhe të centralizuar në të njëjtin aplikacion?
Absolutisht, dhe shumë sisteme me performancë të lartë e bëjnë pikërisht këtë. Një model tipik vendos një memorje lokale shumë të vogël me një TTL agresive, ndoshta 1-5 sekonda, përpara një klasteri Redis. Kjo thith kërkesat identike të përsëritura brenda milisekondave, duke lejuar ende përhapjen relativisht të shpejtë të pavlefshmërive. Çelësi është mbajtja e TTL lokale mjaftueshëm të shkurtër në mënyrë që të dhënat e vjetra të mos shkaktojnë probleme të dukshme për përdoruesin.
Si mund ta trajtoj pavlefshmërinë e memorjes së përkohshme (cache) me memorje lokale të përkohshme (cache) në një sistem të shpërndarë?
Kjo është vërtet e vështirë. Opsionet përfshijnë vendosjen e TTL-ve shumë të shkurtra dhe pranimin e pavlefshmërisë së përkohshme, zbatimin e mekanizmave të transmetimit në nivel aplikacioni për të njoftuar kolegët për pavlefshmëritë, ose përdorimin e modeleve pranë memorjes së përkohshme ku një kanal publik/nën-kanal i centralizuar koordinon pavlefshmërinë. Çdo qasje shton kompleksitetin, prandaj shumë ekipe përfundimisht migrojnë të dhëna të nxehta të përbashkëta në memorje të përkohshme të centralizuara.
Cilat janë sfidat kryesore operative të drejtimit të Redis Cluster?
Klasteri Redis kërkon planifikim të kujdesshëm rreth vendosjes së shard-it, konfigurimit të replikave për disponueshmëri të lartë dhe trajtimit të ribalancimit gjatë ngjarjeve të shkallëzimit. Fragmentimi i memories mund të konsumojë gradualisht më shumë RAM sesa pritej. Vlerat e mëdha të çelësave bllokojnë lakun e ngjarjeve me një fije të vetme, duke shkaktuar rritje të latencës. Pa monitorim të duhur, ngjarjet e dështimit të skedarit mund të kalojnë pa u vënë re derisa të ndodhin dështime të njëpasnjëshme.
A ka kuptim ruajtja lokale në memorje në mjedise të kontejnerizuara ose pa server?
Ruajtja lokale në memorje funksionon në kontejnerë, por kërkon një mendim të kujdesshëm për ciklin jetësor. Kontejnerët rinisin shpesh, duke fshirë memorjet e përkohshme në memorje, dhe funksionet pa server me nisje të ftohta përfitojnë më pak nga ruajtja lokale në memorje midis thirrjeve. Megjithatë, edhe një memorje lokale në memorje jetëshkurtër brenda një kërkese të vetme ose instance kontejneri të ngrohtë mund të zvogëlojë ndjeshëm pyetjet e përsëritura të bazës së të dhënave. Për memorjen pa server, merrni në konsideratë nëse ruajtja në memorje në kohën e inicializimit ose ruajtja në memorje në bazë të kërkesave i përshtatet modeleve tuaja të aksesit.
Si mund të vendos midis Redis dhe Memcached?
Zgjidhni Memcached kur keni nevojë për një ruajtje në memorje shumë të thjeshtë dhe me performancë të lartë me karakteristika minimale dhe që mund të tolerojë humbjen e plotë të të dhënave gjatë rinisjes. Zgjidhni Redis kur keni nevojë për opsione të qëndrueshmërisë së të dhënave, struktura komplekse të të dhënave, operacione atomike, mesazhe pub/sub ose përpunim rrjedhash. Shkathtësia e Redis zakonisht justifikon gjurmën e tij pak më të lartë të burimeve për shumicën e aplikacioneve moderne.
Cilat metrika duhet të monitoroj për performancën e memorjes së përkohshme?
Për çdo shtresë të ruajtjes në memorje, gjurmoni shkallën e goditjeve, shkallën e humbjeve, shkallën e dëbimit dhe përqindjet e latencës. Memorjet lokale gjithashtu kanë nevojë për monitorim të përdorimit të memories për të parandaluar ndërprerjet e memories. Grumbujve të centralizuar kërkojnë shëndet të grupit të lidhjeve, vonesë në replikim, komunikim të nyjeve të grumbullimit dhe regjistra të ngadaltë të komandave. Një shkallë goditjeje në rënie shpesh sinjalizon ndryshimin e modeleve të aksesit ose madhësinë e pamjaftueshme të memorjes në memorje.
A ka shqetësime sigurie specifike për grupet e centralizuara të memorjes së përkohshme?
Memorjet e centralizuara të vendosura në infrastrukturë të aksesueshme nga rrjeti sjellin sipërfaqe sulmi që memorjet lokale të memorjes i shmangin. Redis historikisht është dërguar pa autentifikimin e aktivizuar si parazgjedhje, duke çuar në raste të shumta të ekspozuara. Enkriptoni të dhënat gjatë tranzitit me TLS, aktivizoni autentifikimin, segmentoni në rrjet klasterin tuaj të memorjes së memorjes dhe shmangni ruajtjen e të dhënave të ndjeshme të pakriptuara. Memorjet lokale të memorjes përballen me më pak kërcënime të rrjetit, por mund të rrjedhin të dhëna nëse memoria e aplikacionit është e kompromentuar.
Si krahasohet çmimi i cloud-it midis memorjeve lokale të memorjes në punë dhe memorjeve të memorjes së centralizuar të menaxhuar?
Ruajtja lokale në memorje përdor memorien për të cilën keni paguar tashmë në serverat e aplikacioneve tuaja, duke bërë që kostoja marxhinale të duket zero. Në realitet, ju po tregtoni memorien e aplikacioneve që mund të shërbejë kërkesa. Memorjet e menaxhuara të centralizuara si ElastiCache tarifohen për orë nyje dhe për gigabajt, gjë që bëhet e konsiderueshme në shkallë të gjerë. Redis me burim të hapur që vetë-menaxhohet në infrastrukturën tuaj i zhvendos kostot në punë operative në vend të tarifave të shërbimit.
Çfarë ndodh kur një grumbull i centralizuar i memorjes së përkohshme dështon plotësisht?
Pa masa mbrojtëse të duhura, aplikacioni juaj mund të përjetojë një tufë të fuqishme pasi të gjitha instancat godasin njëkohësisht bazën tuaj të të dhënave origjinale. Implementoni ndërprerës qarku që zbulojnë mungesën e disponueshmërisë së memorjes së përkohshme (cache) dhe ose dështojnë shpejt, shërbejnë të dhëna të vjetra nga një kopje rezervë ose degradojnë gradualisht në funksionalitet të reduktuar. Disa arkitektura përdorin memorje të përkohshme lokale si rezervë emergjente gjatë ndërprerjeve të centralizuara të memorjes së përkohshme (cache), megjithëse kjo rikthen shqetësime për qëndrueshmërinë.

Verdikt

Zgjidhni ruajtjen lokale në memorje për ngarkesa pune ultra të ndjeshme ndaj vonesës dhe me shumë lexim, ku një ngadalësim i lehtë është i pranueshëm dhe thjeshtësia ka rëndësi. Zgjidhni grupe të centralizuara të memorjes në memorje kur kërkohet konsistencë në të gjithë komponentët e shpërndarë, gjendje të përbashkët ose madhësi të grupeve të të dhënave që tejkalojnë memorien e një serveri të vetëm. Shumica e sistemeve të zhvilluara përfundimisht i përdorin të dyja në një arkitekturë me nivele.

Krahasimet e Ngjashme

Agregimi i telemetrisë kundrejt regjistrimit me një burim të vetëm

Agregimi i telemetrisë konsolidon metrikat, regjistrat dhe gjurmët nga shumë burime në një tubacion të unifikuar, ndërsa regjistrimi i të dhënave me një burim të vetëm përqendrohet në kapjen dhe analizimin e të dhënave nga një origjinë specifike. Zgjedhja e duhur varet nga kompleksiteti i sistemit, objektivat e vëzhgueshmërisë dhe shkalla operacionale.

AWS kundrejt Google Cloud

Ky krahasim shqyrton Amazon Web Services dhe Google Cloud duke analizuar ofertat e shërbimeve të tyre, modelet e çmimeve, infrastrukturën globale, performancën, përvojën e zhvilluesve dhe rastet ideale të përdorimit, duke ndihmuar organizatat të zgjedhin platformën cloud që përshtatet më së miri kërkesave të tyre teknike dhe të biznesit.

Balancimi i Ngarkesës në Sistemet ML kundrejt Trajtimit të Thjeshtë të Kërkesave API

Balancimi i ngarkesës në sistemet ML menaxhon ngarkesat e punës së nxjerrjes së përfundimeve dhe trajnimit me shumë GPU në të gjithë harduerin e specializuar, ndërsa trajtimi i thjeshtë i kërkesave API shpërndan trafik të lehtë HTTP nëpër serverat me qëllim të përgjithshëm. Ato ndryshojnë në mënyrë dramatike në kompleksitet, kërkesa për burime dhe inteligjencë rrugëzimi.

Bazat e të dhënave vektoriale kundrejt bazave të të dhënave tradicionale relacionale

Bazat e të dhënave vektoriale specializohen në ruajtjen dhe kërkimin e ngulitjeve me dimensione të larta për detyra të inteligjencës artificiale dhe ngjashmërisë, ndërsa bazat e të dhënave tradicionale relacionale shkëlqejnë në të dhënat e strukturuara me pyetje të sakta dhe transaksione ACID. Zgjedhja midis tyre varet nëse ngarkesa juaj e punës përqendrohet në kërkimin semantik apo në integritetin transaksional.

Bllokimet e Transferimit të të Dhënave kundrejt Bllokimeve të Llogaritjes së Modelit

Bllokimet e transferimit të të dhënave ngadalësojnë kanalet e të mësuarit automatik duke kufizuar shpejtësinë e lëvizjes së informacionit midis ruajtjes, kujtesës dhe burimeve llogaritëse, ndërsa bllokimet e llogaritjes së modelit lindin kur fuqia e përpunimit të GPU-së ose CPU-së bëhet faktori kufizues. Të kuptuarit e ndryshimit i ndihmon ekipet të optimizojnë shpenzimet e infrastrukturës dhe efikasitetin e trajnimit.