Programovanie

6 skrytých úzkych miest v migrácii dát v cloude

Seth Noble je zakladateľom a prezidentom Data Expedition.

Presun terabajtov alebo dokonca petabajtov dát do cloudu je náročná úloha. Je však dôležité pozerať sa nad rámec počtu bajtov. Pravdepodobne viete, že vaše aplikácie sa budú správať odlišne, keď sa k nim bude pristupovať v cloude, že nákladové štruktúry sa budú líšiť (dúfajme, že lepšie) a že presun všetkých týchto údajov bude trvať nejaký čas.

Pretože moja spoločnosť, Data Expedition, podniká v oblasti vysokovýkonného prenosu dát, zákazníci k nám prichádzajú, keď očakávajú, že rýchlosť siete bude problémom. Ale v procese pomoci spoločnostiam prekonať tento problém sme videli veľa ďalších faktorov, ktoré, ak sa prehliadnu, hrozia vykoľajením z cloudovej migrácie.

Zhromažďovanie, organizácia, formátovanie a overovanie údajov môže predstavovať oveľa väčšie výzvy ako ich presun. Tu je niekoľko bežných faktorov, ktoré je potrebné zohľadniť vo fázach plánovania migrácie cloudu, aby ste sa neskôr vyhli časovo náročným a nákladným problémom.

Úzke miesto cloudovej migrácie č. 1: Úložisko dát

Najbežnejšou chybou, ktorú vidíme v migrácii cloudu, je tlačenie dát do cloudového úložiska bez toho, aby sme zvážili, ako sa tieto dáta použijú. Typický myšlienkový proces je: „Chcem dať svoje dokumenty a databázy do cloudu a ukladanie objektov je lacné, takže sem vložím svoje súbory s dokumentmi a databázami.“ Ale súbory, objekty a databázy sa správajú veľmi odlišne. Ak svoje bajty zadáte nesprávne, môžu to ochromiť vaše plány cloudu.

Súbory sú usporiadané podľa hierarchie ciest a adresárového stromu. Ku každému súboru je rýchly prístup s minimálnou latenciou (čas do prvého bajtu) a vysokou rýchlosťou (bitov za sekundu, keď začnú údaje prúdiť). Jednotlivé súbory je možné ľahko presúvať, premenovávať a meniť ich až na úroveň bajtov. Môžete mať veľa malých súborov, malý počet veľkých súborov alebo ľubovoľnú kombináciu veľkostí a typov údajov. Tradičné aplikácie môžu pristupovať k súborom v cloude rovnako ako v iných priestoroch bez zvláštneho povedomia o cloudu.

Vďaka všetkým týmto výhodám je úložisko založené na súboroch najdrahšou možnosťou, ale ukladanie súborov v cloude má niekoľko ďalších nevýhod. Na dosiahnutie vysokého výkonu je k väčšine cloudových súborových systémov (napríklad Amazon EBS) prístupný iba jeden cloudový virtuálny počítač súčasne, čo znamená, že všetky aplikácie vyžadujúce tieto údaje musia byť spustené na jednom cloudovom virtuálnom počítači. Na obsluhu viacerých virtuálnych počítačov (napríklad Azure Files) je potrebné umiestniť úložisko s protokolom NAS (sieťové úložisko), ako je SMB, čo môže výrazne obmedziť výkon. Systémy súborov sú rýchle, flexibilné a kompatibilné so staršími verziami, sú však drahé, užitočné iba pre aplikácie spustené v cloude a nemajú dostatočné mierky.

Objekty nie sú súbory. Pamätajte na to, pretože je ľahké zabudnúť. Objekty žijú v rovnom mennom priestore, ako jeden obrovský adresár. Latencia je vysoká, niekedy stovky alebo tisíce milisekúnd, a nízka priepustnosť, ktorá často dosahuje okolo 150 megabitov za sekundu, pokiaľ sa nepoužívajú chytré triky. Veľa informácií o prístupe k objektom spočíva v dômyselných trikoch, ako je nahrávanie viacerých častí, prístup k bajtovému rozsahu a optimalizácia názvu kľúča. Objekty dokáže čítať veľa cloudových natívnych aj webových aplikácií naraz, a to z cloudu aj mimo neho, ale tradičné aplikácie si vyžadujú riešenie obmedzujúce výkon. Väčšina rozhraní pre prístup k úložisku objektov spôsobuje, že objekty vyzerajú ako súbory: názvy kľúčov sú filtrované podľa predpony, aby vyzerali ako priečinky, vlastné metadáta sú pripojené k objektom, aby vyzerali ako metadáta súborov, a niektoré systémy, napríklad objekty FUSE cache, v systéme súborov VM umožňujú prístup. tradičnými aplikáciami. Ale také riešenia sú krehké a miazgové vlastnosti. Cloudové úložisko je lacné, škálovateľné a cloudové natívne, ale je tiež pomalé a ťažko prístupné.

