Cloud storage - silent data corruption

Cloud storage - silent data corruption
« kdy: 27. 05. 2022, 10:53:59 »
Chtěl bych se poradit ohledně cloudových uložišt a silent data corruption.

Domací úkládání mám řešené na NAS se ZFS, kde jsem nikdy silent data corruption nemusel řešit.

Na OneDrive jsem se vrátil asi k cca 2 roky starým souborům, které se ukázaly jako poškozené. Má někdo zkušenosti ohledně dlouhodobé stability dat v cloudových úložitích? Případně je lepší zvolit něco jiného než OneDrive (ne Google:-))?

Díky za rady


cjohn

Re:Cloud storage - silent data corruption
« Odpověď #1 kdy: 01. 06. 2022, 21:06:52 »
Je otazne co myslis pod "cloud storage" - ci to nebude len nejake GUI/apka, ktora ti bezi na PC a synchronizuje data dakde do cloudu.
Vseobecne AWS S3 je "cloud storage" (oficialna durability je 99.999999999%) - ale je to object storage, takze nad nim mozes este potrebovat nejaku app nadstavbu. Je vsak dost flexibilny, ked vies ako na to - napr. sifrovanie, multi region replikaciu, tiering, storage gateway, ...

Re:Cloud storage - silent data corruption
« Odpověď #2 kdy: 01. 06. 2022, 21:18:06 »
Zdaleka nejpravděpodobnější je to, že ten soubor byl poškozený už v okamžiku nahrávání, nebo se poškodil při nahrávání.

Re:Cloud storage - silent data corruption
« Odpověď #3 kdy: 06. 06. 2022, 14:17:18 »
Je otazne co myslis pod "cloud storage" - ci to nebude len nejake GUI/apka, ktora ti bezi na PC a synchronizuje data dakde do cloudu.
Vseobecne AWS S3 je "cloud storage" (oficialna durability je 99.999999999%) - ale je to object storage, takze nad nim mozes este potrebovat nejaku app nadstavbu. Je vsak dost flexibilny, ked vies ako na to - napr. sifrovanie, multi region replikaciu, tiering, storage gateway, ...

Na domácím NAS, který používá ZFS, se konzistence dat řeší periodicky přes scrub. Chtěl jsem jenom vědět, jak to mají pořešené poskytovatelé cloudu pro osobní potřebu typu Onedrive, Dropbox...atd. Rád bych tam skladoval data v rádu roků, klidně třeba 10 let.

Zdaleka nejpravděpodobnější je to, že ten soubor byl poškozený už v okamžiku nahrávání, nebo se poškodil při nahrávání.

Před nahráním spíše nebyl a při nahrávání? Onedrive nekontroluje, jestli se to tam nahrálo správně?


Re:Cloud storage - silent data corruption
« Odpověď #4 kdy: 06. 06. 2022, 14:47:53 »
Poskytovatel cloudu to řeší tak, že má k datům spočítaný hash a data má uložena na více místech. Pokud zjistí, že hash nesedí, použije data z jiného místa.

To, jestli jsou nahraná data v pořádku, musí řešit klient ve spolupráci se serverem. Klient spočítá hash, server spočítá hash a jedním směrem si ho předají. Ta strana, která má oba hashe, pak musí zkontrolovat, že jsou stejné. Nemusí to být povinná součást protokolu – takže záleží na tom, jakého klienta jste použil.

Jinak ta cloudová úložiště pro osobní potřebu zdarma bývají deriváty placených služeb s SLA. Ty placené varianty se musí umět s poškozením souborů na fyzickém médiu vypořádat – a nedává smysl, že by provozovatelé u té varianty zdarma takovou věc záměrně odpárali.


Re:Cloud storage - silent data corruption
« Odpověď #5 kdy: 06. 06. 2022, 21:32:36 »
Tak oni klidně můžou redundanci dat ponížit. Pokud se z One Drive něco ztratilo, tak to nebude samo sebou.
Jinak my opravdu netušíme jak to mají implementované, ale jen víme co je možné. Technické detaily nejsou veřejné.

Zrovna u Microsoftu nějak nepočítám s tím, že je na úrovni AWS nebo Google. Možná bude horší jak Alibaba.

Poskytovatel cloudu to řeší tak, že má k datům spočítaný hash a data má uložena na více místech. Pokud zjistí, že hash nesedí, použije data z jiného místa.

