Yahoo Sherpa - Yahoo Sherpa - Wikipedia
tento článek obsahuje obsah, který je napsán jako reklama.Červen 2018) (Zjistěte, jak a kdy odstranit tuto zprávu šablony) ( |
tento článek ne uvést žádný Zdroje.Říjen 2020) (Zjistěte, jak a kdy odstranit tuto zprávu šablony) ( |
Vývojáři | Yahoo! |
---|---|
Napsáno | C ++, PHP |
Operační systém | Linux |
Typ | úložiště klíč – hodnota |
Šerpo je Yahoo! příští generace cloudové úložiště plošina. Jedná se o hostovaný, distribuovaný a geograficky replikovaný pár klíč – hodnota úložiště dat. Je to NoSQL systém, který byl vyvinut společností Yahoo !, aby řešil škálovatelnost, dostupnost a latence potřeby Yahoo! webové stránky. Sherpa má schopnosti, jako je pružný růst, multi-nájem, globální stopa pro místní přístup s nízkou latencí, asynchronní replikace, přenos reprezentativního stavu (REST) založená na rozhraní API webových služeb, nové knoflíky konzistence podle záznamu, vysoká dostupnost, komprese, sekundární indexy a replikace na úrovni záznamu.
Architektura
Sherpa je systém s více nájemci. Aplikace může ukládat data do tabulky, což je kolekce záznamů. Tabulka je střep na menší kousky zvané tablety. Data jsou rozdělena na základě hash hodnota klíče nebo rozsahu rozdělené. Tablety jsou uloženy na uzlech označovaných jako paměťové jednotky. Softwarová směrovací vrstva sleduje mapování mezi aplikačními tablety a paměťovými jednotkami. Aplikace odesílají požadavky na router, který je na základě mapy tabletu přeposílá na správnou úložnou jednotku. Klienti mohou získávat, nastavovat, mazat a skenovat záznamy pomocí jedinečných primárních klíčů záznamů.
Datový model
Sherpův datový model je úložiště klíč-hodnota, kde jsou data uložena jako JSON kuličky. Data jsou organizována v tabulkách, kde lze vynutit jedinečnost primárního klíče, ale kromě toho neexistují žádná pevná schémata. Podporuje skenování jedné tabulky s predikáty. Zákazníci si mohou vybrat různé typy stolů: distribuovaná hash tabulka, distribuovaná objednaná tabulka a zvládnuté a slučující tabulky. Vhodnost jednotlivých typů tabulek určuje přístupové vzory specifické pro aplikaci. Vzory dotazů ovlivňují definici klíče.
Funkce
Škálovatelnost
Sherpa škáluje rozdělením dat: datové oddíly se nazývají tablety. Každá tabulka definovaná zákazníkem je rozdělena na tablety. Tablety jsou tedy jednotkou pracovního úkolu i nájmu. Každá tableta obsahuje řadu záznamů. Šerpa dokáže škálovat na velmi velké množství stolů, tabletů a záznamů.
Pružnost
Při přidávání novějších strojů se systém horizontálně přizpůsobuje, aniž by docházelo k prostojům aplikací. Mezi další operace pružnosti patří přiřazení datových oddílů, opětovné přiřazení a rozdělení.
Odolnost proti chybám
Data se automaticky replikují na více uzlů pro odolnost proti chybám. Replikace napříč více datovými centry je podporována. Selhání jednoho uzlu je pro aplikace transparentní. Sherpa spoléhá na spolehlivou transakční zprávu autobus pro replikaci transakcí. Tato sběrnice zpráv zaručuje přinejmenším jednou doručení transakčních zpráv.
Nastavitelná konzistence
Sherpa podporuje různé úrovně konzistence, od konzistence časové osy jednotlivých záznamů, kde jsou všechny zápisy serializovány, až po hlavní kopii, až po případná konzistence.
Selektivní replikace záznamů
Replikace zrnitost dochází na úrovních záznamů a tabulek.
Záloha
Funkce Zálohování umožňuje uložit několik starých kopií celé tabulky offline úložný prostor. Z tohoto offline úložiště mohou zákazníci načíst staré verze jednotlivých záznamů.
Sekundární indexy
Mnoho aplikací potřebuje přístup k datům prostřednictvím datových polí mimo primární klíč. Sherpa podporuje asynchronní sekundární indexy.
Reference
externí odkazy
- Msgstr "Architektura PNUTS". CiteSeerX 10.1.1.141.68. Citovat deník vyžaduje
| deník =
(Pomoc) - Aktualizace Sherpa
- Yahoo Developer Network
- Růst a rozsah šerpů