Databázy majú svoju vlastnú zložitú štruktúru a sú prístupné v dotazovacích jazykoch, ako je SQL. Tradičné databázy môžu byť zálohované ukladaním súborov, ale na poskytovanie dotazov vyžadujú proces živej databázy. To sa dá zdvihnúť do cloudu skopírovaním databázových súborov a aplikácií na virtuálny počítač alebo migráciou údajov do cloudovej hostovanej databázovej služby. Ale kopírovanie databázového súboru do úložiska objektov je užitočné iba ako offline zálohovanie. Databázy sú škálovateľné aj ako súčasť služby hosťovanej v cloude, je však nevyhnutné zabezpečiť, aby aplikácie a procesy, ktoré závisia od databázy, boli úplne kompatibilné a natívne pre cloud. Uloženie databázy je vysoko špecializované a špecifické pre konkrétnu aplikáciu.

Vyrovnanie zjavnej úspory nákladov na ukladanie objektov s funkčnosťou súborov a databáz si vyžaduje dôkladné zváženie, čo presne je požadovaná funkčnosť. Napríklad, ak chcete uložiť a distribuovať mnoho tisíc malých súborov, archivujte ich do súboru ZIP a uložte ich ako jeden objekt namiesto toho, aby ste sa snažili ukladať každý jednotlivý súbor ako samostatný objekt. Nesprávne voľby ukladacieho priestoru môžu viesť k zložitým závislostiam, ktoré je ťažké a nákladné neskôr zmeniť.

Úzke miesto pre migráciu do cloudu č. 2: Príprava údajov

Presun údajov do cloudu nie je taký jednoduchý ako kopírovanie bajtov do určeného typu úložiska. Predtým, ako sa niečo skopíruje, je potrebné vykonať veľa príprav a ten čas si vyžaduje starostlivé rozpočtovanie. Projekty koncepcie často tento krok ignorujú, čo môže neskôr viesť k nákladným prekročeniam.

Filtrovanie nepotrebných údajov môže ušetriť veľa času a nákladov na ukladanie. Napríklad dátová sada môže obsahovať zálohy, staršie verzie alebo stieracie súbory, ktoré nemusia byť súčasťou cloudového pracovného toku. Azda najdôležitejšou súčasťou filtrovania je stanovenie priorít, ktoré údaje je potrebné presunúť ako prvé. Údaje, ktoré sa aktívne používajú, nebudú tolerovať synchronizáciu v týždňoch, mesiacoch alebo rokoch potrebných na dokončenie celého procesu migrácie. Kľúčom je prísť s automatizovanými prostriedkami na výber, ktoré údaje sa majú odoslať a kedy, a potom starostlivo viesť záznamy o všetkom, čo sa robí a čo sa nerobí.

Rôzne cloudové pracovné toky môžu vyžadovať, aby boli údaje v inom formáte alebo organizácii ako miestne aplikácie. Napríklad legálny pracovný tok môže vyžadovať preklad tisíce malých dokumentov Word alebo PDF a ich zabalenie do súborov ZIP, mediálny pracovný tok môže zahŕňať transkódovanie a zabalenie metadát a pracovný postup bioinformatiky môže vyžadovať výber a zaradenie terabajtov genomických údajov. Takéto preformátovanie môže byť veľmi manuálnym a časovo náročným procesom. Môže to vyžadovať veľa experimentov, veľa dočasného uloženia a veľa manipulácie s výnimkami. Niekedy je lákavé odložiť akékoľvek preformátovanie do cloudového prostredia, nezabudnite však, že to problém nevyrieši, iba ho presunie do prostredia, kde má každý použitý zdroj cenu.

