
Příkaz úložiště objektů S3 přeložil článek o tom, jaká kritéria jsou důležitá při výběru úložiště objektů. Následuje text z pohledu autora.
Pokud jde o objektové úložiště, lidé obvykle myslí pouze na jednu věc: cenu za TB/GB. Tato metrika je samozřejmě důležitá, ale činí tento přístup jednostranným a staví na roveň ukládání objektů s nástrojem pro ukládání archivů. Navíc tento přístup snižuje význam úložiště objektů pro zásobník podnikových technologií.
Při výběru úložiště objektů byste měli věnovat pozornost pěti charakteristikám:
- výkonnost;
- škálovatelnost;
- S3 kompatibilní;
- reakce na poruchy;
- integrita.
Těchto pět charakteristik jsou nové metriky pro ukládání objektů spolu s náklady. Pojďme se na ně všechny podívat.
Производительность
Tradičním objektům chybí výkon. Poskytovatelé služeb to neustále obětovali ve snaze o nízké ceny. S moderním ukládáním předmětů jsou však věci jiné.
Různé úložné systémy se přibližují nebo dokonce překračují rychlost Hadoopu. Moderní požadavky na rychlost čtení a zápisu: od 10 GB/s u pevných disků až po 35 GB/s u NVMe.
Tato propustnost je dostatečná pro Spark, Presto, Tensorflow, Teradata, Vertica, Splunk a další moderní výpočetní rámce v analytickém zásobníku. Skutečnost, že databáze MPP jsou konfigurovány pro ukládání objektů, naznačuje, že se stále více používají jako primární úložiště.
Pokud váš úložný systém neposkytuje rychlost, kterou potřebujete, nemůžete data použít a extrahovat z nich hodnotu. I když načítáte data z objektového úložiště do struktury zpracování v paměti, stále budete potřebovat šířku pásma pro přenos dat do az paměti. Starší úložiště objektů toho nemají dostatek.
Toto je klíčový bod: novou metrikou výkonu je propustnost, nikoli latence. Je vyžadován pro data ve velkém měřítku a je standardem v moderní datové infrastruktuře.
Zatímco benchmarky jsou dobrým způsobem, jak určit výkon, nelze jej přesně změřit před spuštěním aplikace v prostředí. Teprve poté můžete říci, kde přesně je úzké hrdlo: v softwaru, na discích, v síti nebo na výpočetní úrovni.
Škálovatelnost
Škálovatelnost se týká počtu petabajtů, které se vejdou do jednoho jmenného prostoru. Prodejci tvrdí, že je snadná škálovatelnost, ale neříkají, že při škálování se masivní monolitické systémy stávají křehkými, složitými, nestabilními a drahými.
Novou metrikou pro škálovatelnost je počet jmenných prostorů nebo klientů, které můžete obsluhovat. Metrika je převzata přímo z hyperškálovačů, kde jsou stavební bloky úložiště malé, ale škálovatelné na miliardy jednotek. Obecně se jedná o cloudovou metriku.
Když jsou stavební bloky malé, je snazší je optimalizovat pro zabezpečení, řízení přístupu, správu zásad, správu životního cyklu a nerušivé aktualizace. A nakonec zajistit produktivitu. Velikost stavebního bloku je funkcí ovladatelnosti oblasti selhání, což je způsob, jakým se budují vysoce odolné systémy.
Vícenásobný nájem má mnoho vlastností. Zatímco tato dimenze hovoří o tom, jak organizace poskytují přístup k datům a aplikacím, týká se také samotných aplikací a logiky jejich vzájemné izolace.
Charakteristika moderního přístupu k multiklientům:
- Během krátké doby může počet klientů narůst z několika stovek na několik milionů.
- Klienti jsou od sebe zcela izolovaní. To jim umožňuje spouštět různé verze stejného softwaru a ukládat objekty s různými konfiguracemi, oprávněními, funkcemi, úrovněmi zabezpečení a údržby. To je nezbytné při škálování na nové servery, aktualizace a geografické oblasti.
- Úložiště je elasticky škálovatelné, zdroje jsou poskytovány na vyžádání.
- Každá operace je řízena API a je automatizovaná bez lidského zásahu.
- Software lze hostovat v kontejnerech a používat standardní orchestrační systémy, jako je Kubernetes.
S3 kompatibilní
Amazon S3 API je de facto standardem pro ukládání objektů. Každý dodavatel softwaru pro ukládání objektů prohlašuje, že je s ním kompatibilní. Kompatibilita s S3 je binární: buď je plně implementována, nebo není.
V praxi existují stovky nebo tisíce okrajových scénářů, kdy se při použití objektového úložiště něco pokazí. Zejména od poskytovatelů proprietárního softwaru a služeb. Jeho hlavní případy použití jsou přímá archivace nebo zálohování, takže existuje jen málo důvodů pro volání API, případy použití jsou homogenní.
Open source software má významné výhody. Pokrývá většinu okrajových scénářů vzhledem k velikosti a rozmanitosti aplikací, operačních systémů a hardwarových architektur.
To vše je pro vývojáře aplikací důležité, proto se vyplatí aplikaci otestovat u poskytovatelů úložiště. Open source proces usnadňuje – je snazší pochopit, která platforma je pro vaši aplikaci ta pravá. Poskytovatel může být použit jako jediný vstupní bod do úložiště, což znamená, že bude vyhovovat vašim potřebám.
Open source znamená: aplikace nejsou vázány na dodavatele a jsou transparentnější. To zajišťuje dlouhou životnost aplikace.
A ještě pár poznámek k open source a S3.
Pokud provozujete aplikaci pro velká data, S3 SELECT řádově zlepšuje výkon a efektivitu. Dělá to pomocí SQL k načtení pouze objektů, které potřebujete z úložiště.
Klíčovým bodem je podpora bucket notifikací. Oznámení o segmentech usnadňují práci s počítačem bez serveru, což je důležitá součást jakékoli architektury mikroslužeb, která je dodávána jako služba. Vzhledem k tomu, že úložiště objektů je v podstatě cloudové úložiště, stává se tato schopnost kritickou, když úložiště objektů využívají cloudové aplikace.
A konečně, implementace S3 musí podporovat šifrovací API na straně serveru Amazon S3: SSE-C, SSE-S3, SSE-KMS. Ještě lepší je, že S3 podporuje ochranu proti neoprávněné manipulaci, která je skutečně bezpečná.
Reakce na neúspěchy
Metrikou, která je pravděpodobně často přehlížena, je způsob, jakým systém řeší selhání. K selhání dochází z různých důvodů a úložiště objektů je musí zvládnout všechny.
Například existuje jediný bod selhání, jehož metrika je nula.
Bohužel mnoho systémů pro ukládání objektů používá speciální uzly, které musí být povoleny, aby cluster správně fungoval. Patří mezi ně jmenné uzly nebo servery metadat – to vytváří jediný bod selhání.
I tam, kde existuje více bodů selhání, je schopnost odolat katastrofálnímu selhání prvořadá. Selhají disky, selžou servery. Klíčem je vytvořit software navržený tak, aby řešil selhání jako normální stav. Pokud dojde k poruše disku nebo uzlu, bude takový software nadále fungovat beze změn.
Vestavěná ochrana proti vymazání dat a degradaci dat zajišťuje, že můžete ztratit tolik disků nebo uzlů, kolik máte paritních bloků – obvykle polovinu disků. Teprve poté nebude software schopen vrátit data.
Porucha je zřídka testována při zatížení, ale takové testování je vyžadováno. Simulace výpadku zátěže ukáže celkové náklady vzniklé po poruše.
Konzistence
Skóre konzistence 100 % se také nazývá přísná konzistence. Konzistence je klíčovou součástí každého úložného systému, ale silná konzistence je vzácná. Například Amazon S3 ListObject není striktně konzistentní, konzistentní je pouze na konci.
Co znamená přísná důslednost? Pro všechny operace po potvrzené operaci PUT musí nastat následující:
- Aktualizovaná hodnota je viditelná při čtení z libovolného uzlu.
- Aktualizace je chráněna proti redundanci při selhání uzlu.
To znamená, že pokud vytáhnete zástrčku uprostřed nahrávky, nic se neztratí. Systém nikdy nevrací poškozená nebo zastaralá data. To je vysoká laťka, na které záleží v mnoha scénářích, od transakčních aplikací po zálohování a obnovu.
Závěr
Jedná se o nové metriky ukládání objektů, které odrážejí vzorce využití v dnešních organizacích, kde jsou základními kameny pro cloudové aplikace a analýzu velkých dat výkon, konzistence, škálovatelnost, domény chyb a kompatibilita S3. Tento seznam doporučuji použít kromě ceny při budování moderních datových zásobníků.
O úložišti objektů Cloud Solutions Mail.ru: .
Co ještě číst:
- .
- .
- .
Zdroj: www.habr.com
