Megosztás a következőn keresztül:


Azure Cosmos DB-tárolók és -adatbázisok létrehozása automatikus skálázási átviteli teljesítménnyel

Vonatkozik a következőkre: NoSQL MongoDB Cassandra Gremlin Asztal

Az Azure Cosmos DB-ben konfigurálhatja a standard (manuális) vagy az automatikusan kiosztott átviteli sebességet az adatbázisokon és a tárolókon. Az Azure Cosmos DB automatikus skálázása lehetővé teszi az adatbázis vagy tároló átviteli sebességének (RU/s) automatikus és azonnali skálázását.

Az automatikus skálázás kiosztott átviteli sebessége kiválóan alkalmas olyan kritikus fontosságú számítási feladatokhoz, amelyek változó vagy kiszámíthatatlan forgalmi mintákkal rendelkeznek, és nagy teljesítményű és skálázású SLA-kat igényelnek. Az automatikus skálázás alapértelmezés szerint a legaktívabb régió és partíció alapján skálázza a számítási feladatokat. A régiók és partíciók különböző számítási mintáival rendelkező nemuniform számítási feladatok esetében ez a skálázás szükségtelen vertikális felskálázást okozhat. A dinamikus skálázás vagy a dinamikus automatikus skálázás az automatikus skálázás teljes egészében kiépített fejlesztése, amely segít az ilyen egyenetlen számítási feladatok skálázásában a használat alapján, régiónként és partíció szintjén. A dinamikus skálázás lehetővé teszi, hogy költséget takarítson meg, ha gyakran tapasztal "hot" partíciókat és/vagy több régióval rendelkezik.

Az automatikus skálázás előnyei

Az automatikus skálázás kiosztott átviteli sebességével konfigurált Azure Cosmos DB-adatbázisok és -tárolók az alábbi előnyökkel járnak:

  • Egyszerű: Az automatikus skálázás megszünteti az ru/s egyéni szkriptekkel vagy manuális skálázási kapacitással történő kezelésének összetettségét.

  • Méretezhető: Az adatbázisok és a tárolók szükség szerint automatikusan skálázják a kiosztott átviteli sebességet. Az ügyfélkapcsolatok, az alkalmazások és az Azure Cosmos DB SLA-k esetében nincs fennakadás.

  • Költséghatékony: Az automatikus skálázás segít optimalizálni a ru/s használatot és a költségfelhasználást úgy, hogy leskálázható, ha nincs használatban. Csak a számítási feladatokhoz szükséges erőforrásokért kell fizetnie óránként. Ha egy hónap minden órájában beállítja az automatikus skálázás maximális RU/s (Tmax) értékét, és a teljes Tmax értéket az órák 66%-ában vagy kevesebbször használja, akkor megtakarítás érhető el az automatikus skálázással. A dinamikus skálázás mellett egy másodlagos régió hozzáadása a magas rendelkezésre álláshoz költséghatékonyabb, mivel az egyes régiók és partíciók egymástól függetlenül skálázhatók a tényleges használat alapján. További információkért tekintse meg, hogyan választhat a standard (manuális) és az automatikus skálázású kiosztott átviteli sebességről szóló cikk között.

  • Magas rendelkezésre állás: Az automatikus skálázást használó adatbázisok és tárolók ugyanazt a globálisan elosztott, hibatűrő, magas rendelkezésre állású Azure Cosmos DB-háttérrendszert használják az adatok tartósságának és magas rendelkezésre állásának biztosítása érdekében.

Automatikus skálázási esetek használata