Súčasťou otázok týkajúcich sa ukladania a formátovania môže byť rozhodnutie o kompresii a archivácii. Napríklad má zmysel archivovať milióny malých textových súborov pred ich odoslaním do cloudu, ale to nie je málo multimediálnych súborov s veľkosťou viac gigabajtov. Archivácia a kompresia údajov uľahčuje ich prenos a ukladanie, ale zvážte čas a úložný priestor potrebný na zabalenie a rozbalenie týchto archívov na oboch koncoch.

Úzke miesto cloudovej migrácie č. 3: Overenie informácií

Kontrola integrity je najdôležitejším krokom a tiež najľahšie sa mýli. Často sa predpokladá, že počas prepravy dát dôjde k poškodeniu, či už fyzickým médiom alebo sieťovým prenosom, a je možné ho zachytiť vykonaním kontrolných súčtov pred a po. Kontrolné súčty sú dôležitou súčasťou procesu, ale v skutočnosti ide o prípravu a import údajov, pri ktorých je najväčšia pravdepodobnosť straty alebo poškodenia.

Keď dáta posúvajú formáty a aplikácie, význam a funkčnosť sa môžu stratiť, aj keď sú bajty rovnaké. Jednoduchá nekompatibilita medzi verziami softvéru môže spôsobiť, že petabajty „správnych“ údajov budú nepoužiteľné. Vyskúšať škálovateľný proces overenia správnosti a použiteľnosti vašich údajov môže byť skutočnou výzvou. V horšom prípade to môže prejsť do pracného a nepresného manuálneho procesu „vyzerá mi to v poriadku“. Ale aj to je lepšie ako žiadne overenie. Najdôležitejšie je zabezpečiť, aby ste boli schopní rozpoznať problémy skôr, ako budú staršie systémy vyradené z prevádzky!

Zúženie cloudovej migrácie č. 4: Zaradenie prevodov

Pri zdvíhaní jedného systému do cloudu je pomerne ľahké jednoducho skopírovať pripravené údaje na fyzické médium alebo ich pretlačiť cez internet. Ale tento proces môže byť ťažké škálovať, najmä pre fyzické médiá. To, čo sa v koncepcii overenia koncepcie javí ako „jednoduché“, môže nafúknuť „nočnú moru“, keď do hry vstúpi veľa rôznych systémov.

Ku každému stroju musí byť pripojené mediálne zariadenie, napríklad AWS Snowball. To by mohlo znamenať fyzické prechádzanie zariadenia po jednom alebo viacerých dátových centrách, žonglovanie s konektormi, aktualizácia ovládačov a inštalácia softvéru. Pripojenie cez lokálnu sieť šetrí fyzický pohyb, ale nastavenie softvéru môže byť stále náročné a rýchlosť kopírovania môže klesnúť hlboko pod úroveň, ktorá by sa dala dosiahnuť priamym načítaním z internetu. Prenos údajov priamo z každého stroja cez internet ušetrí mnoho krokov, najmä ak sú dáta pripravené na cloud.

Ak príprava údajov zahŕňa kopírovanie, export, preformátovanie alebo archiváciu, miestnym úložiskom sa môže stať prekážka. Možno bude potrebné nastaviť vyhradené úložisko na fázovanie pripravených údajov. To má výhodu v tom, že umožňuje mnohým systémom vykonávať prípravu paralelne, a redukuje kontaktné body pre dodávateľné médiá a softvér na prenos dát iba na jeden systém.

Úzke miesto migrácie na cloud č. 5: Prenos údajov

Pri porovnaní sieťového prenosu a prepravy médií je ľahké zamerať sa iba na čas prepravy. Napríklad 80 terabajtové zariadenie AWS Snowball môže byť odoslané kuriérom nasledujúceho dňa, čím sa dosiahne zdanlivá rýchlosť prenosu viac ako osem gigabitov za sekundu. Toto ale ignoruje čas potrebný na získanie zariadenia, jeho konfiguráciu a načítanie, prípravu na návrat a umožnenie dodávateľa cloudu skopírovať údaje z koncového zariadenia. Zákazníci, ktorí to robia pravidelne, hlásia, že štvortýždňové lehoty na vybavenie (od objednania zariadenia po údaje dostupné v cloude) sú bežné. To znižuje skutočnú rýchlosť prenosu dát pri dodaní zariadenia na iba 300 megabitov za sekundu, oveľa menej, ak zariadenie nie je úplne naplnené.

