I-In-Memory yiseti yeengqikelelo zokugcina idatha xa igcinwe kwi-RAM yesicelo, kwaye idiski isetyenziselwa ukugcina. Kwiindlela zakudala, idatha igcinwa kwidiski kwaye imemori igcinwe kwi-cache. Ngokomzekelo, isicelo sewebhu esine-backend yokucubungula idatha siyicela kwisitoreji: siyayifumana, siyiguqule, kwaye idatha eninzi idluliselwa kwinethiwekhi. Kwi-In-Memory, izibalo zithunyelwa kwidatha - kwisitoreji, apho zicutshungulwa kwaye inethwekhi ilayishwe ngaphantsi.

Ngawaphi amanye amathuba akhoyo nge-In-Memory kwaye luhlobo luni lwenkqubo olu? UVladimir Pligin -injineli eGridGain. Esi sixhobo sophononongo siya kuba luncedo kubaphuhlisi be-backend yesicelo sewebhu abangakhange basebenze kunye ne-In-Memory kwaye bafuna ukuzama, okanye banomdla kwiindlela zanamhlanje kuphuhliso lwesoftware kunye noyilo lwezakhiwo.
Qaphela:. Eli nqaku lisekelwe kumbhalo wengxelo kaVladimir kwi-#GetIT Conf. Ngaphambi kokusungulwa kokuzimela, sasihlala sibamba iindibano kunye neenkomfa zabaphuhlisi baseMoscow naseSt. Akunakwenzeka ukubamba inkomfa ngoku, kodwa lixesha lokwabelana ngezinto eziluncedo ukusuka kwixesha elidlulileyo.
Ngubani osebenzisa i-In-Memory kwaye njani
I-In-Memory isetyenziswa rhoqo apho unxibelelwano lomsebenzisi olukhawulezayo okanye ukusetyenzwa kweedatha ezininzi kufuneka.
- Amabhanki sebenzisa i-In-Memory, umzekelo, ukunciphisa ukulibaziseka xa abathengi besebenzisa izicelo okanye ukuhlalutya umxhasi phambi kokukhupha imali-mboleko.
- Fintech isebenzisa i-In-Memory ukuphucula ukusebenza kweenkonzo kunye nezicelo zeebhanki ezikhupha idatha kunye nokuhlalutya.
- Iinkampani ze-inshurensi: ukubala umngcipheko, umzekelo, ngokuhlalutya idatha yabathengi kwiminyaka emininzi.
- Iinkampani zolungiselelo. Bacubungula idatha eninzi, umzekelo, ukubala iindlela ezifanelekileyo zokuthuthwa kwempahla kunye nokuthuthwa kwabakhweli ngamawaka eeparamitha, kunye nokulandelela ubume bokuthunyelwa.
- Ivenkile. Izisombululo ze-In-Memory zinceda ukusebenzela abathengi ngokukhawuleza kwaye kusetyenzwe umthamo omkhulu wolwazi: ukuthunyelwa, ii-invoyisi, ukuthengiselana, ubukho bamawaka eempahla kwiindawo zokugcina iimpahla, kunye nokulungiselela iingxelo zohlalutyo.
- В yasebukhosi- I-In-Memory ithatha indawo yogcino-lwazi lwemveli.
- Amachiza Iinkampani zisebenzisa i-In-Memory, umzekelo, ukuhlela ngemidibaniso yamachiza.
Ndiza kukuxelela imizekelo embalwa yendlela abathengi bethu abasebenzisa ngayo izisombululo ze-In-Memory kunye nendlela onokuziphumeza ngayo ngokwakho.
KwiMemori njengendawo yokugcina ephambili
Omnye wabathengi bethu ngumboneleli omkhulu wezixhobo zenzululwazi zonyango ezivela e-USA. Basebenzisa isisombululo se-In-Memory njengokugcina idatha yabo ephambili. Yonke idatha igcinwe kwidiski, kwaye i-subset yedatha esetyenziswa ngokusebenzayo igcinwa kwi-RAM. Iindlela zokufikelela kugcino zisemgangathweni - GDBC (Generic Database Connector) kunye nolwimi lwe-SQL lombuzo.