Az automatikus skálázás használati esetei a következők:

  • Változó vagy kiszámíthatatlan számítási feladatok: Ha a számítási feladatok kihasználtsága változó vagy kiszámíthatatlan, az automatikus skálázás a használat alapján automatikusan fel- és leskálázással segít. Ilyenek például a kiskereskedelmi webhelyek, amelyek a szezonalitástól függően eltérő forgalmi mintákkal rendelkeznek; Olyan IOT-számítási feladatok, amelyek napközben különböző időpontokban kiugróan magasak; olyan üzletági alkalmazásokat, amelyek havonta vagy évente néhány alkalommal tapasztalják a csúcshasználatot, és így tovább. Az automatikus skálázás esetén már nem kell manuálisan kiépítenie a csúcs- vagy átlagos kapacitást.

  • Új alkalmazások: Ha új alkalmazást fejleszt, és nem biztos a szükséges átviteli sebességben (RU/s), az automatikus skálázás megkönnyíti az első lépéseket. 100–1000 RU/s automatikus skálázási belépési ponttal kezdheti, figyelheti a használatot, és meghatározhatja a megfelelő RU/s-t az idő függvényében.

  • Ritkán használt alkalmazások: Ha rendelkezik olyan alkalmazással, amelyet csak néhány órán keresztül használnak naponta, hetente vagy havonta többször– például egy kis mennyiségű alkalmazáshoz/web-/blogwebhelyhez. Az automatikus skálázás úgy állítja be a kapacitást, hogy kezelje a csúcshasználatot, és amikor a csúcsidőszak véget ér, csökkenti a kapacitást.

  • Fejlesztési és tesztelési számítási feladatok: Ha Ön vagy csapata munkaidőben használja az Azure Cosmos DB-adatbázisokat és -tárolókat, de éjszaka vagy hétvégén nincs rájuk szükség, az automatikus skálázás a minimálisra skálázással takaríthatja meg a költségeket, ha nincs használatban.

  • Ütemezett éles számítási feladatok/lekérdezések: Ha több ütemezett kéréssel, művelettel vagy lekérdezéssel rendelkezik, amelyeket tétlen időszakokban szeretne futtatni, ezt egyszerűen elvégezheti az automatikus skálázással. Amikor futtatja a számítási feladatot, az átviteli sebesség automatikusan a szükséges értékre skálázódik, és később lecsökken.

Az ilyen problémákra való egyéni megoldás létrehozása nem csupán rengeteg időt igényel, hanem összetettséget is vezet be az alkalmazás konfigurációjában vagy kódjában. Az automatikus skálázás lehetővé teszi a fenti forgatókönyvek használatát a dobozon kívül, és szükségtelenné teszi a kapacitás egyéni vagy manuális skálázását.

Dinamikus skálázási esetek használata

A dinamikus skálázás használati esetei a következők:

  • Olyan adatbázis-számítási feladatok, amelyek nagy forgalmú elsődleges régióval és másodlagos passzív régióval rendelkeznek a vészhelyreállításhoz.
    • A dinamikus skálázással költséghatékonyabb a magas rendelkezésre állás elérése több régióval. A másodlagos régió önállóan és automatikusan lekapcsol, amikor tétlen. A másodlagos régió is automatikusan felskálázódik, amint aktívvá válik, és miközben kezeli az elsődleges régióból érkező írásreplikációs forgalmat.
  • Többrégiós adatbázis számítási feladatai.
    • Ezekben a számítási feladatokban gyakran egyenetlen a kérések régiók közötti eloszlása a napi természetes forgalom növekedése és visszaesése miatt. Előfordulhat például, hogy egy adatbázis munkaidőben aktív a globálisan elosztott időzónákban.

Az automatikus skálázás kiosztott átviteli sebességének működése

Ha automatikus skálázással konfigurálja a tárolókat és az adatbázisokat, meg kell adnia a szükséges maximális átviteli sebességet Tmax . Az Azure Cosmos DB úgy skálázza az átviteli sebességet T, hogy 0.1*Tmax <= T <= Tmax. Ha például a maximális átviteli sebességet 20 000 RU/s értékre állítja, az átviteli sebesség 2000 és 20 000 RU/s között skálázható. Mivel a skálázás automatikus és azonnali, a kiosztott Tmax-t bármikor késedelem nélkül fogyaszthatja.

Minden órában a rendszer egy órán belüli legnagyobb átviteli sebességéért T kell fizetnie. Ha a dinamikus skálázás engedélyezve van, a skálázás az egyes fizikai partíciók és régiók RU/s-használatán alapul. Mivel az egyes partíciók és régiók egymástól függetlenül méretezhetők, ez költségmegtakarítást eredményezhet a nemuniformos számítási feladatok esetében, mivel a szükségtelen felskálázások elkerülhetők.

Az automatikus skálázás maximális átviteli sebességének Tmax belépési pontja 1000 RU/s-nál kezdődik, amely 100–1000 RU/s közötti skálázást biztosít. 1000 RU/s-os növekményeket állíthat be Tmax , és bármikor módosíthatja az értéket.

Ha például 1000 RU/s és 2 partíciót tartalmazó gyűjteményünk van, minden partíció akár 500 RU/s-ra is felmehet. Egy órányi tevékenység esetén a kihasználtság a következőképpen nézne ki:

Régió Partíció Áteresztőképesség Hasznosítás Jegyzetek
Írj! P1 <= 500 RU/s 100% 500 RU/s, amelyből 50 RU/s írási műveletekhez, 450 RU/s pedig olvasási műveletekhez van felhasználva.
Írj! P2 <= 200 RU/s 40% 200 RU/s, amely az összes olvasási műveletből áll.
Olvasás P1 <= 150 RU/s 30% 150 RU/s, amely 50 RU/s-t tartalmaz az írási régióból replikált írásokhoz. Ebben a régióban 100 RU/s-t használunk olvasási műveletekhez.
Olvasás P2 <= 50 RU/s 10%

