Hi kollha! Jisimni Golov Nikolay. Preċedentement, ħdimt f'Avito u ġestejt il-Pjattaforma tad-Data għal sitt snin, jiġifieri, ħdimt fuq id-databases kollha: analitiċi (Vertica, ClickHouse), streaming u OLTP (Redis, Tarantool, VoltDB, MongoDB, PostgreSQL). Matul dan iż-żmien, ttrattat numru kbir ta 'databases - differenti ħafna u mhux tas-soltu, u ma' każijiet mhux standard tal-użu tagħhom.
Bħalissa qed naħdem fuq ManyChat. Essenzjalment, din hija startup - ġdida, ambizzjuża u li qed tikber malajr. U meta ngħaqadt mal-kumpanija għall-ewwel darba, qamet mistoqsija klassika: "X'għandha tieħu startup żagħżugħa issa mis-suq tad-DBMS u tad-database?"
F'dan l-artikolu, ibbażat fuq ir-rapport tiegħi fuq , se nwieġeb din il-mistoqsija. Verżjoni bil-vidjo tar-rapport hija disponibbli fuq .

Databases magħrufa komunement 2020
Huwa l-2020, ħarist madwar u rajt tliet tipi ta 'databases.
L-ewwel tip - databases OLTP klassiċi: PostgreSQL, SQL Server, Oracle, MySQL. Inkitbu żmien twil ilu, iżda għadhom rilevanti minħabba li huma tant familjari mal-komunità tal-iżviluppaturi.
It-tieni tip - bażijiet minn "żero". Huma ppruvaw jitbiegħdu minn mudelli klassiċi billi jabbandunaw SQL, strutturi tradizzjonali u ACID, billi żiedu sharding integrati u karatteristiċi attraenti oħra. Per eżempju, dan huwa Cassandra, MongoDB, Redis jew Tarantool. Dawn is-soluzzjonijiet kollha riedu joffru lis-suq xi ħaġa fundamentalment ġdida u okkupaw in-niċċa tagħhom għax irriżultaw li kienu estremament konvenjenti għal ċerti kompiti. Se nindika dawn id-databases bit-terminu umbrella NOSQL.
Iż-"żeri" spiċċaw, drajna għad-databases NOSQL, u d-dinja, mill-perspettiva tiegħi, ħadet il-pass li jmiss - biex databases ġestiti. Dawn id-databases għandhom l-istess qalba bħal databases OLTP klassiċi jew NoSQL ġodda. Iżda m'għandhom l-ebda ħtieġa għal DBA u DevOps u jimxu fuq ħardwer ġestit fis-sħab. Għal żviluppatur, din hija "biss bażi" li taħdem x'imkien, iżda ħadd ma jimpurtah kif huwa installat fuq is-server, min ikkonfigura s-server u min jaġġornah.
Eżempji ta' tali databases:
- AWS RDS huwa tgeżwir ġestit għal PostgreSQL/MySQL.
- DynamoDB huwa analogu AWS ta' database bbażata fuq dokumenti, simili għal Redis u MongoDB.
- Amazon Redshift hija database analitika ġestita.
Dawn huma bażikament databases qodma, iżda mqajma f'ambjent ġestit, mingħajr il-ħtieġa li taħdem ma 'hardware.
Nota. L-eżempji jittieħdu għall-ambjent AWS, iżda l-analogi tagħhom jeżistu wkoll f'Microsoft Azure, Google Cloud, jew Yandex.Cloud.

X'hemm ġdid dwar dan? Fl-2020, xejn minn dan.
Kunċett bla server
Dak li hu verament ġdid fis-suq fl-2020 huma soluzzjonijiet serverless jew serverless.
Se nipprova nispjega xi jfisser dan billi tuża l-eżempju ta 'servizz regolari jew applikazzjoni backend.
Biex niskjeraw applikazzjoni backend regolari, aħna nixtru jew nikru server, nikkopjaw il-kodiċi fuqu, nippubblikaw l-endpoint barra u nħallsu regolarment għall-kera, l-elettriku u s-servizzi taċ-ċentru tad-dejta. Din hija l-iskema standard.
Hemm xi mod ieħor? B'servizzi bla server tista'.
X'inhu l-fokus ta 'dan l-approċċ: m'hemm l-ebda server, lanqas ma hemm kiri ta' istanza virtwali fil-cloud. Biex tuża s-servizz, ikkopja l-kodiċi (funzjonijiet) fir-repożitorju u ppubblikah fl-endpoint. Imbagħad aħna sempliċement inħallsu għal kull sejħa għal din il-funzjoni, billi ninjoraw kompletament il-ħardwer fejn tiġi esegwita.
Se nipprova nispjega dan l-approċċ bi stampi.

