
Tím objektového S3 úložiska preložil článok o tom, aké kritériá sú dôležité pri výbere objektového úložiska. Nasleduje text z pohľadu autora.
Keď sa hovorí o objektovom úložisku, ľudia zvyčajne myslia len na jednu vlastnosť — cenu za TB/GB. Samozrejme, táto metrika je dôležitá, ale robí prístup jednostranným a zrovnáva objektové úložisko s nástrojom na uchovávanie archívov. Tento prístup tiež znižuje dôležitosť objektového úložiska v technologickom stacku podniku.
Pri výbere objektového úložiska by sa mal venovať pozornosť piatim charakteristikám:
- výkon;
- škálovateľnosť;
- kompatibilita s S3;
- reakcia na poruchy;
- integrita.
Týchto päť charakteristík sú nové metriky objektového úložiska, spolu s nákladmi. Pozrime sa na všetky.
Výkon
Tradičné objektové úložiská sa nevyznačujú výkonom. Poskytovatelia služieb neustále obetovali výkon v honbe za nízkymi cenami. Avšak s modernými objektovými úložiskami je to inak.
Rýchlosť rôznych úložísk sa blíži k Hadoop alebo ju dokonca prekonáva. Moderné požiadavky na rýchlosť čítania a zápisu: od 10 GB/s — pre pevné disky, až 35 GB/s — pre NVMe.
Takáto priepustnosť je dostatočná pre Spark, Presto, Tensorflow, Teradata, Vertica, Splunk a ďalšie moderné výpočtové rámce v analytickom stacku. Skutočnosť, že MPP databázy sa nastavujú na objektové úložiská, naznačuje, že sa čoraz častejšie používajú ako hlavné úložisko.
Ak váš systém úložiska nezabezpečuje požadovanú rýchlosť, nemôžete používať dáta a vytiahnuť z nich hodnoty. Aj keď vyťažujete dáta z objektového úložiska do štruktúry spracovania v pamäti, stále bude potrebná priepustnosť na prenos dát do pamäte a z nej. U zastaraných objektových úložísk jej nie je dostatok.
Toto je kľúčový bod: nový výkonový parameter — priepustnosť, nie latencia. Je potrebná pre škálovateľné dáta a to je norma v modernej dátovej infraštruktúre.
Aj keď sú testy výkonu dobrým spôsobom, ako určiť výkon, nie je možné ho presne zmerať pred spustením aplikácie v prostredí. Až po ňom môžete určiť, kde sa presne nachádza úzke miesto: v softvéri, diskoch, sieti alebo na úrovni výpočtov.
Škálovateľnosť
Škálovateľnosť sa chápe ako množstvo petabajtov, ktoré sa zmestia do jedného priestoru mien. Poskytovatelia sa chvália jednoduchou škálovateľnosťou, ale zamlčiavajú, že pri škálovaní sa obrovské monolitné systémy stávajú krehkými, komplikovanými, nestabilnými a nákladnými.
Nový ukazovateľ škálovateľnosti je počet priestorov mien alebo klientov, ktorých môžete obslúžiť. Túto metriku čerpajú priamo od hyperscalerov, kde sú stavebné bloky úložiska malé, ale škálujú sa na miliardy jednotiek. Vo všeobecnosti ide o cloudovú metriku.
Keď sú štandardné bloky malé, dajú sa ľahšie optimalizovať, to znamená, že je možné zabezpečiť bezpečnosť, kontrolu prístupu, správu politík, životného cyklu a aktualizácií bez prerušenia prevádzky. A nakoniec zabezpečiť výkon. Veľkosť stavebného bloku je funkciou spravovateľnosti oblasti zlyhania, takto sa budujú vysoko odolné systémy.
Multiklientnosť má množstvo charakteristík. Aj keď parameter hovorí o tom, ako organizácie poskytujú prístup k dátam a aplikáciám, týka sa aj samotných aplikácií a logiky ich izolácie od seba navzájom.
Charakteristiky moderného prístupu k multiklientnosti:
- V krátkom čase sa môže počet klientov zvýšiť z niekoľkých stoviek na niekoľko miliónov.
- Klienti sú úplne izolovaní jeden od druhého. To im umožňuje spúšťať rôzne verzie toho istého softvéru a uchovávať objekty s rôznymi konfiguráciami, povoleniami, funkciami, úrovňami zabezpečenia a obsluhy. To je nevyhnutné, keď sa škálujú nové servery, aktualizácie a geografické regióny.
- Úložisko je elasticky škálovateľné, zdroje sú poskytované na požiadanie.
- Každá operácia je spravovaná API a automatizovaná bez účasti človeka.
- Softvér možno umiestniť do kontajnerov a používať štandardné systémy orchestrácie, ako je Kubernetes.
Kompatibilita so S3
Amazon S3 API — de facto štandard pre objektové úložiská. Každý poskytovateľ softvéru pre objektové úložisko tvrdí, že je s ním kompatibilný. Kompatibilita so S3 je binárna: buď je implementovaná v plnom rozsahu, alebo nie je.
V praxi sú možné stovky a tisíce hraničných scenárov, kedy pri používaní objektového úložiska niečo nejde podľa plánu. Zvlášť u poskytovateľov proprietary softvéru a služieb. Hlavné scenáre jeho použitia sú priamo archivovanie alebo zálohovanie, preto je málo dôvodov na volanie API a variácie použitia sú homogénne.
Significant advantages of open-source software. It covers most edge scenarios given the size and diversity of applications, operating systems, and hardware architecture.
Všetko toto je dôležité pre vývojárov aplikácií, preto je potrebné testovať fungovanie aplikácie s poskytovateľmi úložísk. Open-source zjednodušuje proces — je jednoduchšie pochopiť, ktorá platforma vyhovuje vašej aplikácii. Poskytovateľ môže fungovať ako jediné vstupné miesto do úložísk — znamená to, že splní vaše potreby.
Open-source znamená: aplikácie nie sú viazané na poskytovateľa a sú transparentnejšie. To zabezpečuje dlhý životný cyklus aplikácie.
A ešte niekoľko poznámok ohľadom open-source a S3.
Ak spúšťate aplikáciu na spracovanie veľkých dát, S3 SELECT zvyšuje výkon a efektivitu. To sa dosahuje pomocou SQL na získavanie z úložiska iba tých objektov, ktoré potrebujete.
Kľúčovým aspektom je podpora upozornení na vedro. Upozornenia na vedro uľahčujú serverless výpočty — dôležitú súčasť každej mikroslužbovej architektúry, ktorá sa poskytuje ako služba. Vzhľadom na to, že objektové úložisko je v podstate cloudové úložisko, táto funkcia sa stáva rozhodujúcou, keď objektové úložisko používajú cloudové aplikácie.
Nakoniec by implementácia S3 mala podporovať rozhrania pre šifrovanie API Amazon S3 na strane servera: SSE-C, SSE-S3, SSE-KMS. Ešte lepšie, ak S3 podporuje ochranu pred neoprávneným prístupom, ktorá je skutočne bezpečná.
Reakcia na poruchy
Ukazovateľ, ktorý pravdepodobne často prehliadame, je spôsob, akým systém spracúva zlyhania. Zlyhania sa môžu vyskytnúť z rôznych dôvodov a objektové úložisko by malo zvládať všetky tieto situácie.
Napríklad existuje jediný bod zlyhania, ktorý má metrickú hodnotu nulovú.
Bohužiaľ, mnohé systémy objektového úložiska využívajú špeciálne uzly, ktoré musia byť aktivované pre správnu funkčnosť klastra. Patria sem uzly mien alebo servery metadát, čo vytvára jediný bod zlyhania.
Aj tam, kde sú predpokladané viaceré miesta zlyhania, je dôležité mať schopnosť odolávať katastrofálnym zlyhaniam. Disky zlyhávajú, servery zlyhávajú. Kľúčovým prvkom je vytvoriť softvér, ktorý je navrhnutý na spracovanie zlyhaní ako normálnych stavov. Pri zlyhaní disku alebo uzla takýto softvér naďalej funguje bez zmien.
Vstavaná ochrana pred vymazaním a degradáciou dát zabezpečuje: môžete stratiť toľko diskov alebo uzlov, koľko máte blokov parity – obvykle je to polovica diskov. A až vtedy softvér nebude schopný obnoviť dáta.
Zlyhanie sa zriedkavo testuje pod zaťažením, ale takáto kontrola je nevyhnutná. Modelovanie zlyhania pod zaťažením ukáže celkové náklady, ktoré vzniknú po zlyhaní.
Konzistentnosť
Miera konzistentnosti 100% sa tiež nazýva prísna konzistentnosť. Konzistentnosť je kľúčovou súčasťou akéhokoľvek úložného systému, no prísna konzistentnosť sa vyskytuje pomerne zriedka. Napríklad Amazon S3 ListObject nie je prísne konzistentný, je konzistentný iba na konci.
Čo znamená prísna konzistentnosť? Pre všetky operácie po potvrdenej operácii PUT sa musí vykonať nasledujúce:
- Aktualizovaná hodnota je viditeľná pri čítaní z akéhokoľvek uzla.
- Aktualizácia je chránená zálohovaním proti zlyhaniu uzla.
To znamená: ak vytiahnete zástrčku uprostred zápisu, nič sa nestratí. Systém nikdy nevráti poškodené alebo zastarané dáta. Toto je vysoký štandard, ktorý má význam pre mnohé scenáre: od transakčných aplikácií až po zálohovanie a obnovu.
Záver
Toto sú nové metriky objektového úložiska, ktoré odrážajú modely používania v moderných organizáciách, kde sú výkon, konzistentnosť, škálovateľnosť, domény zlyhania a kompatibilita so S3 základnými kameňmi pre cloudové aplikácie a analytiku veľkých dát. Odporúčam použiť tento zoznam spolu s cenou pri tvorbe moderných dátových stackov.
O objektovom úložisku Mail.ru Cloud Solutions: .
Čo ďalšie čítať:
- .
- .
- .
Zdroj: habr.com
