Uued objekthoidlate mÔÔdikud

Uued objekthoidlate mÔÔdikudLennukite kindlus Nele-Dielilt

S3 objekti salvestamise meeskond Mail.ru pilvesalvestus vÔttis kokku artikli, millised kriteeriumid on objekti salvestamise valimisel olulised. JÀrgnevalt tekst autori vaatenurgast.

Kui jutt kĂ€ib objekti salvestamisest, siis mĂ”eldakse tavaliselt ainult ĂŒhele omadusele — hind TB/GB kohta. Muidugi, see nĂ€itaja on oluline, kuid see muudab lĂ€henemise ĂŒhepoolses ja vĂ”rdleb objekti salvestust arhiivide hoidmise tööriistaga. Selline lĂ€henemine vĂ€hendab ka objekti salvestuse tĂ€htsust ettevĂ”tte tehnoloogilises ökosĂŒsteemis.

Objekti salvestuse valimisel tasub keskenduda viiele omadusele:

  • tootlikkus;
  • skaleeritavus;
  • S3 ĂŒhilduvus;
  • rikete reageerimine;
  • tĂ€psus.

Need viis omadust on uued objekti salvestuse nÀitajad, sama olulised nagu hind. Vaatame neid kÔiki lÀhemalt.

TÔhusus

Traditsioonilised objekti salvestused ei paista silma tootlikkuse poolest. Teenusepakkujad on pidevalt ohverdanud tootlikkuse odavate hindade nimel. Kuid kaasaegsete objektide salvestustega on kÔik teisiti.

Erinevate salvestuste kiirus lĂ€heneb Hadoop'ile vĂ”i isegi ĂŒletab seda. Kaasaegsed lugemise ja kirjutamise kiirusnĂ”uded: 10 GB/s — kĂ”vaketaste jaoks, kuni 35 GB/s — NVMe jaoks. 

Selline ribalaius on piisav Spark'i, Presto, Tensorflow, Teradata, Vertica, Splunk'i ja teiste kaasaegsete analĂŒĂŒtiliste Ă”pikodade jaoks. Fakt, et MPP andmebaasid seadistatakse objekti salvestustele, nĂ€itab, et seda kasutatakse ĂŒha enam peamise salvestusena.

Kui teie salvestussĂŒsteem ei paku vajalikku kiirus, ei saa te andmeid kasutada ega neist vÀÀrtust vĂ€lja vĂ”tta. Isegi kui te ekstraheerite andmeid objekti salvestusest mĂ€lus töötlemise struktuuri, on ikka vajalik ribalaius andmete edastamiseks mĂ€llu ja sealt vĂ€lja. Vananenud objekti salvestuste puhul on seda liiga vĂ€he.

See on oluline punkt: uus tootlikkuse nÀitaja on ribalaius, mitte latentsus. See on vajalik skaleeritavatele andmetele ja see on norm tÀnapÀeva andmeinfrastruktuuris.

Ja kuigi jÔudlustestid on hea viis jÔudluse mÀÀramiseks, ei saa seda tÀpselt mÔÔta enne rakenduse kÀivitamist keskkonnas. Ainult pÀrast seda saab öelda, kus kitsaskohad asuvad: tarkvaras, ketastes, vÔrgu vÔi arvutusvÔimsuse tasemel.

Skaleeritavus

Mastaapsust mĂ”istetakse kui petabaiti, mis mahub ĂŒhte nimesse. Teenusepakkujad rÀÀgivad lihtsast mastaapsusest, kuid jĂ€tavad mainimata, et mastaapimise korral muutuvad massiivsed monoliitsed sĂŒsteemid habrasteks, keerukateks, ebastabiilseteks ja kulukateks.

Uus mastaapsuse nĂ€itaja on nimesid vĂ”i kliente, keda saate teenindada. Seda mÔÔdet vĂ”etakse otse hĂŒperkaalujatest, kus ladustamise ehitusplokid on vĂ€ikesed, kuid mastaabivad miljardite ĂŒksusteni. Üldiselt on see pilvenĂ€itajana.

Kui standardblokkide mÔÔtmed on vĂ€ikesed, on neid lihtsam optimeerida, st tagada turvalisus, ligipÀÀsukontroll, poliitikate, elutsĂŒkli ja vĂ€rskenduste haldamine katkestusteta. Ja lĂ”puks tagada jĂ”udlus. Ehitusploki suurus on funktsioon rikehaldamise juhtimisest, nii ehitatakse kĂ”rge kĂ€ttesaadavusega sĂŒsteeme.

