Programavimas

Kaip maksimaliai išnaudoti „Azure Cosmos DB“ nemokamą pakopą

„Azure“ „Cosmos DB“ yra viena geriausių jo savybių. Daugiamodelinė paskirstyta duomenų bazė suteikia jums pagrindą kurti tikrai „debesyje“ esančias programas naudojant nuoseklumo modelius, kuriuos galima susieti su jūsų programos darbu. Tačiau pradėti nėra lengva, o blogai sukonfigūruota ar suprojektuota programa gali greitai pabrangti.

Gerai matyti, kad „Cosmos DB“ dabar turi nemokamą pakopą, kuri gali padėti pradėti diegti programas už ribotos kūrimo aplinkos ribų. Naujoji pakopa nėra didelė: ji pagrįsta minimalia „Cosmos DB“ konfigūracija ir siūlo 400 RU / s (užklausos vienetai per sekundę) ir 5 GB saugyklos vietos, o net 25 konteineriai yra bendroje pralaidumo duomenų bazėje. Tai yra daugiau nei pakankamai mažai programai, kuri siūlo daugiau skaitinių nei rašo, pavyzdžiui, nėra priklausoma nuo tvirto nuoseklumo modelių.

Turite žinoti, kad nors „Cosmos DB“ yra daug regionų, nemokamoje pakopoje galite paleisti tik vieną 400 RU / s duomenų bazę. Praktiškai tai apsiriboja vienu regionu, nes kiekvienam papildomam regionui reikės savo 400 RU / s egzemplioriaus, ir už tuos regionus bus mokama standartinė norma už tuos regionus per valandą.

Darbo pradžia naudojant nemokamą „Cosmos DB“

Norėdami pasinaudoti nemokama pakopa, turėsite susikurti naują sąskaitą; ji nėra kaip atsiskaitymo galimybė esamoms programoms. Nemokamos pakopos 400 GĮ / s yra mažiausia suma, kurią galima pateikti „Cosmos DB“ duomenų bazėje. Tai suteikia maždaug 1 milijardą skaitymų per mėnesį, o tai turėtų būti pakankamai, kad jūsų programa būtų paleista iš vietos arba leistų dislokuoti ir valdyti vidinę paskirstytą duomenų bazę kaip bandomojo projekto dalį. Pasiekę nemokamo GĮ / s leidimo ribą, galite pridėti daugiau pajėgumų 100 RU / s blokais, už kuriuos mokama pagal valandinį tarifą.

Verta suprasti, kas yra „Cosmos“ duomenų bazė GĮ. GĮ yra užklausų vienetas, o sąskaitose nurodytos GĮ yra jūsų duomenų bazės numatyto pralaidumo matas, apimantis visas jos operacijas. Tai apima skaitymą, rašymą, atnaujinimą, ištrynimą ir dar daugiau. „Microsoft“ siūlo, kad 1 GĮ / s yra lygiavertis vienam galiausiai pastoviam (lėčiausias ir mažiausiai apdorojimo reikalaujantis „Cosmos DB“ nuoseklumo lygis) per sekundę 1 KB dydžio elemento. Parašyti tą patį 1 KB elementą per sekundę yra 5 RU / s. Kuo operacija sudėtingesnė, tuo daugiau GĮ sunaudoja.

Užklausos vienetų vartojimo supratimas

Sunku tiksliai pasakyti, kiek GĮ / s sunaudos programa. Tačiau galite pagalvoti apie „Cosmos DB“ apribojimus, kurie gali turėti įtakos jūsų duomenų bazės naudojamoms GĮ. Pirmiausia turite atsižvelgti į savo daiktų dydį. Kuo didesnis elementas, tuo daugiau GĮ naudoja skaityti ar rašyti. Panašiai, indeksuojant sunaudojama RU / s, o jei naudojate numatytąjį indeksavimo modelį, elementams rašyti reikalingi ištekliai padidės, kai pridėsite daugiau prie savo duomenų bazės. Tada galite pasirinkti nuoseklumo modelius, kurių stiprumui ir ribotumui reikia maždaug dvigubai daugiau RU / s perskaityti, nei kitiems „Cosmos DB“ modeliams.