To, jestli jsou nahraná data v pořádku, musí řešit klient ve spolupráci se serverem. Klient spočítá hash, server spočítá hash a jedním směrem si ho předají. Ta strana, která má oba hashe, pak musí zkontrolovat, že jsou stejné. Nemusí to být povinná součást protokolu – takže záleží na tom, jakého klienta jste použil.

Jinak ta cloudová úložiště pro osobní potřebu zdarma bývají deriváty placených služeb s SLA. Ty placené varianty se musí umět s poškozením souborů na fyzickém médiu vypořádat – a nedává smysl, že by provozovatelé u té varianty zdarma takovou věc záměrně odpárali.
„Řemeslo se naučí každý. Umění nikdo.“
„Jednoduchost je nejvyšší úroveň sofistikovanosti.“
- Leonardo Da Vinci

Re:Cloud storage - silent data corruption
« Odpověď #6 kdy: 06. 06. 2022, 23:00:54 »
Pokud se z One Drive něco ztratilo, tak to nebude samo sebou.
Jenže Liquids nepsal o ztrátě dat, psal o poškození souborů.

Re:Cloud storage - silent data corruption
« Odpověď #7 kdy: 07. 06. 2022, 00:31:12 »

Na domácím NAS, který používá ZFS, se konzistence dat řeší periodicky přes scrub. Chtěl jsem jenom vědět, jak to mají pořešené poskytovatelé cloudu pro osobní potřebu typu Onedrive, Dropbox...atd. Rád bych tam skladoval data v rádu roků, klidně třeba 10 let.

Před nahráním spíše nebyl a při nahrávání? Onedrive nekontroluje, jestli se to tam nahrálo správně?

Doufam, ze mate na domacim NAS ECC pameti. To by byl vrchol nezodpovednosti, kdyby ne. Co na tom pocitaci, odkud se to dostalo na onedrive? Servery v cloudu ECC pameti maji (pokud nejde o bananovy cloud)

Re:Cloud storage - silent data corruption
« Odpověď #8 kdy: 07. 06. 2022, 09:49:28 »
z chování onedrive lze odtušit, že používá obdobnou technologii jako je jeho Azure Block storage. Za roky s onedrive (primárně teda placenými a nikoliv osobním) jsem se nesetkal s poškozením dat na straně uložiště, používá standardní checksumy a auto healing. Klienti tam mají dlouhodobě ohromné množství dat a bez problémů.

S čím se ale sektávám často je porušení FS na straně klienta, onedrive není posix, nemá zámky, nemá dobře vyřešený paralelní přístup, ovladače od MS už několikrát vykazovaly závažné chyby. Tipuji, že k poškození dochází na straně klienta a poškozené soubory jsou pak v onedrive již uloženy.

Osobně ale dlouhodobě data ukládám do šifrovaným kontejnerů a k něm mám kontrolní součty, začal jsem to dělat už na diskety, cd a dnes do cloudů. Hlavní důvod je lepší katalogování dat, verzování a kontrola integrity. Setkal jsem se už s obrovským množtvím chyb a rád se vracím ke starým verzím.

ZFS scrub na serveru bez ECC je hodně riziková věc, načteš nepoškozená data z disku, v paměti se ti otočí bit, ZFS si myslí, že jsou poškozená a přemaže kopii nebo při ukládání zvalidovaných dat do ZFS dojde k změně bitu a uložíš jiná data. Scrub generuje velké množství IO operací a tím zvedá šanci, že se ti nějaká data poškodí. Nemám data z domácího NASu, ale u storage serveru (70 TB dat, denně čtení 100TB, zápis 20TB) podle interního čítače k přehození bitu v paměti v jednotkách ks za den. U domácího NASu to může být třeba jednou po půl roce, odhad čísla nemám a non-ECC paměti to neumějí ani detekovat.

Re:Cloud storage - silent data corruption
« Odpověď #9 kdy: 07. 06. 2022, 16:08:08 »
U domácího NASu to může být třeba jednou po půl roce, odhad čísla nemám a non-ECC paměti to neumějí ani detekovat.

Mnohem častěji! Consumer NASy mají typicky nižší napětí DRAM a vyšší hustotu (jsou to mobilní čipsety), takže stačí menší energie částice k jejich překlopení. Nemusí to být ani ionizující záření, to zařízení si dokáže toho rušení vytvořit samo dostatek (vizte např. Rowhammer útok).