Multikliendil on palju omadusi. Kuigi parameeter rÀÀgib sellest, kuidas organisatsioonid annavad ligipÀÀsu andmetele ja rakendustele, kehtib see ka rakenduste ja nende isolatsiooni loogika kohta.

Kaasaegse multikliendiga seotud lÀhenemise omadused:

  • LĂŒhikese aja jooksul vĂ”ib klientide arv tĂ”usta sadadest miljoniteni.
  • Kliendid on omavahel tĂ€ielikult eraldatud. See vĂ”imaldab neil kĂ€ivitada erinevaid versioone samast tarkvarast ja hoida objekte erinevate konfiguratsioonide, Ă”iguste, funktsioonide, turvatasemete ja teenindusastmetega. See on hĂ€davajalik uute serverite, uuenduste ja geograafiliste piirkondade skaleerimise korral.
  • Ahi on elastne mastaapimisega, ressursid pakutakse nĂ”udmisel.
  • Iga operatsiooni haldab API ja automatiseeritakse inimeste sekkumiseta.
  • Tarkvara saab paigutada konteineritesse ja kasutada standartseid orkestreerimisse sĂŒsteeme, nagu Kubernetes.

Ühildub S3-ga

Amazon S3 API — de facto standard objektide salvestamiseks. Iga tarkvaratootja, kes pakub objektide salvestust, vĂ€idab, et on sellega ĂŒhilduv. Ühilduvus S3-s on binaarne: kas see on tĂ€ielikult rakendatud vĂ”i ei ole seda ĂŒldse.

Praktiliselt vĂ”ib esineda sadu ja tuhandeid ÀÀrmuslikke stsenaariume, kus objektide salvestamise kasutamisel midagi lĂ€heb valesti. Eriti nagu see on juhtumiproprieetaarsete tarkvara ja teenuste pakkujatega. Selle pĂ”hieesmĂ€rgid on otse arhiivimine vĂ”i varundamine, seega API-kutsed on harvad, kasutusvĂ”imalused on ĂŒhtsed.

Olulised eelised avatud lĂ€htekoodiga tarkvaral. See katab enamiku ÀÀrmuslikest stsenaariumitest, arvestades rakenduste, operatsioonisĂŒsteemide ja riistvara arhitektuuri suurust ja mitmekesisust.

KĂ”ik see on arendajatele oluline, seega tasub testida rakenduse toimimist salvestusteenuse pakkujatega. Avatud lĂ€htekood lihtsustab seda protsessi — on lihtsam mĂ”ista, milline platvorm sobib teie rakendusele. Pakkujat saab kasutada ĂŒhtse sissepÀÀsupunktina salvestustesse — see tĂ€hendab, et see rahuldab teie vajadusi. 

Avatud lĂ€htekood tĂ€hendab: rakendused ei ole seotud pakkujaga ja on lĂ€bipaistvamad. See tagab rakenduse pika elutsĂŒkli.

Ja veel paar mÀrkust avatud lÀhtekoodist ja S3-st. 

Kui kÀivitate rakenduse, mis töötleb suurt andmehulka, tÔstab S3 SELECT mÀrkimisvÀÀrselt jÔudlust ja efektiivsust. See saavutatakse, kasutades SQL-i, et vÀljavÔtteid salvestusest ainult neid objekte, mis on teile vajalikud.

KĂŒsimus on teenusepakkujate toetuses hoiatuste kohta. Hoidla hoiatuste tugi lihtsustab serverivaba arvutust — oluliseks komponendiks mis tahes teenusena pakutavas mikroteenuste arhitektuuris. Arvestades, et objektide salvestus on sisuliselt pilvesalvestus, muutub see funktsioon otsustavaks, kui objektide salvestust kasutatakse pilve rakendustes.

LÔppkokkuvÔttes peab S3 rakendus toetama Amazon S3 API serveripoolsete ƥifreerimise meetodeid: SSE-C, SSE-S3, SSE-KMS. Veel parem, kui S3 toetab tÔeliselt turvalist volitamiskaitset. 

Reaktsioon tÔrgetele