Skjerament klassiku. Għandna servizz b'ċerta tagħbija. Aħna ngħollu żewġ każijiet: servers fiżiċi jew istanzi fl-AWS. It-talbiet esterni jintbagħtu lil dawn l-istanzi u jiġu pproċessati hemmhekk.
Kif tistgħu taraw fl-istampa, is-servers mhumiex mormija bl-istess mod. Wieħed huwa 100% utilizzat, hemm żewġ talbiet, u wieħed huwa biss 50% - parzjalment idle. Jekk ma jaslux tliet talbiet, iżda 30, allura s-sistema kollha ma tkunx tista 'tlaħħaq mat-tagħbija u tibda tonqos.

Skjerament bla server. F'ambjent bla servers, servizz bħal dan m'għandux istanzi jew servers. Hemm ċertu ġabra ta 'riżorsi msaħħna - kontenituri Docker żgħar ippreparati b'kodiċi tal-funzjoni skjerat. Is-sistema tirċievi talbiet esterni u għal kull wieħed minnhom il-qafas serverless iqajjem kontenitur żgħir b'kodiċi: jipproċessa din it-talba partikolari u joqtol il-kontenitur.
Talba waħda - kontenitur wieħed imqajjem, 1000 talba - 1000 kontenitur. U l-iskjerament fuq servers tal-ħardwer huwa diġà xogħol il-fornitur tas-sħab. Huwa kompletament moħbi mill-qafas serverless. F'dan il-kunċett aħna nħallsu għal kull telefonata. Pereżempju, sejħa waħda ġiet kuljum - ħallasna għal sejħa waħda, wasal miljun kull minuta - ħallasna għal miljun. Jew fit-tieni, dan jiġri wkoll.
Il-kunċett tal-pubblikazzjoni ta' funzjoni bla server huwa adattat għal servizz mingħajr stat. U jekk għandek bżonn servizz (stat) sħiħ, allura aħna nżidu database mas-servizz. F'dan il-każ, meta tiġi biex taħdem ma 'l-istat, kull funzjoni statefull sempliċement tikteb u taqra mid-database. Barra minn hekk, minn database ta 'kwalunkwe wieħed mit-tliet tipi deskritti fil-bidu tal-artikolu.
X'inhi l-limitazzjoni komuni ta' dawn id-databases kollha? Dawn huma l-ispejjeż ta 'sħaba jew server ta' hardware użat b'mod kostanti (jew diversi servers). Ma jimpurtax jekk nużawx database klassika jew ġestita, kemm jekk għandna Devops u admin jew le, xorta nħallsu għall-ħardwer, l-elettriku u l-kiri taċ-ċentru tad-data 24/7. Jekk ikollna bażi klassika, inħallsu għall-kaptan u l-iskjav. Jekk hija database sharded mgħobbija ħafna, aħna nħallsu għal 10, 20 jew 30 servers, u nħallsu kontinwament.
Il-preżenza ta 'servers riservati b'mod permanenti fl-istruttura tal-ispejjeż qabel kienet pperċepita bħala ħażen meħtieġ. Id-databases konvenzjonali għandhom ukoll diffikultajiet oħra, bħal limiti fuq in-numru ta’ konnessjonijiet, restrizzjonijiet ta’ skalar, kunsens ġeo distribwit – b’xi mod jistgħu jiġu solvuti f’ċerti databases, iżda mhux kollha f’daqqa u mhux idealment.
Database serverless - teorija
Mistoqsija tal-2020: huwa possibbli li ssir database serverless ukoll? Kulħadd sema' dwar il-backend serverless... ejja nippruvaw nagħmlu d-database serverless?
Dan ħsejjes stramba, minħabba li d-database hija servizz statefull, mhux adattat ħafna għal infrastruttura serverless. Fl-istess ħin, l-istat tad-database huwa kbir ħafna: gigabytes, terabytes, u f'databases analitiċi anke petabytes. Mhuwiex daqshekk faċli li tgħollih f'kontenituri Docker ħfief.
Min-naħa l-oħra, kważi d-databases moderni kollha fihom ammont kbir ta 'loġika u komponenti: tranżazzjonijiet, koordinazzjoni ta' integrità, proċeduri, dipendenzi relazzjonali u ħafna loġika. Għal ħafna loġika tad-database, stat żgħir huwa biżżejjed. Gigabytes u Terabytes jintużaw direttament minn porzjon żgħir biss tal-loġika tad-database involuta fl-eżekuzzjoni diretta tal-mistoqsijiet.
Għaldaqstant, l-idea hija: jekk parti mil-loġika tippermetti eżekuzzjoni mingħajr stat, għaliex ma taqsamx il-bażi f'partijiet Stateful u Stateless.
Serverless għal soluzzjonijiet OLAP
Ejja naraw kif tista' tidher it-tqattigħ ta' database f'partijiet Stateful u Stateless bl-użu ta' eżempji prattiċi.

