Faʻafefea ona vaʻai i mata o Cassandra e aunoa ma le leiloa o faʻamaumauga, mautu ma le faʻatuatua i le NoSQL

Faʻafefea ona vaʻai i mata o Cassandra e aunoa ma le leiloa o faʻamaumauga, mautu ma le faʻatuatua i le NoSQL

Latou te fai mai o mea uma i le olaga e aoga le taumafai ia le itiiti ifo ma le tasi. Ma afai e masani ona e galue ma sootaga DBMSs, e aoga le faamasani ma le NoSQL i le faʻatinoga, muamua lava, a itiiti mai mo le atinaʻe lautele. I le taimi nei, ona o le televave o le atinaʻeina o lenei tekinolosi, o loʻo i ai le tele o manatu feteʻenaʻi ma felafolafoaiga vevela i luga o lenei autu, lea e faʻamalosia ai le fiafia.
Afai e te suʻesuʻeina le aano o nei feeseeseaiga uma, e mafai ona e iloa e tulaʻi mai ona o se auala sese. O i latou o loʻo faʻaogaina faʻamaumauga a le NoSQL i le mea tonu e manaʻomia ai ua faamalieina ma maua uma mea lelei mai lenei fofo. Ma o tagata suʻesuʻe e faʻalagolago i lenei tekinolosi e avea o se panacea pe a le talafeagai uma e le fiafia, ona o le leiloa o le malosi o faʻamaumauga fesoʻotaʻiga e aunoa ma le mauaina o ni faʻamanuiaga taua.

O le a ou taʻu atu ia te oe lo matou poto masani i le faʻatinoina o se fofo e faʻavae i luga o le Cassandra DBMS: mea na matou feagai, pe na faʻafefea ona matou o ese mai tulaga faigata, pe na mafai ona matou manuia mai le faʻaaogaina o le NoSQL ma le mea e tatau ona matou teu faʻafaigaluegaina taumafaiga faaopoopo / tupe .
O le galuega muamua o le fausia lea o se faiga e fa'amauina ai telefoni i se ituaiga o teuina.

O le fa'aogaina o le faiga o lo'o fa'apea. O le faʻaoga e aofia ai faila ma se fausaga faʻapitoa e faʻamatalaina le fausaga o le valaau. Ona fa'amautinoa lea e le talosaga o lo'o teuina lenei fausaga i koluma talafeagai. I le lumanaʻi, o telefoni faʻapolopolo e faʻaaogaina e faʻaalia ai faʻamatalaga i luga o le faʻaaogaina o feoaiga mo le au fai saofaga (totogi, telefoni, tala faʻasolopito).

Faʻafefea ona vaʻai i mata o Cassandra e aunoa ma le leiloa o faʻamaumauga, mautu ma le faʻatuatua i le NoSQL

E manino lava le mafuaʻaga na latou filifilia ai Cassandra - na te tusitusi e pei o se fana masini, e faigofie ona faʻaogaina, ma faʻapalepale sese.

O lea la, o le mea lea na maua mai ia i matou

Ioe, o se pona ua toilalo e le o se faalavelave. O le ute lea o le faapalepale masei a Cassandra. Ae e mafai ona ola se pona ma i le taimi lava e tasi e amata ona mafatia i le faatinoga. E pei ona aliali mai, o lenei mea e vave ona afaina ai le faʻatinoga o le fuifui atoa.

O le a le puipuia oe e Cassandra i le mea na faasaoina ai oe e Oracle ma ona tapulaa. Ma afai e leʻi malamalama muamua le tusitala o le talosaga, ona oʻo mai lea o le faaluaina mo Cassandra e le sili atu le leaga nai lo le mea muamua. A oʻo mai, matou te tuʻuina i totonu.

Na matua le fiafia IB i le Cassandra saoloto mai le pusa: E leai se fa'amauina o gaioiga a tagata fa'aoga, leai se eseesega o aia tatau. O faʻamatalaga e uiga i telefoni e faʻatatau i faʻamatalaga patino, o lona uiga o taumafaiga uma e talosagaina / suia i soʻo se auala e tatau ona logoina ma le avanoa e suʻe ai suʻega. E le gata i lea, e tatau ona e nofouta i le manaʻoga e vavae ese aia i tulaga eseese mo tagata faʻaoga eseese. Ose enisinia fa'agaioiga faigofie ma se pule sili e mafai ona tape sa'oloto le avanoa autu atoa e ese'ese matafaioi, ese'ese tiute, ma agava'a. A aunoa ma se eseesega o aia tatau, o le taua ma le faʻamaoni o faʻamaumauga o le a vave ona fesiligia vave nai lo le soʻo se tulaga tutusa.