Ngokudibeneyo oku kubizwa ngokuba yi-In-Memory Database (IMDB) okanye i-Memory-Centri Storage. Olu didi lwezisombululo lunamagama amaninzi, ayisiyiyo yodwa.
Iimpawu ze-IMDB:
- Idatha egcinwe kwi-In-Memory kwaye ifikeleleke nge-SQL iyafana nakwezinye iindlela. Ziyangqanyaniswa, kuphela indlela yokubonisa, indlela yokujongana nayo yahlukile. Utshintshiselwano lusebenza phakathi kwedatha.
- I-IMDB ikhawuleza kunoovimba bolwazi kuba ikhawuleza ukufumana ulwazi olusuka kwi-RAM kunediski.
- Ii-algorithms zokulungiselela zangaphakathi zinemiyalelo embalwa.
- Ii-IMDB zifanelekile ukulawula idatha, iziganeko kunye nokuthengiselana kwizicelo.
Ii-IMDB zixhasa ngokuyinxenye i-ACID: I-Atomicity, Consistency, kunye ne-Isolation. Kodwa abaxhasi "ukuqina" - xa amandla ecinyiwe, yonke idatha ilahlekile. Ukuxazulula ingxaki, ungasebenzisa i-snapshots - "i-snapshot" yesiseko sedatha, i-analog kwi-backup yedatha kwi-hard drive, okanye ukurekhoda ukuthengiselana (iilogi) ukubuyisela idatha emva kokuqalisa kwakhona.
Ukudala izicelo ezinyamezela iimpazamo
Makhe sibe nomfanekiso woyilo lwakudala lwesicelo sewebhu esinyamezela iimpazamo. Isebenza ngolu hlobo: zonke izicelo zisasazwa ngumlinganisi wewebhu phakathi kweeseva. Le nkqubo izinzile kuba abancedisi baphindaphinda enye kwenye kwaye baxhasane xa kukho iziganeko.

I-load balancer ihambisa zonke izicelo ukusuka kwiseshoni enye ukuya kwiseva enye kuphela. Le yindlela yeseshoni enamathelayo: iseshoni nganye ibophelelekile umncedisi, apho igcinwa kwaye isetyenzwa khona ekuhlaleni.
Kwenzeka ntoni xa omnye wabo engaphumeleli? abancedisi?

Inkonzo ayisayi kuchaphazeleka kuba i-architecture iphindwe kabini. Kodwa siya kuphulukana neseti esezantsi yeeseshoni zeseva efileyo. Kwaye kwangaxeshanye, abasebenzisi abotshelelwe kwezi seshoni. Umzekelo, umxhasi ufaka iodolo kwaye ngequbuliso umkhuphele ngaphandle kweofisi. Akayi kuvuya xa ephinda engena kwaye afumanisa ukuba yonke into iya kufuneka yenziwe kwakhona.
Isicelo sewebhu siyafuneka ukuxhasa inani elikhulu labasebenzisi kwaye ungacothi ukuze basebenze ngokukhululeka. Kodwa ukuba iyanqatshwa, ngesicelo ngasinye esilandelayo ixesha elithathayo ukunxibelelana nokugcinwa kweseshoni liya kwanda. Oku konyusa umndilili wokubambezeleka kwabanye abasebenzisi. Kodwa abafuni ukulinda ixesha elidana kunokuba beliqhele.
Le ngxaki ingasonjululwa njengomnye umthengi wethu, umboneleli omkhulu we-PASS ovela e-USA. Isebenzisa i-In-Memory ukudibanisa iiseshini zewebhu. Ukwenza oku, ayizigcini kwindawo, kodwa embindini - kwi-In-Memory cluster. Kule meko, iiseshini zifumaneka ngokukhawuleza kuba sele zikwi-RAM.