Pereżempju, għandna database analitika: data esterna (ċilindru aħmar fuq ix-xellug), proċess ETL li jgħabbi dejta fid-database, u analista li jibgħat mistoqsijiet SQL lid-database. Din hija skema klassika tal-operat tal-maħżen tad-data.
F'din l-iskema, l-ETL titwettaq kondizzjonali darba. Imbagħad trid tħallas kontinwament għas-servers li fuqhom taħdem id-database b'dejta mimlija bl-ETL, sabiex ikun hemm xi ħaġa li tibgħat mistoqsijiet.
Ejja nħarsu lejn approċċ alternattiv implimentat f'AWS Athena Serverless. M'hemm l-ebda ħardwer iddedikat b'mod permanenti li fih tinħażen id-dejta mniżżla. Minflok dan:
- L-utent jissottometti mistoqsija SQL lil Athena. L-ottimizzatur Athena janalizza l-mistoqsija SQL u jfittex fil-maħżen tal-metadejta (Metadejta) għad-dejta speċifika meħtieġa biex tesegwixxi l-mistoqsija.
- L-ottimizzatur, ibbażat fuq id-dejta miġbura, iniżżel id-dejta meħtieġa minn sorsi esterni f'ħażna temporanja (database temporanja).
- Mistoqsija SQL mill-utent titwettaq f'ħażna temporanja u r-riżultat jintbagħat lura lill-utent.
- Il-ħażna temporanja titneħħa u r-riżorsi jiġu rilaxxati.
F'din l-arkitettura, aħna nħallsu biss għall-proċess ta 'eżekuzzjoni tat-talba. Ebda talbiet - l-ebda spejjeż.

Dan huwa approċċ ta 'ħidma u huwa implimentat mhux biss f'Athena Serverless, iżda wkoll f'Redshift Spectrum (f'AWS).
L-eżempju ta 'Athena juri li d-database Serverless taħdem fuq mistoqsijiet reali b'għexieren u mijiet ta' Terabytes ta 'dejta. Mijiet ta' Terabytes se jeħtieġu mijiet ta' servers, iżda m'għandniex għalfejn inħallsu għalihom - aħna nħallsu għat-talbiet. Il-veloċità ta 'kull talba hija (ħafna) baxxa meta mqabbla ma' databases analitiċi speċjalizzati bħal Vertica, iżda aħna ma nħallsux għal perjodi ta 'waqfien.
Tali database hija applikabbli għal mistoqsijiet analitiċi ad hoc rari. Pereżempju, meta niddeċiedu spontanjament li nittestjaw ipoteżi fuq xi ammont ġiganteski ta 'dejta. Athena hija perfetta għal dawn il-każijiet. Għal talbiet regolari, sistema bħal din hija għalja. F'dan il-każ, id-data fil-cache f'xi soluzzjoni speċjalizzata.
Serverless għal soluzzjonijiet OLTP
L-eżempju preċedenti ħares lejn il-kompiti OLAP (analitiċi). Issa ejja nħarsu lejn il-kompiti OLTP.
Ejja nimmaġinaw PostgreSQL jew MySQL skalabbli. Ejja ngħollu istanza regolari ġestita PostgreSQL jew MySQL b'riżorsi minimi. Meta l-istanza tirċievi aktar tagħbija, aħna se nikkonnettjaw repliki addizzjonali li lilhom se nqassmu parti mit-tagħbija tal-qari. Jekk ma jkunx hemm talbiet jew tagħbija, aħna itfi r-repliki. L-ewwel istanza hija l-kaptan, u l-bqija huma repliki.
Din l-idea hija implimentata f'database msejħa Aurora Serverless AWS. Il-prinċipju huwa sempliċi: talbiet minn applikazzjonijiet esterni huma aċċettati mill-flotta prokura. Meta tara t-tagħbija tiżdied, talloka riżorsi tal-kompjuter minn każijiet minimi msaħħna minn qabel - il-konnessjoni ssir malajr kemm jista 'jkun. L-istanzi ta' diżabilitazzjoni jseħħu bl-istess mod.
Fi ħdan Aurora hemm il-kunċett ta 'Aurora Capacity Unit, ACU. Din hija (kondizzjonalment) istanza (server). Kull ACU speċifiku jista 'jkun kaptan jew slave. Kull Unità ta' Kapaċità għandha RAM, proċessur u disk minimu tagħha stess. Għaldaqstant, wieħed huwa kaptan, il-bqija jinqraw biss repliki.
In-numru ta 'dawn l-Unitajiet ta' Kapaċità Aurora li qed jaħdmu huwa parametru konfigurabbli. Il-kwantità minima tista' tkun waħda jew żero (f'dan il-każ, id-database ma taħdimx jekk ma jkunx hemm talbiet).