Matou te le'i amana'ia vala'au e mana'omia uma au'ili'iliga ogaoga ma fa'ata'ita'iga fa'avaitaimi mo tulaga eseese. Talu ai ona o faʻamaumauga filifilia e tatau ona tape ma toe tusi (o se vaega o le galuega, e tatau ona tatou lagolagoina le faagasologa o le faʻafouina o faʻamaumauga pe a le saʻo le sao o faʻamatalaga i la tatou matasele), e le o Cassandra la tatou uo iinei. O Cassandra e pei o se pusa pusa - e faigofie ona tuʻu mea i totonu, ae e le mafai ona e faitauina.

Na matou feagai ma se faʻafitauli i le fesiitaiga o faʻamatalaga i sone suʻega (5 nodes i le suega ma le 20 i le prom). I lenei tulaga, e le mafai ona faʻaaogaina le lapisi.

Le faʻafitauli i le faʻafouina o faʻamaumauga faʻamaumauga o se tusi talosaga e tusi atu ia Cassandra. O le toe fa'afo'isia o le a fa'atupuina ai le tele o ma'a tu'ugamau, e mafai ona o'o atu ai i le fa'aletonu o le gaosiga i ni auala e le'i fuafuaina.. Cassandra e sili ona lelei mo le pueina, ma e le mafaufau tele aʻo leʻi tusia. Soo se gaioiga e iai faʻamatalaga o loʻo iai i totonu o se faʻamaumauga foi. O lona uiga, e ala i le tapeina o mea e le manaʻomia, o le a naʻo le faia o faʻamaumauga e sili atu, ma naʻo nisi oi latou o le a makaina i maʻa tuugamau.

Taimi taimi pe a fa'aofi. E aulelei Cassandra i le lipine, ae o nisi taimi o le tafe mai e mafai ona matua fenumiai ia te ia. E tupu lenei mea pe a amata ona taamilo le talosaga i le tele o faʻamaumauga e le mafai ona faʻaofiina mo nisi mafuaaga. Ma o le a matou manaʻomia se DBA moni o le a mataʻituina le gc.log, system ma debug logs mo fesili lemu, metrics on compaction faʻatali.

Tele fa'amaumauga autu i se fuifui. O fea e faitau mai ai ma o fea e tusi ai?
Masalo vaevae i le faitau ma le tusitusi? Ma afai o lea, e tatau ona i ai se DC e latalata i le talosaga mo le tusitusi poʻo le faitau? Ma o le a tatou le iʻu ea i se faiʻai vaeluaga moni pe a tatou filifilia le tulaga tutusa tutusa? E tele fesili, tele tulaga le iloa, avanoa e te manaʻo moni e faʻaogaina.

Na faapefea ona matou filifili

Ina ia puipuia le pona mai le goto, matou te le mafaia le SWAP. Ma o lenei, afai e leai se manatua, e tatau ona alu i lalo le node ma aua le faia ni taofi tetele gc.

O lea, matou te le toe faʻalagolago i le faʻaogaina i totonu o faʻamaumauga. O lo'o toe a'oa'oina e le au fai talosaga latou lava ma ua amata ona fa'agaoioia le fa'aeteete i a latou lava tulafono. Vaevae manino lelei o le teuina ma le faʻaogaina o faʻamatalaga.

Na matou fa'atauina le lagolago mai le DataStax. O le atinaʻeina o Cassandra pusa ua maeʻa (o le tautinoga mulimuli o Fepuari 2018). I le taimi lava e tasi, ua ofoina atu e Datastax se auaunaga sili ona lelei ma se numera tele o fofo faʻaleleia ma faʻafetaui mo fofo IP o iai.

Ou te fia maitauina foi o Cassandra e le faigofie tele mo filifiliga filifiliga. Ioe, CQL o se laʻasaga tele i luma mo tagata faʻaoga (faʻatusatusa i Trift). Ae afai e iai au matagaluega uma e masani i ia tuʻufaʻatasiga faigofie, faʻamama fua e soʻo se fanua ma faʻataʻitaʻiga le gafatia, ma o nei matagaluega o loʻo galulue e foia faitioga ma faʻalavelave faʻafuaseʻi, ona foliga mai ai lea o le tali a Cassandra e faʻafefe ma valea ia i latou. Ma na amata ona matou filifili pe faʻafefea ona faia e a matou uo faʻataʻitaʻiga.

