Datacentri s boljim performansama uz manje hardvera
- Objavljeno u Novosti

Kako bi se poboljšala učinkovitost podatkovnog centra, više uređaja za pohranu često se objedinjuje preko mreže kako bi ih mnoge aplikacije mogle dijeliti. No čak i uz objedinjavanje, značajan kapacitet uređaja ostaje neiskorišten zbog varijabilnosti performansi među uređajima.
Istraživači s MIT-a razvili su sustav koji poboljšava performanse uređaja za pohranu podataka istovremeno obrađujući tri glavna izvora varijabilnosti. Njihov pristup donosi značajna poboljšanja brzine u odnosu na tradicionalne metode koje se istovremeno bave samo jednim izvorom varijabilnosti.
Sustav koristi dvoslojnu arhitekturu, s centralnim kontrolerom koji donosi opće odluke o tome koje zadatke obavlja svaki uređaj za pohranu i lokalnim kontrolerima za svako računalo koji brzo preusmjeravaju podatke ako taj uređaj ima problema.
Metoda, koja se u stvarnom vremenu može prilagoditi promjenjivim radnim opterećenjima, ne zahtijeva specijalizirani hardver. Kada su istraživači testirali ovaj sustav na realnim zadacima poput treniranja AI modela i kompresije slika, gotovo je udvostručio performanse koje su pružali tradicionalni pristupi. Inteligentnim uravnoteženjem opterećenja više uređaja za pohranu, sustav može povećati ukupnu učinkovitost podatkovnog centra.
SSD-ovi su visokoučinkoviti digitalni uređaji za pohranu koji aplikacijama omogućuju čitanje i pisanje podataka. Na primjer, SSD može pohraniti ogromne skupove podataka i brzo slati podatke procesoru za obuku modela strojnog učenja.
Objedinjavanje više SSD-ova kako bi ih više aplikacija moglo dijeliti poboljšava učinkovitost, budući da ne mora svaka aplikacija koristiti cijeli kapacitet SSD-a u određenom trenutku.
Kako bi iskoristili neiskorištene performanse SSD-a, istraživači su razvili Sandook, softverski sustav koji se istovremeno bavi trima glavnim oblicima varijabilnosti koje ometaju performanse. „Sandook“ je urdu riječ koja znači „kutija“, a označava „pohranu“.
Jedna vrsta varijabilnosti uzrokovana je razlikama u starosti, stupnju istrošenosti i kapacitetu SSD-ova koji su možda kupljeni u različito vrijeme od više dobavljača.
Druga vrsta varijabilnosti posljedica je neusklađenosti između operacija čitanja i pisanja koje se odvijaju na istom SSD-u. Da bi se novi podaci zapisali na uređaj, SSD mora izbrisati neke postojeće podatke. Ovaj proces može usporiti čitanje ili dohvaćanje podataka koje se odvija istovremeno.
Treći izvor varijabilnosti je sakupljanje smeća, proces prikupljanja i uklanjanja zastarjelih podataka radi oslobađanja prostora. Ovaj proces, koji usporava rad SSD-a, pokreće se u nasumičnim intervalima koje operater podatkovnog centra ne može kontrolirati.
Kako bi se riješila sva tri izvora varijabilnosti, Sandook koristi dvoslojnu strukturu. Globalni planer optimizira raspodjelu zadataka za cjelokupni skup, dok brži planeri na svakom SSD-u reagiraju na hitne događaje i preusmjeravaju operacije dalje od preopterećenih uređaja.
Sustav prevladava kašnjenja uzrokovana smetnjama čitanja i pisanja rotiranjem SSD-ova koje aplikacija može koristiti za čitanje i pisanje. To smanjuje mogućnost da se čitanje i pisanje odvijaju istovremeno na istom računalu.
Sandook također profilira tipične performanse svakog SSD-a. Koristi te informacije za otkrivanje kada odvoz smeća vjerojatno usporava operacije. Nakon što to otkrije, Sandook smanjuje opterećenje na tom SSD-u preusmjeravanjem nekih zadataka dok se odvoz smeća ne završi.
SSD profili također omogućuju Sandookovom globalnom kontroleru da dodijeli opterećenja na ponderirani način koji uzima u obzir karakteristike i kapacitet svakog uređaja.
Budući da globalni kontroler vidi cjelokupnu sliku, a lokalni kontroleri reagiraju u hodu, Sandook može istovremeno upravljati oblicima varijabilnosti koji se događaju tijekom različitih vremenskih skala. Na primjer, kašnjenja u odvozu smeća javljaju se iznenada, dok se latencija uzrokovana habanjem nakuplja tijekom mnogo mjeseci.
Istraživači su testirali Sandook na skupu od 10 SSD-ova i procijenili sustav na četiri zadatka: pokretanje baze podataka, treniranje modela strojnog učenja, kompresija slika i pohranjivanje korisničkih podataka. Sandook je povećao propusnost svake aplikacije između 12 i 94 posto u usporedbi sa statičkim metodama te poboljšao ukupnu iskorištenost kapaciteta SSD-a za 23 posto.
Znanstveni rad istraživača MIT-a možete pronaći na ovoj poveznici.