Indikaator, mida tĂ”enĂ€oliselt sageli tĂ€helepanuta jĂ€etakse, on see, kuidas sĂŒsteem tegeleb tĂ”rgetega. TĂ”rkeid esineb erinevatel pĂ”hjustel ning objektne salvestus peab nendega kĂ”ikide juhtumite korral toime tulema.

NĂ€iteks on olemas ĂŒksik tĂ”rgetepunkt, mille mÔÔdik on null.

Kahjuks kasutavad paljud objektide salvestussĂŒsteemid spetsiaalseid sĂ”lmi, mis peavad olema aktiveeritud klastrite Ă”ige töö tagamiseks. Need hĂ”lmavad nimisĂ”lmi vĂ”i metaandmete servereid – see loob ainulaadse tĂ”rgetepunkti.

Isegi seal, kus on ette nÀhtud mitu tÔrgetepunkti, on esmatÀhtis vÔime taluda katastroofilisi tÔrkeid. KÔvakettad ebaÔnnestuvad, serverid ebaÔnnestuvad. Peamine on luua tarkvara, mis on loodud tÔrgete töötlemiseks normaalse seisundina. Kui kÔvaketas vÔi sÔlm ebaÔnnestub, töötab see tarkvara edasi ilma muutusteta.

Sisseehitatud kaitse kustutamise ja andmete degradatsiooni eest tagab, et: saate kaotada nii palju kĂ”vakettaid vĂ”i sĂ”lmi, kui teil on pariteediblokke – tavaliselt on see pool kĂ”vaketaste arvust. Ainult siis ei suuda tarkvara andmeid taastada.

TÔrkealased testid ei ole sageli koormuse all, kuid sellised testid on kohustuslikud. Koormuse all tÔrke simuleerimine nÀitab kooskulutusi, mis tekivad pÀrast tÔrget.

Konsistentsus

100% konsistentsuse nĂ€itajat nimetatakse ka rangeks konsistentsuseks. Konsistentsus on iga salvestussĂŒsteemi vĂ”tmekomponent, kuid range konsistentsus esineb ĂŒsna harva. NĂ€iteks Amazon S3 ListObject ei ole range konsistentsusega, see on konsistentne ainult lĂ”puks.

Mida tÀhendab range konsistentsus? KÔikide PUT-kinnitusejÀrgsete toimingute puhul peab olema jÀrgnev:

  • Uuendatud vÀÀrtus on nĂ€htav igast sĂ”lmest lugemisel.
  • Uuendamine on kaitstud sĂ”lme tĂ”rke varundamise eest.

See tĂ€hendab: kui tĂ”mmata pistik vĂ€lja salvestamise keskel, siis ei kao midagi. SĂŒsteem ei tagasta kunagi kahjustatud vĂ”i aegunud andmeid. See on kĂ”rge mÔÔt, mis on oluline paljudes stsenaariumides: alates tehingu rakendustest kuni varundamise ja taastamiseni.

KokkuvÔte

Need uued objektiteenuse metrikad, mis peegeldavad kasutusmudeleid tĂ€napĂ€evastes organisatsioonides, kus jĂ”udlus, jĂ€rjepidevus, skaleeritavus, tĂ”rke domeenid ja S3 ĂŒhilduvus on pilve rakenduste ja suurandmete analĂŒĂŒsi ehitusplokid. Soovitan seda loeteluga koos hinna kasutamist ka tĂ€napĂ€evaste andmestikke loomisel. 

Mail.ru Cloud Solutions objektiteenuse kohta: S3 arhitektuur. 3 aastat Mail.ru Cloud Storagei arengut.

Mida veel lugeda:

  1. NĂ€ide sĂŒndmustest juhitud rakendusest, mis pĂ”hineb veebihookidel Mail.ru Cloud Solutions objektiteenuses S3.
  2. Rohkem kui Ceph: MCS pilveplokkide salvestus 
  3. Töötamine Mail.ru Cloud Solutions objektiteenusega S3 kui failisĂŒsteemiga.
  4. Meie Telegrami kanal uuenduste kohta S3 salvestuses ja teistes toodetes. 

Allikas: habr.com

Osta usaldusvÀÀrne hostimine veebilehtede jaoks DDoS-i kaitsega, VPS VDS serverid đŸ”„ Osta usaldusvÀÀrne hostimine veebilehtede jaoks DDoS-i kaitsega, VPS VDS serverid | ProHoster