Na matou iloiloina ni filifiliga se lua. I le filifiliga muamua, matou te tusia ni telefoni e le gata i le C *, ae faʻapea foʻi i totonu o le database Oracle database. Na'o, e le pei o le C*, o lenei fa'amaumauga fa'amaumauga e vala'au mo na'o le masina o lo'o i ai nei (lava le loloto o le teuina o telefoni mo le fa'atumuina o mataupu). O iinei na matou vave vaʻaia ai le faʻafitauli lenei: afai matou te tusitusi faʻatasi, ona matou leiloa uma ai lea o le C * e fesoʻotaʻi ma faʻapipiʻi vave; afai matou te tusitusi asynchronously, e leai se faʻamautinoaga o telefoni uma e manaʻomia na oʻo i Oracle. E tasi le fa'aopoopo, ae tele: mo le fa'agaioiga o lo'o tumau pea le PL/SQL Developer masani, o lona uiga matou te fa'atinoina le mamanu "Facade". O se isi filifiliga. Matou te faʻatinoina se masini e faʻaaogaina ai telefoni mai le C *, toso mai ni faʻamatalaga mo le faʻatamaoaigaina mai laulau tutusa i Oracle, faʻatasi ma faʻataʻitaʻiga faʻataʻitaʻiga ma tuʻuina mai ia i matou le taunuʻuga, lea matou te faʻaaogaina (taʻavale i tua, toe fai, iloilo, faamemelo). Leaga: o le faagasologa e fai si tele-laasaga, ma i se faaopoopoga, e leai se atinaʻe mo tagata faigaluega.

I le faaiuga, na matou nofoia le filifiliga lona lua. Apache Spark sa faʻaaogaina e faʻataʻitaʻi mai fagu eseese. O le aano o le masini ua faʻaititia i le Java code, lea, e faʻaaoga ai ki faʻamaonia (tagata fai saofaga, taimi o le valaʻau - vaega ki), toso mai faʻamatalaga mai le C *, faʻapea foʻi ma faʻamatalaga talafeagai mo le faʻatamaoaigaina mai soʻo se isi faʻamaumauga. A maeʻa ona tuʻufaʻatasia i latou i lona manatua ma faʻaalia le taunuuga i le laulau e maua ai. Sa matou tusia se foliga i luga ole laiga i luga o le aloiafi ma na foliga mai e aoga tele.

Faʻafefea ona vaʻai i mata o Cassandra e aunoa ma le leiloa o faʻamaumauga, mautu ma le faʻatuatua i le NoSQL

Pe a foia le faʻafitauli o le faʻafouina o faʻamaumauga o suʻega fale gaosi oloa, matou toe mafaufau i ni fofo. Fa'aliliuina uma e ala i le Sstloader ma le filifiliga o le vaevaeina o le fuifui i le su'ega sone i ni vaega se lua, o ia mea ta'itasi e a'afia i le fuifui lava e tasi ma le fa'alauiloa, ma fa'amalosia ai. Pe a faʻafouina le suʻega, sa fuafua e fesuiaʻi i latou: o le vaega na galue i le suʻega ua faʻamamaina ma ulufale i le gaosiga, ma o le isi e amata ona galue faʻatasi ma faʻamatalaga. Ae ui i lea, ina ua uma ona toe mafaufau, sa sili atu ona matou iloiloina faʻamatalaga e tatau ona faʻafeiloaʻi, ma iloa ai o le telefoni o latou lava o se faʻalapotopotoga e le ogatasi mo suʻega, vave faʻatupuina pe a manaʻomia, ma o le faʻasalalauga faʻasalalauga seti e leai se aoga mo le fesiitaiga i le suega. E tele mea e teu ai e tatau ona fa'anofo, ae o ni laulau moni lava ia, ae le mamafa tele. O lea matou i le avea ai o se fofo, na toe sau Spark e laveai, faatasi ai ma le fesoasoani lea na matou tusia ai ma amata ona faʻaaogaina se tusitusiga mo le fesiitaiga o faʻamatalaga i le va o laulau, faʻataʻitaʻiga-suʻega.

O la matou faiga fa'avae o lo'o iai nei e mafai ai ona matou galulue e aunoa ma le toe fa'afo'i. Aʻo leʻi faia le faʻasalalauga, o loʻo i ai se suʻega faʻatulafonoina, lea e le taugata tele se mea sese. I le tulaga o le toilalo, e mafai ona e tuʻu i taimi uma le casespace ma taʻavale le polokalame atoa mai le amataga.

Ina ia mautinoa le maua pea o Cassandra, e te manaʻomia se dba ae le gata ia te ia. O tagata uma e galulue ma le talosaga e tatau ona malamalama i le mea ma pe faʻafefea ona vaʻavaʻai i le tulaga o loʻo iai nei ma pe faʻafefea ona faʻamaonia faʻafitauli i se taimi talafeagai. Ina ia faia lenei mea, matou te faʻaaogaina le DataStax OpsCenter (Faʻatonuga ma le mataʻituina o galuega), Cassandra Driver system metrics (numera o taimi e tusi ai i le C *, numera o taimi e faitau ai mai le C *, le maualuga o le latency, ma isi), mataʻituina le gaioiga. o le talosaga lava ia, galue ma Cassandra.

Ina ua matou mafaufau i le fesili muamua, na matou iloa ai le mea e ono taoto ai lo matou lamatiaga autu. O fa'amatalaga fa'amatalaga ia e fa'aalia ai fa'amatalaga mai le tele o fesili tuto'atasi i le teuina. O le auala lea e mafai ai ona tatou maua faʻamatalaga e le tutusa. Ae o lenei faʻafitauli o le a tutusa lava le talafeagai pe a matou galulue ma naʻo le tasi le nofoaga autu o faʻamatalaga. O lea la, o le mea e sili ona talafeagai iinei, o le mea moni, o le fatuina o se galuega faʻapipiʻi mo le faitauina o faʻamatalaga i luga o se talosaga lona tolu, lea o le a faʻamautinoa ai e maua faʻamatalaga i se taimi e tasi. Ae mo le vaevaega i le faitau ma le tusitusi e tusa ai ma le faatinoga, o iinei na taofia ai i matou i le tulaga lamatia o le leiloa o le sootaga i le va o DCs, e mafai ona matou iu i ni fuifui se lua e matua le ogatasi le tasi ma le isi.

O se taunuuga, mo le taimi nei taofi i le tulaga tutusa mo le tusitusi EACH_QUORUM, mo le faitau - LOCAL_QUORUM

Faamatalaga pupuu ma faaiuga

Ina ia mafai ona iloilo le fofo e maua mai i le vaaiga o le lagolago faʻatino ma faʻamoemoe mo le faʻaleleia atili, na matou filifili e mafaufau pe o fea se isi atinaʻe e mafai ona faʻaogaina.

I le taimi lava e tasi, ona fa'asolo lea o fa'amaumauga mo polokalame e pei o le "Totogi pe a talafeagai" (matou te utaina fa'amatalaga ile C*, fa'atatau ile fa'aogaina o Spark scripts), fa'amaumauga mo tagi fa'atasi ma le eria, teuina o matafaioi ma le fa'atatauina o aia tatau e maua ai tagata e fa'atatau ile matafaioi. matrix.

E pei ona mafai ona e vaʻai, o le repertoire e lautele ma eseese. Ma afai matou te filifilia le tolauapiga a le au lagolago / tetee a NoSQL, ona matou auai lea i le au lagolago, talu ai na matou mauaina o matou tulaga lelei, ma le mea tonu na matou faʻamoemoeina.

E oo lava i le Cassandra filifiliga i fafo o le atigipusa e mafai ai ona faʻasalalau faʻasalalau i le taimi moni, matua leai se tiga e foia ai le mataupu o le faʻateleina o faʻamatalaga i le faiga. Na mafai ona matou faʻanofoina se masini maualuga tele mo le faʻatulagaina o faʻasalalauga telefoni i se vaʻaiga eseʻese, ma tuʻueseese foi le faʻaogaina o le faʻaogaina ma le faʻaogaina, faʻateʻa ese le masani leaga o le tusiaina o galuega masani ma mea i totonu o le database lava ia. Na matou maua le avanoa e filifili ai ma faʻapipiʻi, e faʻavavevave, o DCs o le a matou faia faʻatusatusaga ma po o fea o le a matou faʻamaumau faʻamaumauga i luga, na matou inisiua i matou lava mai faʻalavelave o nodes taʻitoʻatasi ma le DC atoa.

O le faʻaaogaina o la matou faʻataʻitaʻiga i galuega fou, ma ua i ai se poto masani, ou te manaʻo e vave ona mafaufau i nuances o loʻo faʻamatalaina i luga, ma puipuia nisi mea sese, faʻalelei ni tulimanu mataʻutia e le mafai ona aloese mai le amataga.

Mo se faataitaiga, siaki fa'afouga a Cassandra i se taimi talafeagaiaua e fai lava si nai fa'afitauli na matou maua ua uma ona iloa ma fa'aleleia.

Aua ne'i tu'u uma le database lava ia ma Spark i nodes tutusa (pe vaevae faʻapitoa i le aofaʻi o punaoa faʻatagaina), talu ai e mafai e Spark ona 'ai atili OP nai lo le mea na faʻamoemoeina, ma o le a vave ona maua faʻafitauli numera 1 mai la matou lisi.

Fa'aleleia le mata'ituina ma le agava'a fa'agaioiga i le fa'ata'ita'iga o poloketi. I le taimi muamua, ia amanaia i le tele e mafai ai tagata faʻatau uma o la matou fofo, aua o le mea lea o le a faʻalagolago i ai le fausaga o faʻamaumauga.

Fa'asolo le li'o fa'ai'u fa'atele mo le fa'asilisili. Filifili po o fea fanua e mafai ona fa'asologa. Malamalama po'o le a le isi laulau e tatau ona tatou faia ina ia fa'atatau i le mea e sili ona sa'o ma sili ona lelei, ona tu'uina atu lea o fa'amatalaga mana'omia i luga ole talosaga (mo se fa'ata'ita'iga, i le manatu e mafai ona tatou teuina fa'amatalaga tutusa i laulau eseese, ma amana'ia fa'aletonu eseese e tusa ai. i taʻiala eseese, e mafai ona matou faʻasaoina tele le taimi o le CPU mo talosaga faitau).

E leai se leaga Tuuina atu vave mo le faʻapipiʻiina o le TTL ma le faʻamamaina o faʻamatalaga tuai.

Pe a sii mai faʻamatalaga mai Cassandra E tatau ona galue le fa'atonuga o le talosaga i luga o le FETCH mataupu, ina ia le o laina uma e utaina i le mafaufau i le taimi e tasi, ae filifilia i vaega.

E fautuaina a'o le'i tu'uina atu le poloketi ile fofo fa'amatala siaki le fa'apalepale fa'aletonu o le faiga e ala i le faia o se faasologa o su'ega fa'alavelave, e pei o le leiloa o faʻamaumauga i totonu o le tasi nofoaga autu o faʻamaumauga, toe faʻaleleia o faʻamaumauga faʻaleagaina i luga o se vaitaimi patino, faʻagata fesoʻotaʻiga i le va o nofoaga autu o faʻamatalaga. O ia suʻega o le a le gata ina mafai ai e se tasi ona iloilo le lelei ma le le lelei o le fausaga o loʻo fuafuaina, ae o le a tuʻuina atu ai foʻi ni faʻamafanafanaga lelei mo inisinia o loʻo faʻatautaia, ma o le tomai e maua o le a mamao ese mai le faʻaogaina pe afai e toe faʻaleleia le faʻaogaina o faiga i le gaosiga.

Afai tatou te galulue faʻatasi ma faʻamatalaga taua (e pei o faʻamatalaga mo pili, faʻatusatusaina o aitalafu a le au fai saofaga), e taua foi le gauai atu i meafaigaluega e faʻaitiitia ai aʻafiaga e tulaʻi mai ona o foliga o le DBMS. Mo se faʻataʻitaʻiga, faʻaaoga le aoga nodesync (Datastax), ua maeʻa ona atiaʻe se fuafuaga sili ona lelei mo lona faʻaogaina i le faasologa mo le lelei o le tumau, aua le faia se uta tele i Cassandra ma fa'aaoga mo na'o laulau fa'apitoa i se vaitaimi patino.

O le a le mea e tupu ia Cassandra ina ua mavae le ono masina o lona olaga? I se tulaga lautele, e leai ni faʻafitauli e leʻi foia. Matou te leʻi faʻatagaina foi ni faʻalavelave matuia poʻo le leiloa o faʻamaumauga. Ioe, e tatau ona matou mafaufau e totogi mo nisi o faʻafitauli e leʻi tulaʻi mai muamua, ae i le faaiuga e leʻi faʻafefe tele ai a matou fofo faʻataʻitaʻiga. Afai e te manaʻo ma e te le fefe e faʻataʻitaʻi se mea fou, ma i le taimi lava e tasi e te le manaʻo e te le fiafia tele, ona e sauni lea mo le mea moni e leai se mea e leai se totogi. E tatau ona e malamalama, suʻesuʻe i totonu o faʻamaumauga ma faʻapipiʻi lau lava rake e sili atu nai lo le talatuu tuai, ma e leai se talitonuga e taʻu muamua atu ia te oe po o le a le rake o loʻo faʻatali mo oe.

puna: www.habr.com

Faaopoopo i ai se faamatalaga