Na mém NASu se 4 GB LPDDR4 paměti jsem dělal takový kalibrační průzkum memtestem a vyšel mi řádově jeden bit-flip za GB a měsíc s pozadím okolo 120 nSv/h (normální pozadí v ČR třeba v paneláku, pokud nepoužili jako plnivo popílek z uhlí z místa, kde je víc radionuklidů v podloží).
Když jsem to přesunul do místnosti s žulovou obvodovou zdí, kde je pozadí blíž k 400 nSv/h, tak už jsem naměřil circa jeden flip za GB a den.

Toto všechno ale bylo až po opravě 12V zdroje sestavy, který do toho hnal "špinavé" napětí s rychlým šumem 400 mVpp. Pak to totiž mělo bit-flip snad každou minutu, nebyla jistota že to nabootuje, náhodně to padalo na GP fault nebo náhodné nereplikovatelné Oopsy. A filesystem to samozřejmě ničilo.

Re:Cloud storage - silent data corruption
« Odpověď #10 kdy: 07. 06. 2022, 16:46:47 »
U domácího NASu to může být třeba jednou po půl roce, odhad čísla nemám a non-ECC paměti to neumějí ani detekovat.

Na mém NASu se 4 GB LPDDR4 paměti jsem dělal takový kalibrační průzkum memtestem a vyšel mi řádově jeden bit-flip za GB a měsíc s pozadím okolo 120 nSv/h (normální pozadí v ČR třeba v paneláku, pokud nepoužili jako plnivo popílek z uhlí z místa, kde je víc radionuklidů v podloží).
Když jsem to přesunul do místnosti s žulovou obvodovou zdí, kde je pozadí blíž k 400 nSv/h, tak už jsem naměřil circa jeden flip za GB a den.

díky! Tyhle čísla jsem chtěl slyšet, aspoň mám nějakou představu. V tom případě to i v domácích podmínkách je problém provozovat bez ECC.

Re:Cloud storage - silent data corruption
« Odpověď #11 kdy: 07. 06. 2022, 16:57:29 »
Teoreticky jo, ale v praxi to tak provozuji roky (btrfs i zfs) a dobré. On totiž ten buffer před zápisem do storage je velmi malý cíl: jak prostorově (několik pár-KiB bloků) tak časově (commit interval okolo minuty). Abych měl realistickou šanci chytit single event, tak bych musel mít v kterýkoliv moment značnou část paměti plnou diskového backlogu, jako třeba na nějaké hodně vytížené databázi. NAS prakticky 100 % času sedí a nic nedělá... většina uživatelských přístupů je read-only (Kodi pustí film, atd.) kde mi bit-flip nevadí (FS to hned přečte znova, úspěšně). Těch pár zápisů denně (upload fotek, automatické zálohy počítačů, upirátěný film jednou za čas) má mizernou šanci se do toho trefit.

Re:Cloud storage - silent data corruption
« Odpověď #12 kdy: 07. 06. 2022, 16:59:38 »
(koukl jsem do grafany) drtivou většinu času mám využití RAM okolo 200 MiB, tj. okolo 5 %. Ten foton se nejpravděpodobněji trefí právě do těch zbylých 95 %, kde to nic nerozbije.

Re:Cloud storage - silent data corruption
« Odpověď #13 kdy: 07. 06. 2022, 18:01:42 »
Doufam, ze mate na domacim NAS ECC pameti. To by byl vrchol nezodpovednosti, kdyby ne. Co na tom pocitaci, odkud se to dostalo na onedrive? Servery v cloudu ECC pameti maji (pokud nejde o bananovy cloud)

U domácího NASu to může být třeba jednou po půl roce, odhad čísla nemám a non-ECC paměti to neumějí ani detekovat.

Můj domácí NAS samozřejmě ECC paměti samozřejmě obsahuje... 8)

Re:Cloud storage - silent data corruption
« Odpověď #14 kdy: 07. 06. 2022, 20:40:05 »
(koukl jsem do grafany) drtivou většinu času mám využití RAM okolo 200 MiB, tj. okolo 5 %. Ten foton se nejpravděpodobněji trefí právě do těch zbylých 95 %, kde to nic nerozbije.

v tom případě nepoužíváš zfs :), jeho scrub ten poměr dat v paměti právě výrazně mění a tam vidím velké riziko bez ECC. Nemám ale představu jak přesně to je velké riziko, každý ten NAS používá trochu jinak, sám mám doma malý cluster několika 2U serverů, což asi nebude běžný stav v domácnosti a nemohu to moc porovnat.