Xa iseva iphazamiseka, i-balancer ithumela izicelo ezivela kwiseva ephukileyo kwezinye iiseva, njengakwi-architecture yeklasiki. Kodwa kukho umahluko obalulekileyo: iiseshini zigcinwa kwi-In-Memory cluster kwaye abancedisi banokufikelela kwiiseshoni zomncedisi owileyo.
Olu lwakhiwo lunyusa ukunyamezela kwempazamo yenkqubo yonke. Ngaphezu koko, kunokwenzeka ukuba uyeke ngokupheleleyo indlela yeseshoni yentonga.
IHybrid Transactional Analytical Processing (HTAP)
Ngokuqhelekileyo, iinkqubo zentengiselwano kunye nohlalutyo zigcinwa ngokwahlukileyo. Xa behlukana, isiseko esiphambili siza phantsi komthwalo. Ukucutshungulwa kohlalutyo, idatha ikopishwa kwi-replica ukuze uhlalutyo lohlalutyo lungaphazamisi iinkqubo zokuthengiselana. Kodwa ukukopa kwenzeka nge-lag-akunakwenzeka ukuphindaphinda ngaphandle kwe-lag. Ukuba senza oku synchronously, kuya kuthoba isiseko engundoqo kwaye asiyi kufumana nayiphi lokuwina.
Kwi-HTAP, yonke into isebenza ngokuhlukileyo - isitoreji sedatha efanayo sisetyenziselwa umthwalo wokuthengiselana ukusuka kwizicelo, kunye nemibuzo yohlalutyo engathatha ixesha elide ukugqiba. Xa idatha ikwi-RAM, imibuzo yokuhlalutya iqhutywe ngokukhawuleza, kwaye iseva ene-database ilayishwe ngaphantsi (ngokomndilili).

Indlela ye-hybrid idiliza udonga phakathi kokusebenza kwentengiselwano kunye nohlalutyo. Ukuba senza uhlalutyo kwisitoreji esifanayo, ngoko imibuzo yohlalutyo iqaliswa kwidatha esuka kwi-RAM. Zichaneke ngakumbi, zitolika ngakumbi kwaye zanele.
Ukudityaniswa kwezisombululo kwiMemori
A (ngokomlinganiselo) indlela elula - phuhlisa yonke into ukusuka ekuqaleni. Sigcina idatha kwidiski kwaye sigcina idatha eshushu kwimemori. Oku kunceda ukusinda ukuqaliswa kwakhona kweseva okanye ukucima.
Kukho iimeko ezimbini eziphambili emsebenzini apha xa idatha igcinwe kwidiski. Kweyokuqala, sifuna ukusinda kwiingozi okanye ukuqalisa kwakhona rhoqo kweqela okanye iinxalenye - sifuna ukuyisebenzisa njengesiseko sedatha esilula. Kwimeko yesibini, xa kukho idatha eninzi kakhulu, enye ikwinkumbulo.
Ukuba akunakwenzeka ukwakha yonke into ukusuka ekuqaleni, kuyenzeka ukuba udibanise i-In-Memory ibe sele ikhona. Uyilo olukhoyo. Kodwa ayizizo zonke izisombululo ze-In-Memory ezifanelekileyo kule nto. Kukho iimeko ezintathu ezinyanzelekileyo. Isisombululo esikwiMemori kufuneka sixhase:
- indlela esemgangathweni yokudibanisa kwisiseko sedatha esiza kubekwa ngaphantsi kwayo (umzekelo, iMySQL);
- ulwimi oluqhelekileyo lombuzo, ukwenzela ukuba ungabhali kwakhona kwaye utshintshe ingqiqo yokusebenzisana nokugcinwa;
- transactional - gcina i-semantics yentsebenziswano.
Ukuba zonke ezi zintathu iimeko zidibene, ngoko ukudibanisa kunokwenzeka. Sibeka i-In-Memory Data Grid phakathi kwesicelo kunye nedathabheyisi. Ngoku bhala izicelo ziya kuthunyelwa kwisiseko sedatha, kwaye izicelo zokufunda ziya kuthunyelwa kwisiseko sedatha ukuba idatha ayikho kwi-cache.

Ukuba ukufikelela ngokukhawuleza kwidatha kunye nokusebenza kwayo kubalulekile kuwe, umzekelo, ukuhlaziya ishishini, unokucinga malunga nokuphumeza i-In-Memory. Kwaye ukuphunyezwa, ungasebenzisa zombini iindlela xa uyila i-architecture entsha.
umthombo: www.habr.com