Rýchlosti sieťového prenosu tiež závisia od mnohých faktorov, predovšetkým od miestneho uplinku. Dáta nemôžete posielať rýchlejšie ako je fyzická bitová rýchlosť, aj keď starostlivá príprava dát môže znížiť množstvo dát, ktoré potrebujete odoslať. Staré protokoly, vrátane protokolov, ktoré dodávatelia cloudov predvolene používajú na ukladanie objektov, majú ťažkosti s rýchlosťou a spoľahlivosťou na diaľkových internetových cestách, čo môže sťažiť dosiahnutie tejto bitovej rýchlosti. Mohol by som napísať veľa článkov o výzvach, ktoré sú tu spojené, ale je to taký, ktorý nemusíte riešiť sami. Data Expedition je jednou z mála spoločností, ktoré sa špecializujú na zabezpečenie úplného využitia cesty bez ohľadu na to, ako ďaleko sú vaše údaje od cloudového cieľa. Napríklad jedno gigabitové pripojenie na internet s akceleračným softvérom, ako je CloudDat, prináša 900 megabitov za sekundu, čo je trojnásobok čistej priepustnosti snehovej gule AWS.

Najväčší rozdiel medzi fyzickou dodávkou a sieťovým prenosom je tiež jeden z najčastejšie prehliadaných počas overovania koncepcie. Pri fyzickej dodávke musí prvý bajt, ktorý naložíte do zariadenia, počkať, kým sa načíta posledný bajt, až potom budete môcť odoslať. To znamená, že ak načítanie zariadenia bude trvať týždne, budú do príchodu do cloudu niektoré z vašich údajov zastarané týždne. Aj keď súbory údajov dosiahnu úrovne petabajtu, kde môže byť fyzická dodávka celkovo rýchlejšia, schopnosť udržiavať aktuálne prioritné údaje počas procesu migrácie môže stále uprednostňovať sieťový prenos pre kľúčové aktíva. Starostlivé plánovanie počas fázy filtrovania a stanovovania priorít pri príprave údajov je nevyhnutné a môže umožniť hybridný prístup.

Získanie údajov od poskytovateľa cloudu nemusí byť koniec kroku prenosu údajov. Ak je potrebné replikovať ho do viacerých regiónov alebo poskytovateľov, naplánujte si starostlivo, ako sa tam dostane. Nahrávanie cez internet je zadarmo, zatiaľ čo napríklad AWS si účtuje až dva centy za gigabajt za medziregionálny prenos dát a deväť centov za gigabajt za prenos k iným cloudovým predajcom. Obe metódy budú čeliť obmedzeniam šírky pásma, ktoré by mohli ťažiť z prenosovej akcelerácie, ako je CloudDat.

Úzke miesto 6 pre migráciu cloudov: Škálovanie cloudu

Po príchode dát na miesto určenia v cloude je proces migrácie dokončený iba z polovice. Kontrolné súčty sú na prvom mieste: Skontrolujte, či sa doručené bajty zhodujú s odoslanými bajtmi. To môže byť zložitejšie, ako si možno uvedomujete. Ukladanie súborov využíva vrstvy vyrovnávacích pamätí, ktoré môžu skryť poškodenie dát, ktoré boli práve nahrané. Takáto korupcia je zriedkavá, ale kým ju nevyčistíte všetko a znova načítať súbory, nemôžete si byť istí žiadnym kontrolným súčtom. Reštartovanie inštancie alebo odpojenie úložného priestoru robí prijateľnú prácu pri vymazávaní kešiek.

Overenie kontrolných súčtov úložiska objektov vyžaduje, aby bol každý objekt načítaný do inštancie na výpočet. Napriek všeobecnej viere sú „E-tagy“ predmetom nie užitočné ako kontrolné súčty. Najmä objekty nahrané pomocou viacdielnych techník je možné overiť iba ich opätovným načítaním.

$config[zx-auto] not found$config[zx-overlay] not found