Meta l-bażi tirċievi talbiet, il-flotta prokura tqajjem Aurora CapacityUnits, u żżid ir-riżorsi tal-prestazzjoni tas-sistema. Il-ħila li żżid u tnaqqas ir-riżorsi tippermetti lis-sistema "juggle" riżorsi: turi awtomatikament ACUs individwali (biex tissostitwixxihom b'oħrajn ġodda) u toħroġ l-aġġornamenti kurrenti kollha għar-riżorsi rtirati.
Il-bażi Aurora Serverless tista 'skala t-tagħbija tal-qari. Iżda d-dokumentazzjoni ma tgħidx dan direttament. Jista 'jħossu li jistgħu jerfgħu multi-master. M'hemm l-ebda maġija.
Din id-database hija adattata tajjeb biex tevita li tonfoq ammonti kbar ta 'flus fuq sistemi b'aċċess imprevedibbli. Pereżempju, meta noħolqu MVP jew kummerċjalizzazzjoni ta 'siti ta' business card, ġeneralment ma nistennewx tagħbija stabbli. Għaldaqstant, jekk ma jkunx hemm aċċess, ma nħallsux għal każijiet. Meta sseħħ tagħbija mhux mistennija, pereżempju wara konferenza jew kampanja ta 'reklamar, folol ta' nies iżuru s-sit u t-tagħbija tiżdied b'mod drammatiku, Aurora Serverless awtomatikament tieħu din it-tagħbija u tgħaqqad malajr ir-riżorsi neqsin (ACU). Imbagħad il-konferenza tgħaddi, kulħadd jinsa dwar il-prototip, is-servers (ACU) jidlam, u l-ispejjeż jinżlu għal żero - konvenjenti.
Din is-soluzzjoni mhix adattata għal tagħbija għolja stabbli minħabba li ma tiskalax it-tagħbija tal-kitba. Dawn il-konnessjonijiet u skonnessjonijiet tar-riżorsi kollha jseħħu fl-hekk imsejjaħ "punt ta 'skala" - punt fiż-żmien meta d-database ma tkunx appoġġjata minn tranżazzjoni jew tabelli temporanji. Pereżempju, fi żmien ġimgħa l-punt tal-iskala jista 'ma jseħħx, u l-bażi taħdem fuq l-istess riżorsi u sempliċement ma tistax tespandi jew tikkuntratta.
M'hemm l-ebda maġija - huwa PostgreSQL regolari. Iżda l-proċess ta 'żieda ta' magni u skonnettjar tagħhom huwa parzjalment awtomatizzat.
Serverless mid-disinn
Aurora Serverless hija database antika miktuba mill-ġdid għall-cloud biex tieħu vantaġġ minn xi wħud mill-benefiċċji ta 'Serverless. U issa ngħidlek dwar il-bażi, li oriġinarjament kienet miktuba għas-sħaba, għall-approċċ serverless - Serverless-by-design. Ġie żviluppat immedjatament mingħajr l-assunzjoni li taħdem fuq servers fiżiċi.
Din il-bażi tissejjaħ Snowflake. Għandu tliet blokki ewlenin.

L-ewwel huwa blokk tal-metadata. Dan huwa servizz veloċi fil-memorja li jsolvi kwistjonijiet ta' sigurtà, metadata, tranżazzjonijiet, u ottimizzazzjoni tal-mistoqsijiet (muri fl-illustrazzjoni fuq ix-xellug).
It-tieni blokk huwa sett ta 'clusters tal-kompjuters virtwali għall-kalkoli (fl-illustrazzjoni hemm sett ta' ċrieki blu).
It-tielet blokk hija sistema ta 'ħażna ta' data bbażata fuq S3. S3 huwa ħażna ta 'oġġetti mingħajr dimensjoni fl-AWS, tip ta' Dropbox bla dimensjoni għan-negozju.
Ejja naraw kif jaħdem Snowflake, jekk wieħed jassumi bidu kiesaħ. Jiġifieri, hemm database, id-dejta titgħabba fiha, m'hemm l-ebda mistoqsija li taħdem. Għaldaqstant, jekk ma jkunx hemm talbiet għad-database, allura qajjimna s-servizz veloċi ta' Metadata fil-memorja (l-ewwel blokk). U għandna ħażna S3, fejn id-dejta tal-mejda hija maħżuna, maqsuma f'hekk imsejħa mikropartizzjonijiet. Għas-sempliċità: jekk it-tabella fiha tranżazzjonijiet, allura mikropartizzjonijiet huma l-ġranet tat-tranżazzjonijiet. Kull jum huwa mikropartizzjoni separata, fajl separat. U meta d-database topera f'dan il-mod, tħallas biss għall-ispazju okkupat mid-data. Barra minn hekk, ir-rata għal kull siġġu hija baxxa ħafna (speċjalment meta titqies il-kompressjoni sinifikanti). Is-servizz tal-metadata jaħdem ukoll kontinwament, iżda m'għandekx bżonn ħafna riżorsi biex tottimizza l-mistoqsijiet, u s-servizz jista 'jitqies bħala shareware.
Issa ejja nimmaġinaw li utent daħal fid-database tagħna u bagħat mistoqsija SQL. Il-mistoqsija SQL tintbagħat immedjatament lis-servizz tal-Metadata għall-ipproċessar. Għaldaqstant, malli jirċievi talba, dan is-servizz janalizza t-talba, id-dejta disponibbli, il-permessi tal-utenti u, jekk kollox ikun tajjeb, ifassal pjan għall-ipproċessar tat-talba.
Sussegwentement, is-servizz jibda t-tnedija tar-raggruppament tal-kompjuters. Cluster tal-kompjuters huwa grupp ta' servers li jwettqu kalkoli. Jiġifieri, dan huwa raggruppament li jista 'jkun fih 1 server, 2 servers, 4, 8, 16, 32 - kemm trid. Inti tarmi talba u t-tnedija ta 'dan il-cluster immedjatament tibda. Huwa verament jieħu sekondi.