Dinamikus skálázás nélkül az összes partíció egységesen van skálázva a legforróbb partíció alapján. Ebben a példában, mivel a legforróbb partíció kihasználtsága 100%-os volt, az írási és olvasási régiók összes partíciója 1000 RU/s-ra van skálázva, így a teljes RU/s 2000 RU/s-ra van skálázva.

Dinamikus skálázás esetén, mivel az egyes partíciók és régiók átviteli sebessége egymástól függetlenül van skálázva, a teljes RU/s skálázása 900 RU/s lenne, ami jobban tükrözi a tényleges forgalmi mintát, és csökkenti a költségeket.

Az automatikus skálázás engedélyezése meglévő erőforrásokon

Az Azure Portal, a parancssori felület vagy a PowerShell használatával engedélyezheti az automatikus skálázást egy meglévő adatbázison vagy tárolón. Az automatikus skálázás és a standard (manuális) kiosztott átviteli sebesség között bármikor válthat. További információkért tekintse meg ezt a dokumentációt .

Átviteli sebesség és tárolási korlátok az automatikus skálázáshoz

Bármilyen érték esetén az adatbázis vagy tároló összesen Tmax tárolhat. Miután elérte ezt a tárterületet, a rendszer automatikusan megnöveli a maximális ru/s értéket az új tárolási érték alapján anélkül, hogy az hatással lenne az alkalmazásra.

Ha például 50 000 RU/s maximális RU/s-val kezd (5000–50 000 RU/s közötti skálázással), akár 5000 GB-os adatot is tárolhat. Ha meghaladja az 5000 GB-ot – például a tárterület most 6000 GB, az új maximális RU/s 60 000 RU/s lesz (6000–60 000 RU/s közötti skálázás).

Ha az adatbázisszintű átviteli sebességet automatikus skálázással használja, az első 25 tároló megoszthat egy maximum 1000 RU/s automatikus skálázást (100 és 1000 RU/s között skálázódik), feltéve, hogy nem lépi túl a 100 GB tárterületet. További információkért tekintse meg ezt a dokumentációt.

Dinamikus skálázás engedélyezése

A dinamikus skálázás alapértelmezés szerint engedélyezve van a 2024. szeptember 25. után létrehozott összes Azure Cosmos DB-fiók esetében. Azok az ügyfelek, akik engedélyezni szeretnék ezt a funkciót a régebbi fiókjaikhoz, programozott módon megtehetik az Azure PowerShell/CLI/Rest API-n vagy az Azure Portal funkciók paneljén az alábbi módon:

  1. Lépjen az Azure Cosmos DB-fiókjára az Azure Portalon.

  2. Lépjen a Szolgáltatások lapra.

  3. Keresse meg és engedélyezze a dinamikus skálázás (régiónként és partíciónkénti automatikus skálázás) funkciót.

    Képernyőkép a

    Fontos

    A szolgáltatás fiókszinten engedélyezve van, így a fiókon belüli összes automatikus skálázási tároló és automatikus skálázási megosztott átviteli sebesség-adatbázis automatikusan alkalmazza ezt a képességet. A funkció engedélyezése nem befolyásolja a kézi átviteli sebességet használó fiók erőforrásait. A manuális erőforrásokat automatikus skálázásra kell módosítani a dinamikus skálázás előnyeinek kihasználásához. A funkció engedélyezése nem jár állásidővel vagy teljesítményromlással. Ez a funkció nem alkalmazható kiszolgáló nélküli fiókokra. Ez a funkció minden felhőben támogatott.

Monitorozási metrikák

Az automatikus skálázás és a dinamikus skálázás figyeléséhez az alábbi metrikákat használhatja:

Mérték neve Definíció Metrikahasználat
Kiosztott átviteli sebesség Az összesített legmagasabb RU/s az egész órára skálázva jelenik meg, és az adott órára skálázott teljes RU/s értéket jelöli. Az Provisioned Throughput metrikával megtekintheti az óránként számlázott RU/s-t. Az automatikus skálázás esetén a számlázás az óránkénti legaktívabb partíció alapján történik, és ugyanez vonatkozik az összes partícióra és régióra is. Dinamikus automatikus skálázás esetén minden órában az egyes partíciók és régiók szintjén elért összesített legmagasabb RU/s alapján számlázunk.
Normalizált ru-használat Ez a metrika a felhasznált RU/s és a kiépített RU/s arányát jelöli minden partíció és régió szintjén. Ezzel a metrikával megállapíthatja, hogy az automatikus skálázás maximális átviteli sebessége nem vagy túl ki van-e építve.