Turint ribotą GĮ (-ų) skaičių laisvoje pakopoje, galbūt norėsite apeiti tuos apribojimus, kad suvartojimas būtų kuo mažesnis. Viena iš galimybių yra išjungti visą duomenų bazės indeksavimą, nors praktikoje galbūt norėsite indeksuoti tik tam tikras kiekvieno saugomo JSON dokumento ypatybes. Tuo pačiu metu turite apsvarstyti, kaip veikia jūsų programa, ir ar geriau naudoti kažką panašaus į seanso nuoseklumą, kad pagerintumėte vartotojų supratimą apie našumą ir sumažintumėte naudojamų GĮ.

Kadangi GĮ yra pagrįstos veikla, galite naudoti užklausų dizainą, kad suvartojimas būtų kuo mažesnis. Tai gali reikėti apriboti užklausos rezultatų skaičių, kontroliuoti saugomų duomenų kiekį arba naudoti kuo mažiau vartotojo nustatytų funkcijų, saugomų procedūrų ir aktyviklių.

Sukurti savo duomenų bazę yra pakankamai lengva. „Azure“ portale sukurkite naują „Cosmos DB“ paskyrą, o iš „Azure Data Explorer“ - naują duomenų bazę. Pradėkite nuo ID suteikimo, tada pateikite jo pralaidumą. Nustatykite tai į 400 RU / s. Didesnės sumos parodys išlaidų įvertinimus, tačiau, kai kuriate nemokamą egzempliorių, nereikia to išbandyti. Jūs neapsiribojate portalu; galite naudoti „Azure“ CLI, „PowerShell“ ar net programiškai iš „Cosmos DB SDK“.

Kurkite programas „Cosmos DB“ nemokamoje pakopoje

„Cosmos DB“ duomenų bazė yra sudėtinių rodinių rinkinys, naudojamas padalijimui Azure regione ir paskirstymui regionuose, kuriuose naudojate savo duomenų bazę. Kiekvieną duomenų bazę galima sukonfigūruoti kaip konkretų modelį: NoSQL (tiek MongoDB, tiek „Cassandra“), SQL, „Gremlin“ ir lentelės. Dauguma programų dirbs su ja kaip „NoSQL“ dokumentų duomenų baze, kurioje saugomi JSON duomenys.

Sukūrę duomenų bazę ir pasirinkę modelį, galite pagalvoti apie „Cosmos DB“ konteinerį kaip apie duomenų bazės mastelį. Už laisvojo lygio ribų galite nustatyti pralaidumą GĮ / s pagal konteinerio principą; nemokamoje pakopoje dalijatės ta pralaidumu visuose savo duomenų bazės sudėtiniuose rodiniuose, todėl negalite numatyti jokio konkretaus sudėtinio rodinio pralaidumo. Mokami egzemplioriai turi susietą SLA, todėl jie leidžia nustatyti pralaidumą kiekvienam konteineriui.

Tokiu būdu dirbti per konteinerius yra tolygu klasterio naudojimui „NoSQL“ duomenų bazėje ir gerai tinka tokio tipo darbo krūviui. Naudodama tą patį skaidinio raktą visuose savo talpyklose, „Cosmos DB“ automatiškai pasidalins jų našumu. Šį metodą galite naudoti su 25 nemokamos pakuotės konteineriais, kad sumažintumėte savo programos naudotojų kliūtis. Jei traktuosite ją kaip suskaidytą, sugrupuotą „NoSQL“ duomenų bazę, turėtumėte palyginti lengvai įtraukti ją į savo programas, naudodami ją kitam turiniui, o ne pačiam turiniui.

Darbas su nemokama paslaugų pasiūla gali būti keblus, tačiau, jei imsitės protingų atsargumo priemonių, turėtų būti įmanoma naudoti naują „Cosmos DB“ pakopą kaip programos vidinės dalies dalį. Jums gali tekti paaukoti kai kurias paslaugos mastelio funkcijas, tačiau tai neturėtų reikšmingai paveikti programų, jei priimsite kruopštus projektavimo laiko sprendimus.

Svarbu pagalvoti, kaip pasinaudoti paskirstytos duomenų bazės, pvz., „Cosmos DB“, pranašumais, o ne paprasčiausiai perkelti į ją esamus darbo krūvius - vargu ar jie tinkamai sureaguos. Verčiau galvokite apie tai kaip apie galimybę sukurti išties debesims pritaikytą, paskirstytą programą. Šiuo atveju 400 GĮ / s yra daugiau nei pakankamai, kad būtų galima paleisti naują programą ir priversti ją dirbti su pakankamu vartotojų skaičiumi.

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