Sussegwentement, wara li l-cluster ikun beda, il-mikropartizzjonijiet meħtieġa biex tipproċessa t-talba tiegħek jibdew jiġu kkupjati fil-cluster minn S3. Jiġifieri, ejja nimmaġinaw li biex tesegwixxi mistoqsija SQL għandek bżonn żewġ diviżorji minn tabella waħda u waħda mit-tieni. F'dan il-każ, it-tliet diviżorji meħtieġa biss se jiġu kkupjati fil-cluster, u mhux it-tabelli kollha kompletament. Huwa għalhekk, u preċiżament għaliex kollox jinsab f'ċentru tad-dejta wieħed u konness b'kanali veloċi ħafna, il-proċess kollu ta 'trasferiment iseħħ malajr ħafna: f'sekondi, rari ħafna f'minuti, sakemm ma nkunux qed nitkellmu dwar xi talbiet mostrużi . Għaldaqstant, il-mikropartizzjonijiet jiġu kkupjati fil-cluster tal-kompjuters, u, mat-tlestija, il-mistoqsija SQL tiġi eżegwita fuq dan il-cluster tal-kompjuters. Ir-riżultat ta’ din it-talba jista’ jkun linja waħda, diversi linji jew tabella – jintbagħtu esternament lill-utent sabiex ikun jista’ jniżżha, juriha fl-għodda BI tiegħu, jew jużaha b’xi mod ieħor.
Kull mistoqsija SQL tista 'mhux biss taqra aggregati minn data mgħobbija qabel, iżda wkoll tagħbija/jiġġenera data ġdida fid-database. Jiġifieri, tista 'tkun mistoqsija li, pereżempju, iddaħħal rekords ġodda f'tabella oħra, li twassal għad-dehra ta' partizzjoni ġdida fuq il-cluster tal-kompjuters, li, min-naħa tagħha, tiġi ffrankata awtomatikament f'ħażna S3 waħda.
Ix-xenarju deskritt hawn fuq, mill-wasla tal-utent sat-tgħollija tal-cluster, it-tagħbija tad-data, l-eżekuzzjoni ta 'mistoqsijiet, il-kisba ta' riżultati, jitħallas bir-rata għal minuti ta 'użu tal-cluster tal-kompjuters virtwali mqajma, maħżen virtwali. Ir-rata tvarja skont iż-żona AWS u d-daqs tal-cluster, iżda bħala medja hija ta 'ftit dollari fis-siegħa. Raggruppament ta 'erba' magni jiswa darbtejn aktar minn raggruppament ta 'żewġ magni, u raggruppament ta' tmien magni għadu jiswa darbtejn. Għażliet ta '16, 32 magna huma disponibbli, skond il-kumplessità tat-talbiet. Imma tħallas biss għal dawk il-minuti meta l-cluster ikun fil-fatt jaħdem, għax meta ma jkun hemm l-ebda rikjesta, int tip ta’ idejk, u wara 5-10 minuti ta’ stennija (parametru konfigurabbli) titfi waħdu, ħeles ir-riżorsi u ssir ħielsa.
Xenarju kompletament realistiku huwa meta tibgħat talba, il-cluster jitfaċċa, relattivament, f'minuta, jgħodd minuta oħra, imbagħad ħames minuti biex tingħalaq, u tispiċċa tħallas għal seba' minuti ta' tħaddim ta' dan il-cluster, u mhux għal xhur u snin.
L-ewwel xenarju deskritt bl-użu ta 'Snowflake f'ambjent ta' utent wieħed. Issa ejja nimmaġinaw li hemm ħafna utenti, li huwa eqreb għax-xenarju reali.
Ejja ngħidu li għandna ħafna analisti u rapporti ta' Tableau li kontinwament jibbumbardjaw id-database tagħna b'numru kbir ta' mistoqsijiet SQL analitiċi sempliċi.
Barra minn hekk, ejja ngħidu li għandna Xjentisti tad-Data inventivi li qed jippruvaw jagħmlu affarijiet mostrużi bid-dejta, joperaw b'għexieren ta 'Terabytes, janalizzaw biljuni u triljuni ta' ringieli ta 'dejta.
Għaż-żewġ tipi ta' xogħol deskritti hawn fuq, Snowflake jippermettilek li tgħolli diversi gruppi ta' kompjuters indipendenti ta' kapaċitajiet differenti. Barra minn hekk, dawn ir-raggruppamenti tal-kompjuter jaħdmu b'mod indipendenti, iżda b'dejta konsistenti komuni.
Għal numru kbir ta 'mistoqsijiet ħfief, tista' tqajjem 2-3 gruppi żgħar, bejn wieħed u ieħor 2 magni kull wieħed. Din l-imġieba tista 'tiġi implimentata, fost affarijiet oħra, bl-użu ta' settings awtomatiċi. Allura tgħid, “Snowflake, għolli grupp żgħir. Jekk it-tagħbija fuqha tiżdied 'il fuq minn ċertu parametru, għolli t-tieni simili, it-tielet. Meta t-tagħbija tibda tonqos, itfi l-eċċess.” Biex ikunu kemm jiġu analisti u jibdew iħarsu lejn ir-rapporti, kulħadd ikollu biżżejjed riżorsi.
Fl-istess ħin, jekk l-analisti jkunu reqdin u ħadd ma jħares lejn ir-rapporti, ir-raggruppamenti jistgħu jidlam kompletament, u tieqaf tħallas għalihom.
Fl-istess ħin, għal mistoqsijiet tqal (minn Xjentisti tad-Data), tista 'tqajjem cluster wieħed kbir ħafna għal 32 magna. Dan il-grupp se jitħallas ukoll biss għal dawk il-minuti u s-sigħat meta t-talba ġgant tiegħek tkun qed taħdem hemm.
L-opportunità deskritta hawn fuq tippermettilek taqsam mhux biss 2, iżda wkoll aktar tipi ta 'xogħol fi gruppi (ETL, monitoraġġ, materjalizzazzjoni tar-rapporti,...).
Ejja nġabru fil-qosor Snowflake. Il-bażi tgħaqqad idea sabiħa u implimentazzjoni operabbli. F'ManyChat, nużaw Snowflake biex janalizzaw id-dejta kollha li għandna. M'għandniex tliet gruppi, bħal fl-eżempju, iżda minn 5 sa 9, ta 'daqsijiet differenti. Għandna konvenzjonali 16-il magna, 2-magni, u wkoll dawk super-żgħar 1-magna għal xi kompiti. Huma jqassmu b'suċċess it-tagħbija u jippermettulna niffrankaw ħafna.
Id-database tiskala b'suċċess it-tagħbija tal-qari u l-kitba. Din hija differenza enormi u avvanz kbir meta mqabbla mal-istess "Aurora", li ġarret biss it-tagħbija tal-qari. Snowflake jippermettilek li tiskala l-ammont tax-xogħol tal-kitba tiegħek b'dawn ir-raggruppamenti tal-kompjuters. Jiġifieri, kif semmejt, nużaw diversi clusters f'ManyChat, clusters żgħar u super-żgħar jintużaw prinċipalment għall-ETL, għat-tagħbija tad-dejta. U l-analisti diġà jgħixu fuq clusters medji, li assolutament mhumiex affettwati mit-tagħbija ETL, għalhekk jaħdmu malajr ħafna.
Għaldaqstant, id-database hija adattata tajjeb għall-kompiti OLAP. Madankollu, sfortunatament, għadu mhux applikabbli għall-piżijiet tax-xogħol OLTP. L-ewwelnett, din id-database hija kolonni, bil-konsegwenzi kollha li jirriżultaw. It-tieni nett, l-approċċ innifsu, meta għal kull talba, jekk meħtieġ, tgħolli raggruppament tal-kompjuters u tgħarraq bid-dejta, sfortunatament, għadu mhux mgħaġġel biżżejjed għal tagħbijiet OLTP. L-istennija ta' sekondi għal kompiti OLAP hija normali, iżda għal kompiti OLTP hija inaċċettabbli; 100 ms tkun aħjar, jew 10 ms tkun saħansitra aħjar.
Total
Database mingħajr server hija possibbli billi d-database taqsam f'partijiet Stateless u Stateful. Jista 'jkollok innotajt li fl-eżempji kollha ta' hawn fuq, il-parti Stateful hija, relattivament, taħżen mikro-diviżorji f'S3, u Stateless huwa l-ottimizzatur, jaħdem mal-metadata, jimmaniġġja kwistjonijiet ta 'sigurtà li jistgħu jitqajmu bħala servizzi indipendenti ħfief Stateless.
L-eżekuzzjoni ta' mistoqsijiet SQL tista' tiġi pperċepita wkoll bħala servizzi ta' stat ħafif li jistgħu jitfaċċaw fil-modalità serverless, bħal clusters tal-kompjuters Snowflake, iniżżlu biss id-dejta meħtieġa, tesegwixxi l-mistoqsija u "toħroġ."
Id-databases tal-livell tal-produzzjoni mingħajr server huma diġà disponibbli għall-użu, qed jaħdmu. Dawn id-databases mingħajr server huma diġà lesti biex jimmaniġġjaw il-kompiti OLAP. Sfortunatament, għal ħidmiet OLTP jintużaw... bi sfumaturi, peress li hemm limitazzjonijiet. Min-naħa waħda, dan huwa minus. Iżda, min-naħa l-oħra, din hija opportunità. Forsi wieħed mill-qarrejja jsib mod biex jagħmel database OLTP kompletament bla server, mingħajr il-limitazzjonijiet ta 'Aurora.
Nispera li sibtha interessanti. Serverless huwa l-futur :)
Sors: www.habr.com
