Hauv-Memory yog txheej txheej ntawm cov ntsiab lus khaws cia cov ntaub ntawv thaum nws khaws cia hauv daim ntawv thov RAM, thiab disk siv rau thaub qab. Hauv cov txheej txheem classical, cov ntaub ntawv khaws cia hauv disk thiab nco tau khaws cia hauv cache. Piv txwv li, daim ntawv thov lub vev xaib nrog lub backend rau kev ua cov ntaub ntawv thov nws mus rau hauv cia: nws tau txais nws, hloov nws, thiab ntau cov ntaub ntawv raug xa mus rau hauv lub network. Hauv In-Memory, kev suav raug xa mus rau cov ntaub ntawv - rau kev khaws cia, qhov twg lawv tau ua tiav thiab lub network tsis tshua muaj loaded.
Yuav ua li cas lwm yam muaj peev xwm muaj nyob rau hauv-Memory thiab hom ntawm txoj kev no yog dab tsi? Vladimir Pligin - engineer ntawm GridGain. Cov ntaub ntawv tshuaj xyuas no yuav muaj txiaj ntsig zoo rau web application backend developers uas tsis tau ua hauj lwm nrog In-Memory thiab xav sim, los yog txaus siab rau niaj hnub tiam sis nyob rau hauv kev tsim kho software thiab architecture tsim.
ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅. Tsab ntawv no yog ua raws li cov ntawv sau tseg ntawm Vladimir daim ntawv tshaj tawm ntawm #GetIT Conf. Ua ntej kev taw qhia txog kev cais tus kheej, peb niaj hnub tuav cov rooj sib tham thiab rooj sib tham rau cov neeg tsim khoom hauv Moscow thiab St. Petersburg: peb tau sib tham txog cov ncauj lus, kev txhim kho tam sim no, teeb meem thiab lawv cov kev daws teeb meem. Nws tsis tuaj yeem tuav lub rooj sib tham tam sim no, tab sis nws yog lub sijhawm los qhia cov ntaub ntawv muaj txiaj ntsig los ntawm yav dhau los.
Leej twg siv In-Memory thiab ua li cas
Nyob rau hauv-Memory feem ntau yog siv qhov twg cov neeg siv ceev nrooj sib cuam tshuam lossis ua tiav cov ntaub ntawv ntau heev.
- Cov tsev txhab nyiaj siv In-Memory, piv txwv li, txhawm rau txo qhov qeeb thaum cov neeg siv khoom siv los yog txheeb xyuas tus neeg siv khoom ua ntej tso nyiaj qiv.
- Fintech siv In-Memory los txhim kho kev ua haujlwm ntawm cov kev pabcuam thiab cov ntawv thov rau cov tsev txhab nyiaj uas outsource cov ntaub ntawv ua thiab tshuaj xyuas.
- Cov tuam txhab tuav pov hwm: xam cov kev pheej hmoo, piv txwv li, los ntawm kev tshuaj xyuas cov neeg siv khoom ntau xyoo.
- Cov tuam txhab logistics. Lawv ua tiav cov ntaub ntawv ntau, piv txwv li, los xam cov kev pom zoo rau kev thauj khoom thiab cov neeg caij tsheb thauj mus los nrog ntau txhiab qhov kev txwv, thiab taug qab cov xwm txheej ntawm cov khoom xa tuaj.
- Khw muag khoom. Cov kev daws teeb meem hauv nco pab pab cov neeg siv khoom sai dua thiab ua tiav cov ntaub ntawv ntau: xa khoom, xa ntawv, kev lag luam, muaj ntau txhiab cov khoom hauv warehouses, thiab npaj cov ntaub ntawv txheeb xyuas.
- Π IoT Hauv-Memory hloov cov ntaub ntawv ib txwm muaj.
- Pharmaceutical cov tuam txhab siv In-Memory, piv txwv li, los txheeb xyuas los ntawm kev sib xyaw ntawm cov tshuaj sib xyaw.
Kuv mam li qhia koj qee qhov piv txwv ntawm peb cov neeg siv khoom siv cov kev daws teeb meem hauv nco thiab koj tuaj yeem siv lawv tus kheej li cas.
Nyob rau hauv-Memory ua thawj cia
Ib qho ntawm peb cov neeg siv khoom yog cov khoom lag luam loj ntawm cov cuab yeej siv kho mob los ntawm Asmeskas. Lawv siv cov tshuaj In-Memory ua lawv cov ntaub ntawv tseem ceeb khaws cia. Tag nrho cov ntaub ntawv khaws cia rau hauv disk, thiab cov ntaub ntawv me me uas nquag siv tau khaws cia hauv RAM. Cov txheej txheem nkag mus cia yog tus qauv - GDBC (Generic Database Connector) thiab SQL query language.
Ua ke qhov no yog hu ua In-Memory Database (IMDB) lossis Memory-Centric Storage. Cov kev daws teeb meem no muaj ntau lub npe, cov no tsis yog tib qho xwb.
IMDB nta:
- Cov ntaub ntawv uas khaws cia hauv In-Memory thiab nkag los ntawm SQL yog tib yam li hauv lwm txoj hauv kev. Lawv yog synchronized, tsuas yog txoj kev ntawm kev nthuav qhia, txoj kev hais lus txawv. Transactionality ua haujlwm ntawm cov ntaub ntawv.
- IMDB yog nrawm dua li cov ntaub ntawv sib txuas vim tias nws nrawm dua los khaws cov ntaub ntawv los ntawm RAM dua li ntawm disk.
- Internal optimization algorithms muaj cov lus qhia tsawg dua.
- IMDBs tsim nyog rau kev tswj cov ntaub ntawv, txheej xwm thiab kev lag luam hauv cov ntawv thov.
IMDBs ib nrab txhawb ACID: Atomicity, Consistency, thiab Isolation. Tab sis lawv tsis txhawb "durability" - thaum lub hwj chim kaw, tag nrho cov ntaub ntawv ploj. Txhawm rau daws qhov teeb meem, koj tuaj yeem siv snapshots - "snapshot" ntawm cov ntaub ntawv, piv rau cov ntaub ntawv thaub qab ntawm lub hard drive, lossis cov ntaub ntawv kev lag luam (cov ntawv teev) los kho cov ntaub ntawv tom qab rov pib dua.
Txhawm rau tsim cov ntawv thov tsis raug cai
Cia peb xav txog qhov classic architecture ntawm lub vev xaib tsis raug cai. Nws ua haujlwm zoo li no: txhua qhov kev thov raug faib los ntawm lub vev xaib sib npaug ntawm cov servers. Qhov system no ruaj khov vim tias cov servers duplicate ib leeg thiab thaub qab thaum muaj xwm txheej.
Tus balancer coj txhua qhov kev thov los ntawm ib qho kev sib tham nruj me ntsis rau ib tus neeg rau zaub mov. Qhov no yog ib tug stick session mechanism: txhua qhov kev sib kho yog txuam nrog ib tug neeg rau zaub mov uas nws yog nyob rau hauv lub zos khaws cia thiab ua tiav.
Yuav ua li cas tshwm sim thaum ib qho ntawm cov servers ua tsis tiav?
Cov kev pabcuam yuav tsis raug cuam tshuam vim hais tias cov architecture yog duplicated. Tab sis peb yuav plam ib tug subset ntawm cov neeg rau zaub mov tuag cov zaug. Thiab tib lub sijhawm, cov neeg siv uas tau khi rau cov kev sib tham no. Piv txwv li, tus neeg siv khoom tso ib qho kev txiav txim thiab dheev pov nws tawm ntawm qhov chaw ua haujlwm. Nws yuav tsis zoo siab thaum nws nkag mus dua thiab pom tias txhua yam yuav tsum tau ua dua.
Daim ntawv thov lub vev xaib yuav tsum tau txhawb nqa ntau tus neeg siv thiab tsis qeeb kom lawv tuaj yeem ua haujlwm tau yooj yim. Tab sis yog tias nws tsis kam, nrog rau txhua qhov kev thov tom qab lub sijhawm nws siv los sib txuas lus nrog lub khw muag khoom yuav nce ntxiv. Qhov no nce qhov nruab nrab latency rau lwm tus neeg siv. Tab sis lawv tsis xav tos ntev dua li lawv tau siv.
Qhov teeb meem no tuaj yeem daws tau zoo li peb lwm tus neeg siv khoom, tus neeg muab kev pabcuam PASS loj los ntawm Tebchaws Meskas. Nws siv In-Memory los pab pawg sib tham hauv lub vev xaib. Txhawm rau ua qhov no, nws khaws cia tsis yog hauv zos, tab sis hauv nruab nrab - hauv ib pawg hauv nco. Nyob rau hauv cov ntaub ntawv no, kev sib ntsib muaj ntau sai dua vim hais tias lawv twb nyob rau hauv RAM.
Thaum tus neeg rau zaub mov poob, tus balancer xa cov lus thov los ntawm cov neeg rau zaub mov poob mus rau lwm cov servers, xws li hauv cov qauv qub. Tab sis muaj qhov sib txawv tseem ceeb: Cov kev sib tham tau muab khaws cia rau hauv ib pawg In-Memory thiab cov servers tau nkag mus rau cov ntu ntawm lub server poob.
Qhov no architecture tsub kom lub txim txhaum ntawm tag nrho cov system. Tsis tas li ntawd, nws muaj peev xwm tso tseg qhov kev sib kho ntawm lub pas nrig tag nrho.
Hybrid Transactional Analytical Processing (HTAP)
Feem ntau, kev hloov pauv thiab kev tshuaj ntsuam xyuas tau muab cais tawm. Thaum lawv sib cais, lub hauv paus tseem ceeb los ntawm kev thauj khoom. Rau kev txheeb xyuas cov ntaub ntawv, cov ntaub ntawv raug theej mus rau ib qho kev hloov pauv kom tsis txhob cuam tshuam nrog cov txheej txheem hloov pauv. Tab sis kev luam tawm tshwm sim nrog kev lag luam - nws tsis tuaj yeem rov ua dua yam tsis muaj kev lag luam. Yog tias peb ua qhov no synchronously, nws tseem yuav qeeb lub hauv paus tseem ceeb thiab peb yuav tsis tau txais kev yeej.
Hauv HTAP, txhua yam ua haujlwm sib txawv - tib cov ntaub ntawv khaws cia yog siv rau kev thauj khoom los ntawm cov ntawv thov, thiab rau cov lus nug tshuaj ntsuam uas tuaj yeem siv sijhawm ntev los ua kom tiav. Thaum cov ntaub ntawv yog nyob rau hauv RAM, analytical queries raug tua sai dua, thiab cov neeg rau zaub mov nrog cov database yog tsawg loaded (qhov nruab nrab).
Ib txoj hauv kev hybrid rhuav tshem cov phab ntsa ntawm kev ua lag luam thiab kev tshuaj xyuas. Yog hais tias peb ua analytics ntawm tib lub cia, ces analytical queries yog launched rau cov ntaub ntawv los ntawm RAM. Lawv muaj ntau qhov tseeb, txhais tau ntau dua thiab txaus.
Kev sib koom ua ke ntawm Cov kev daws teeb meem hauv nco
Ib (kwv yees) txoj kev yooj yim - txhim kho txhua yam ntawm kos. Peb khaws cov ntaub ntawv ntawm disk thiab khaws cov ntaub ntawv kub hauv lub cim xeeb. Qhov no pab kom muaj sia nyob server reboots lossis outages.
Muaj ob qhov xwm txheej tseem ceeb ntawm kev ua haujlwm ntawm no thaum cov ntaub ntawv khaws cia rau hauv disk. Thawj zaug, peb xav kom muaj sia nyob sib tsoo lossis rov ua haujlwm tsis tu ncua ntawm pawg lossis qhov chaw - peb xav siv nws los ua cov ntaub ntawv yooj yim. Hauv qhov xwm txheej thib ob, thaum muaj cov ntaub ntawv ntau dhau lawm, qee qhov nws nyob hauv lub cim xeeb.
Yog tias nws tsis tuaj yeem tsim txhua yam los ntawm kos, nws muaj peev xwm ua ke In-Memory rau hauv ib qho uas twb muaj lawm uas twb muaj lawm architecture. Tab sis tsis yog txhua qhov kev daws teeb meem hauv-Nco yog haum rau qhov no. Muaj peb yam uas yuav tsum tau ua. Qhov kev daws teeb meem hauv nco yuav tsum txhawb nqa:
- txheej txheem txuas mus rau lub database uas yuav nyob hauv qab nws (piv txwv li, MySQL);
- cov lus nug tus qauv, thiaj li tsis rov sau dua thiab hloov lub logic ntawm kev cuam tshuam nrog kev cia;
- kev hloov pauv - khaws cov semantics ntawm kev sib cuam tshuam.
Yog tias tag nrho peb cov xwm txheej tau ua tiav, ces kev koom ua ke yog ua tau. Peb tso In-Memory Data Grid ntawm daim ntawv thov thiab cov ntaub ntawv. Tam sim no sau cov lus thov yuav raug xa mus rau hauv cov ntaub ntawv hauv qab, thiab nyeem cov lus thov yuav raug xa mus rau cov ntaub ntawv hauv qab yog tias cov ntaub ntawv tsis nyob hauv cache.
Yog tias nkag mus ceev rau cov ntaub ntawv thiab nws cov kev ua haujlwm tseem ceeb rau koj, piv txwv li, rau kev lag luam analytics, koj tuaj yeem xav txog kev siv In-Memory. Thiab rau kev siv, koj tuaj yeem siv ob txoj hauv kev thaum tsim cov qauv tshiab.
Tau qhov twg los: www.hab.com