Ha a metrika értéke következetesen 100%, és az alkalmazás sebességkorlátozást (429 hibakódot) lát, akkor több RU/s-ra lehet szüksége. Ezzel szemben, ha ez a metrikaérték alacsony, és nincs sebességkorlátozás, akkor lehet, hogy van hely az RU/s optimalizálására és skálázására. Megtudhatja, hogyan lehet értelmezni és hibakeresni a 429-es sebességkorlátozási hibákat.

A Normalized RU Consumption metrika a másodlagos régióban felhasznált RU/s-t tükrözi, amely az elsődleges régióból érkező írásreplikációs forgalom és a másodlagos régió olvasási forgalma miatt keletkezik.
Automatikusan skálázott RU A dinamikusan skálázott kiosztott átviteli sebességet minden partíció- és régiószinten csak a dinamikus automatikus skálázást engedélyező fiókok esetében jeleníti meg. Ezzel a metrika használatával megtudhatja, hogy az egyes régiók partíciói hogyan skálázhatók egymástól függetlenül a használatuk alapján.

Az Azure Monitor metrikáinak - elemezheti, hogyan alkalmazza az új automatikus skálázást a partíciók és régiók között. Szűrjön a kívánt adatbázisfiókra és -tárolóra, majd szűrje vagy ossza fel a Fizikai partícióazonosító metrika alapján. Ez a metrika az összes partíciót megjeleníti a különböző régióikban.

Fontos

Javasoljuk, hogy az Azure Cosmos DB natív dinamikus skálázási funkcióját használja a kapacitás kezeléséhez. Szükség esetén azonban az Azure Monitor normalizált RU-fogyasztási metrikája programozott skálázási döntések meghozatalára is használható. Más módszerek, például a ReadThroughputAsync() hívás használata az Azure Cosmos DB SDK-kban a ProvisionedThroughput lekéréséhez, vagy a ProvisionedThroughput használata az Azure Monitorban nem ajánlott, és pontatlan eredményekhez vezet. Ezek a metrikák késleltetett számlázott átviteli sebességet jelölnek, és nem használhatók a döntések skálázásához.

Összehasonlítás – manuális és automatikus skálázási átviteli sebességgel konfigurált tárolók

További részletekért tekintse meg ezt a dokumentációt a standard (manuális) és az automatikus skálázási átviteli sebesség közötti választásról.

Standard (manuális) átviteli sebességgel rendelkező tárolók Automatikus skálázási átviteli sebességgel rendelkező tárolók
Kiosztott átviteli sebesség (RU/s) Manuálisan telepítve. Automatikusan és azonnal skálázható a számítási feladatok használati mintái alapján.
Kérelmek/műveletek sebességkorlátozása (429) Előfordulhat, ha a használat meghaladja a kiosztott kapacitást. Ez nem történik meg, ha RU/s-t használ fel a konfigurált automatikus skálázási átviteli sebességtartományán belül.
Kapacitástervezés Kapacitástervezést kell végeznie, és meg kell adnia a szükséges átviteli sebességet. A rendszer automatikusan gondoskodik a kapacitástervezésről és a kapacitáskezelésről.
Árazás A manuálisan kiosztott RU/s óránkénti fizetése a standard (manuális) RU/s óránkénti díj alapján történik. Óránként fizet a rendszer legmagasabb RU/s értéke alapján, amelyet az adott órán belül ért el a skálázás során.

Egy írási régiós fiókok esetén óránként kell fizetnie a használt RU/s-ért az automatikus skálázási RU/s óránkénti díj használatával.

A több írási régióval rendelkező fiókok esetében az automatikus skálázásért nincs külön díj. A használt átviteli sebességért óránként azonos többrégiós írási RU/s per óra díjjal fizet.

A számítási feladatok típusaihoz leginkább megfelelő Kiszámítható és stabil számítási feladatok Kiszámíthatatlan és változó számítási feladatok

Standard kiosztott átviteli sebesség migrálása automatikus skálázásra

Azok a felhasználók, amelyek nagy számú erőforrást szeretnének migrálni a standard kiosztott átviteli sebességről az automatikus skálázásra, azure CLI-szkripttel migrálhatják az Azure-előfizetés összes átviteli sebesség-erőforrását az automatikus skálázáshoz.

Következő lépések