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


Az Azure Well-Architected Framework áttekintése – Azure Cosmos DB for NoSQL

Ez a cikk az Azure Cosmos DB for NoSQL ajánlott eljárásait ismerteti. Ezek az ajánlott eljárások biztosítják, hogy hatékony, megbízható, biztonságos, költségre optimalizált és működési szempontból kiváló megoldásokat helyezhessen üzembe az Azure Cosmos DB-ben. Ez az útmutató a well-architected keretrendszerben az architektúra kiválóságának öt pillérére összpontosít:

Ez a felülvizsgálati útmutató feltételezi, hogy rendelkezik az Azure Cosmos DB-vel, és jól ismeri annak funkcióit. További információ: Azure Cosmos DB for NoSQL.

Előfeltételek

A jól felépítésű keretrendszer alappilléreinek megértése segíthet a kiváló minőségű, stabil és hatékony felhőarchitektúra létrehozásában. Javasoljuk, hogy először tekintse át a számítási feladatot az Azure Well-Architected Framework Review felmérésével.

További információkért tekintse át a különböző referenciaarchitektúrákat, amelyek az útmutatóban szereplő szempontokat tükrözik a kialakításukban. Ezek az architektúrák magukban foglalják, de nem korlátozódnak a következőkre:

Megbízhatóság

A felhőszolgáltatáshoz hasonlóan a szolgáltatás és a számítási feladat oldalán is előfordulhatnak hibák. Lehetetlen megakadályozni az összes lehetséges hibát, de jobb cél, hogy minimálisra csökkentse azokat a hatásokat, amelyeket egy hibás összetevő a teljes számítási feladatra gyakorolhat. Ez a szakasz megfontolandó szempontokat és javaslatokat tartalmaz az egyszeri meghibásodás következményeinek minimalizálása érdekében.

Tervezési ellenőrzőlista

Ajánlások

Ajánlás Juttatás
Ossza el Azure Cosmos DB-fiókját a rendelkezésre állási zónák között (ha elérhető). A rendelkezésre állási zónák eltérő energiaellátási, hálózatkezelési és hűtési elválasztó hardverhibákat biztosítanak a replikák egy részhalmazára. Az Azure Cosmos DB több replikával rendelkezik, amelyek egyetlen véletlenszerű rendelkezésre állási zónára terjednek ki, ha a rendelkezésre állási zónák funkció nincs használatban. A rendelkezésre állási zóna funkció használata esetén a replikák több rendelkezésre állási zónára is kiterjednek.
Az Azure Cosmos DB-fiók konfigurálása legalább két régióra kiterjedően. Több régióra kiterjedően megakadályozza, hogy a fiókja teljesen elérhetetlen legyen, ha elszigetelt régiókimaradás történik.
Engedélyezze a szolgáltatás által felügyelt feladatátvételt a fiókjához. A szolgáltatás által felügyelt feladatátvétel lehetővé teszi, hogy az Azure Cosmos DB módosítsa egy többrégiós fiók írási régióját a rendelkezésre állás megőrzése érdekében. Ez a módosítás felhasználói beavatkozás nélkül történik. Ismerje meg a szolgáltatás által felügyelt feladatátvétellel kapcsolatos kompromisszumokat, és szükség esetén tervezze meg a kényszerített feladatátvételt. További információ: magas rendelkezésre állású alkalmazások létrehozása.
A rendelkezésre állás ellenőrzése a feladatátvétel manuális tesztelésével, a szolgáltatás által felügyelt feladatátvétel ideiglenes letiltásával. A szolgáltatáskezelés feladatátvételének ideiglenes letiltása lehetővé teszi az alkalmazás végpontok közötti magas rendelkezésre állásának ellenőrzését egy szkript vagy az Azure Portal használatával megkezdett manuális feladatátvétellel. Ezt követően újra lehet kezelni a szolgáltatás által felügyelt feladatátvételt.

Azure szabályzatmeghatározások

Biztonság

A biztonság minden olyan architektúra kritikus része, amely könnyen figyelmen kívül hagyható a kényelem érdekében. A végső számítási feladat biztonságát úgy erősítheti meg, hogy az első erőforrás létrehozása előtt figyelembe veszi a különböző ajánlott biztonsági eljárásokat. Ez a szakasz megfontolandó szempontokat és javaslatokat tartalmaz a végső számítási feladat biztonsági réseinek számának csökkentésére.

Tervezési ellenőrzőlista

  • Csökkentse a felületi támadási területet úgy, hogy privát végpontokat szeretne használni az Azure Cosmos DB biztonsági alapkonfigurációjának megfelelően.
  • Szerepkörök, csoportok és hozzárendelések létrehozása a fiókhoz való vezérlősík- és adatsík-hozzáféréshez a minimális jogosultsági hozzáférés elve szerint. Fontolja meg a kulcsalapú hitelesítés letiltását.
  • A szolgáltatásszintű megfelelőség és a minősítések értékelése a jelenlegi globális személyesadat-követelmények kontextusában.
  • Inaktív vagy mozgásban lévő adatok titkosítása szolgáltatás által felügyelt kulcsok vagy ügyfél által felügyelt kulcsok (CMK-k) használatával.
  • A felhasználói hozzáférés, a biztonsági incidensek és az erőforrás-műveletek naplózása vezérlősík-naplókkal.
  • Adatforgalom, adatváltozások, használat és késés monitorozása adatsík-metrikákkal.

Ajánlások

Ajánlás Juttatás
Legalább az adatvédelmi és identitáskezelési biztonsági alapkonfigurációk implementálása. Tekintse át a biztonsági alapkonfigurációt, beleértve az identitáskezelést és az adatvédelemet is. Implementálja az Azure Cosmos DB-fiók védelmére vonatkozó javaslatokat.
Tiltsa le a nyilvános végpontokat, és használjon privát végpontokat, amikor csak lehetséges. Ne hagyjon felesleges vagy nem használt nyilvános végpontokat a fiók felületi támadásaihoz.
Szerepköralapú hozzáférés-vezérléssel korlátozhatja a vezérlősíkok hozzáférését adott identitásokhoz és csoportokhoz, valamint a jól definiált hozzárendelések hatókörébe. Szerepköralapú hozzáférés-vezérléssel megakadályozhatja a fiókhoz való nem szándékos hozzáférést. Rendeljen hozzá megfelelő szerepköröket és engedélyeket az Azure Cosmos DB-t elérő felhasználókhoz vagy alkalmazásokhoz.
Hozzon létre virtuális hálózati végpontokat és szabályokat a fiókhoz való hozzáférés korlátozásához. Virtuális hálózati szolgáltatásvégpontok és tűzfalszabályok implementálása az Azure Cosmos DB-fiókhoz való hozzáférés korlátozásához. Hálózati biztonsági csoportok (NSG-k) használatával szabályozhatja az Azure Cosmos DB-erőforrások bejövő és kimenő forgalmát. A megbízható hálózatokhoz való hozzáférés korlátozása és a megfelelő hálózati biztonsági intézkedések alkalmazása segít megvédeni az adatokat a jogosulatlan hozzáféréstől.
Kövesse az ajánlott szoftverfejlesztési eljárásokat az adatokhoz való biztonságos hozzáférés érdekében. Kövesse a biztonságos kódolási eljárásokat, és végezzen biztonságos kódvizsgálatokat az Azure Cosmos DB-vel interakcióba lépő alkalmazások fejlesztésekor. Védelmet nyújt az olyan gyakori biztonsági rések ellen, mint az injektálási támadások, a helyek közötti szkriptelés (XSS) vagy a nem biztonságos közvetlen objektumhivatkozások (IDOR). A biztonsági kockázatok elkerülése érdekében a bemeneti ellenőrzés, a paraméteres lekérdezések és a gyakori HTTP-állapotkódok megfelelő hibakezelésének megvalósítása.
A vezérlősík naplóinak figyelése a behatolások esetén. A monitorozás segít nyomon követni a hozzáférési mintákat és a naplókat, biztosítva, hogy az adatbázis biztonságos maradjon, és megfeleljen a vonatkozó adatvédelmi előírásoknak. Az adatsík-metrikák monitorozása segíthet azonosítani azokat az ismeretlen mintákat is, amelyek biztonsági incidenst okozhatnak. További információt az Azure-adatbázisok biztonsági ellenőrzőlistájában talál.
A Microsoft Defender engedélyezése az Azure Cosmos DB-hez A Microsoft Defender észleli az Azure Cosmos DB for NoSQL-fiókban lévő adatbázisok kihasználására tett kísérleteket. A Defender észleli a lehetséges SQL-injektálásokat, a gyanús hozzáférési mintákat és más potenciális kihasználásokat.

Azure szabályzatmeghatározások

Költségoptimalizálás

A számítási feladatok jellemzői és a megoldás implementálása befolyásolhatja az Azure-ban való futtatás végső költségét. A számítási feladat tervezésekor vegye figyelembe a fő illesztőprogramokat, például a particionálási stratégiát, a konzisztenciaszintet, a replikációt és az írás típusát. A számítási feladatok méretezésekor vegye figyelembe az adatok olvasási/írási jellegét, az átlagos elemek méretét, a normalizálást és a TTL-t. Ez a szakasz megfontolandó szempontokat és javaslatokat tartalmaz a számítási feladatok költségeinek gördülékenyebbé tételéhez.

  • Olyan indexelési szabályzatot tervezhet, amely figyelembe veszi a számítási feladatban gyakran végrehajtott műveleteket és lekérdezéseket.
  • Határozzon meg olyan partíciókulcsot vagy partíciókulcs-készletet, amelynek értéke magas számossággal rendelkezik, és nem változik. A meglévő útmutató és ajánlott eljárások segítségével kiválaszthatja a megfelelő partíciókulcsot. A partíciókulcs meghatározásakor vegye figyelembe az indexelési szabályzatot is.
  • Válasszon ki egy, a számítási feladatnak megfelelő átviteli sebesség-foglalási sémát. Tekintse át az adatbázis vagy tároló szintjén elosztott szabványos és automatikus skálázási átviteli sebesség előnyeit. Szükség esetén fontolja meg a kiszolgáló nélküli elemet is. Tekintse át a számítási feladat forgalmi mintáit az átviteli sebesség lefoglalási sémájának kiválasztásával összefüggésben.
  • Vegye figyelembe a konzisztenciaszinteket a számítási feladathoz kapcsolódóan. Fontolja meg azt is, hogy az ügyfél-munkamenetek módosítják-e az alapértelmezett konzisztenciaszintet.
  • Számítsa ki a számítási feladat várható teljes adattárolását. Az elemek és indexek mérete mind befolyásolja az adattárolás költségeit. A replikáció és a biztonsági mentés tárolási költségekre gyakorolt hatásának számítása.
  • Hozzon létre egy stratégiát, amely automatikusan eltávolítja a már nem használt vagy szükséges régebbi elemeket. Ha szükséges, exportálja ezeket az elemeket egy alacsonyabb költségű tárolási megoldásba, mielőtt eltávolítanák őket.
  • Értékelje ki a leggyakoribb lekérdezéseket, amelyek minimálisra csökkentik a partíciók közötti kereséseket. Ezen információk segítségével tájékoztathatja a partíciókulcs kiválasztásának vagy az indexelési szabályzat testreszabásának folyamatáról.

Ajánlások

Ajánlás Juttatás
Ru/s kihasználtság és minták monitorozása. Metrikákkal monitorozza a ru-használatot a megoldás elejétől kezdve. Lekérdezésekkel és más adatelemzési technikákkal antipatterneket kereshet az alkalmazás kódjában.
Testre szabhatja az indexelési szabályzatot, hogy megfeleltethesse a számítási feladatnak. Az alapértelmezett indexelési szabályzat egy elem összes elérési útját indexeli, és ez a szabályzat jelentős hatással lehet a ru-használatra és a költségekre. Olyan indexelési szabályzatot használjon, amely csak a gyakori lekérdezésekhez indexelendő útvonalak alapján van kialakítva. Az írási feladatokhoz tiltsa le a lekérdezésekben nem használt oszlopok automatikus indexelését.
Válassza ki a számítási feladatokhoz ideális partíciókulcsokat. A partíciókulcsnak egyenlően kell elosztania az átviteli sebességet és az adattárolást a logikai partíciók között. A kijelölésnek minimalizálnia kell a kötetlen keresztpartíciós lekérdezések számát is. Kerülje azokat a gyakori partíciókat, amelyek aránytalan mennyiségű forgalmat kapnak, mivel a kiegyensúlyozatlan partíciók növelhetik az átviteli sebesség költségeit és az átmeneti hibákat. Használja a leggyakoribb keresési lekérdezéseket a lehetséges partíciókulcsok meghatározásához, amelyek valószínűleg csak egypartíciós vagy határolókeretes keresztpartíciós lekérdezéseket hajtanak végre.
Használjon kiszolgáló nélküli vagy kiosztott átviteli sebességet, manuális kiépítést vagy automatikus skálázást az adatbázis vagy a tároló szintjén, ha megfelelő a számítási feladathoz. Hasonlítsa össze a kiosztott átviteli sebességet, és válassza ki a számítási feladathoz megfelelő beállítást. A kisebb és fejlesztési/tesztelési számítási feladatok általában kihasználhatják a kiszolgáló nélküli átviteli sebességet vagy a manuális megosztott átviteli sebességet az adatbázis szintjén. A nagyobb, kritikus fontosságú számítási feladatok kihasználhatják a tároló szintjén hozzárendelt kiosztott átviteli sebességet.
Konfigurálja az alkalmazás alapértelmezett konzisztenciaszintét . Szükség esetén az ügyfél-munkamenetek alapértelmezett konzisztenciaszintjének csökkentésére. Előfordulhat, hogy nem mindig kell módosítania a standard alapértelmezett konzisztenciaszintet, vagy felül kell bírálnia azt az ügyfél-munkamenetekben. Vegye figyelembe a nagyobb, nagyobb konzisztenciaszinten történő olvasással járó költségeket.
Fejlesztői/tesztelési számítási feladatokhoz használja az Azure Cosmos DB emulátort. Az Azure Cosmos DB emulátor egy olyan fejlesztési/tesztelési és folyamatos integrációs lehetőség, amely csökkentheti a fejlesztési csapat számára a gyakori számítási feladatok költségeit. Az emulátor Docker-tárolórendszerképként is elérhető.
Tranzakciós kötegműveletek használata Tervezzen partíciókat, hogy kihasználhassa a tranzakciós kötegműveleteket egy logikai partíciókulcson belül a beszúráshoz. Kötegműveleteket használhat az ügyféloldali SDKS-ben több dokumentum beszúrására, frissítésére vagy törlésére egyetlen tranzakciós kérelemben. Ez a lépés csökkentheti az egyes kérések számát, és végül jobb átviteli sebességhez vezethet.
A nagy lekérdezési eredményhalmazok átviteli sebességének csökkentéséhez használjon előrejelzést. Lekérdezéseket hozhat létre, hogy csak az eredményhalmazból megkövetelt mezők minimális számát vetje ki. Ha szükség van a mezőkre vonatkozó számításokra, értékelje ki a számítások kiszolgálóoldali és ügyféloldali teljesítményköltségét.
Kerülje a kötetlen keresztpartíciós lekérdezések használatát. Értékelje ki és írja le a lekérdezéseket, hogy lehetőség szerint egyetlen logikai partíción belül kereshessenek. Lekérdezésszűrők használatával szabályozhatja, hogy mely logikai partíciókon történjen a lekérdezési cél. Ha egy lekérdezésnek logikai partíciók között kell keresnie, a lekérdezést úgy kötötte össze, hogy a teljes vizsgálat helyett csak a logikai partíciók egy részhalmazában keressen.
Az élettartam (TTL) implementálása a nem használt elemek eltávolításához. A TTL használatával automatikusan törölheti a már nem szükséges adatokat. A lejárt vagy elavult adatok eltávolításával kezelheti a tárolási költségeket. Szükség esetén exportálja a lejárt adatokat egy alacsonyabb költségű tárolási megoldásba.
Fontolja meg a nagy aggregációk elemzési tárát. Az Azure Cosmos DB elemzési tára automatikusan szinkronizálja az adatokat egy külön oszloptárolóba, így nagy aggregációkhoz, jelentéskészítéshez és elemzési lekérdezésekhez optimalizálja az adatokat.

Azure szabályzatmeghatározások

Működés eredményessége

A számítási feladatokat az üzembe helyezés után figyelni kell, hogy biztosan a kívánt módon teljesíthessenek. Emellett a számítási feladatok monitorozása segíthet a tervezési fázisban nem azonnal nyilvánvaló új hatékonyságok feloldásában. Katasztrofális helyzetekben a diagnosztikai adatok kulcsfontosságúak annak feltárásához, hogy miért fordulhatott elő nagy súlyosságú incidens. Ez a szakasz a számítási feladatok eseményeinek és jellemzőinek figyelésére vonatkozó szempontokat és javaslatokat tartalmaz.

Tervezési ellenőrzőlista

  • Alakítsa ki a napló- és metrikák monitorozási stratégiáját a különböző számítási feladatok megkülönböztetésére, a kivételes forgatókönyvek megjelölésére, a kivételek/hibák mintáinak nyomon követésére és a gazdagép teljesítményének nyomon követésére.
  • Nagy számítási feladatokat tervezhet tömeges műveletek használatára, amikor csak lehetséges.
  • Több riasztás definiálása a szabályozás figyeléséhez, az átviteli sebesség lefoglalásának elemzéséhez és az adatok méretének nyomon követéséhez.
  • Monitorozási stratégia tervezése a megoldás régiók közötti rendelkezésre állásához.
  • Ajánlott eljárások létrehozása és betartatása az Azure Cosmos DB for NoSQL-fiók és -erőforrások üzembe helyezésének automatizálásához.
  • Tervezze meg a várt metrikaküszöböket a partíció- és indexterv alapján. Győződjön meg arról, hogy van egy terv a metrikák monitorozására annak meghatározásához, hogy milyen közel vannak a tervezett küszöbértékekhez.

Ajánlások

Ajánlás Juttatás
Győződjön meg arról, hogy az alkalmazásfejlesztők a fejlesztői SDK legújabb verzióját használják. Minden Azure Cosmos DB for NoSQL SDK rendelkezik minimálisan ajánlott verzióval. További információ: .NET SDK és Java SDK.
Azonosítók létrehozása az ügyfélalkalmazásban a számítási feladatok megkülönböztetéséhez. Fontolja meg a jelölőket( például a felhasználói ügynök utótagját) annak megállapításához, hogy az egyes naplóbejegyzések vagy metrikák milyen számítási feladathoz legyenek társítva.
Kiegészítő diagnosztikát rögzíthet a fejlesztői SDK használatával. Az egyes SDK-k diagnosztikai injektálási technikáinak használatával kiegészítő információkat adhat hozzá a számítási feladatról az alapértelmezett metrikák és naplók mellett. További információ: .NET SDK és Java SDK.
A gazdagép erőforrásaihoz társított riasztások létrehozása. Csatlakozás az ügyféloldali gazdagéppel kapcsolatos problémák miatt a rendelkezésre állással és a rendelkezésre állással kapcsolatos problémák léphetnek fel. Az Azure Cosmos DB for NoSQL SDK-k használatával monitorozza az olyan erőforrásokat, mint a PROCESSZOR, a memória és a tároló gazdaszámítógépeken az ügyfélalkalmazásokkal.
Használja az ügyféloldali SDK-k tömeges funkcióit a nagy műveletekhez. A nagy átviteli sebességet igénylő forgatókönyvek kihasználják az SDK tömeges funkcióját. A tömeges funkció automatikusan kezeli és kötegeli a műveleteket az átviteli sebesség maximalizálása érdekében.
Riasztások létrehozása az átviteli sebesség szabályozásához. Riasztások használatával nyomon követheti a várt küszöbértékeken túli átviteli sebesség szabályozását. Idővel tekintse át és módosítsa a riasztásokat, mivel többet tudhat meg a számítási feladatról az Azure Cosmos DB-hez képest. A normalizált ru-használat metrika egy olyan metrika, amely az adatbázison vagy tárolón kiosztott átviteli sebesség százalékos kihasználtságát méri. Ha ez a metrika következetesen 100%-os, a kérések valószínűleg átmeneti hibát adnak vissza.
A lekérdezés teljesítményének nyomon követése metrikákkal. Metrikákkal nyomon követheti a leggyakoribb lekérdezések teljesítményét az idő függvényében. Az indexelési szabályzat frissítésével vagy a lekérdezések módosításával értékelheti, hogy vannak-e hatékonysági problémák. Ha a lekérdezési teljesítmény gyenge, hárítsa el a teljesítményt, és alkalmazza a lekérdezési ajánlott eljárásokat. További információkért tekintse meg a lekérdezési teljesítményre vonatkozó tippeket.
Sablonokkal automatikusan üzembe helyezhet fiókerőforrásokat. Fontolja meg az Azure Resource Manager-, Bicep- vagy Terraform-sablonokat a fiók és az azt követő erőforrások üzembe helyezésének automatizálásához. Győződjön meg arról, hogy csapata ugyanazokat a sablonokat használja más nem gyártási környezetekben való üzembe helyezéshez.
A számítási feladat gyakori problémáinak azonosításához kövesse nyomon a főbb metrikákat. Konkrét metrikák használatával megtalálhatja a számítási feladat gyakori problémáit, beleértve, de nem kizárólagosan; RU-kihasználtság, ru-kihasználtság partíció, szabályozás és kérelemkötetek típus szerint. További információ: monitorozási adatok referenciája.

Azure szabályzatmeghatározások

Teljesítmény hatékonysága

  • Határozza meg az alkalmazás teljesítménykonfigurációját. Mérje meg, hogy hány egyidejű felhasználót és tranzakciót kell kezelnie. Fontolja meg a számítási feladatok olyan jellemzőit, mint az átlagos felhasználói folyamat, a gyakori műveletek és a kihasználtság kiugró száma.
  • A leggyakoribb és legösszetettebb lekérdezések kutatása. Több keresési, illesztési vagy összesítési lekérdezést használó lekérdezések azonosítása. Vegye figyelembe ezeket a lekérdezéseket a partíciókulcs vagy az indexelési szabályzat tervezési szempontjai között.
  • A leggyakoribb lekérdezések esetében határozza meg a várt eredmények számát az oldalonként. Ez a szám segít formalizálni a pufferelt elemek számát az előre megadott eredményekhez.
  • A célfelhasználók kutatása. Határozza meg, hogy mely Azure-régiók vannak a legközelebb hozzájuk.
  • Azonosítsa azokat a lekérdezéseket, amelyek egy vagy több rendezési mezőt használnak. Emellett azonosítsa a több mezőt érintő műveleteket is. Ezeket a mezőket kifejezetten belefoglalja az indexelési szabályzat kialakításába.
  • Tervezzen elemeket úgy, hogy a hozzájuk tartozó JSON-dokumentumok a lehető legkisebbek legyenek. Ha szükséges, figyelembe veszi az adatok több elem közötti felosztását.
  • Azonosítsa a gyermektömbök lekérdezéseit, és állapítsa meg, hogy a lekérdezések a hatékonyabb alkonyat-keresések jelöltjei-e.
  • Állapítsa meg, hogy a számítási feladathoz elemzési tár szükséges-e. A rendkívül összetett lekérdezésekhez fontolja meg az elemzési tárakat és szolgáltatásokat, például az Azure Synapse Linket .
Ajánlás Juttatás
Konfigurálja az átviteli sebességet a teljesítménykonfiguráció alapján. A teljesítménykonfigurációhoz szükséges átviteli sebesség meghatározásához használjon olyan eszközöket, mint a kapacitáskalkulátor . Az automatikus skálázáshoz hasonló funkciókkal a tényleges átviteli sebességet a tényleges számítási feladatnak jobban megfelelő skálázhatja. Ezután figyelje meg a tényleges átviteli sebesség használatát, és végezze el a módosításokat.
Szükség esetén használjon optimalizálási technikákat az ügyfél és a kiszolgáló oldalán. Használja ki a beépített integrált gyorsítótár előnyeit. Konfigurálja az SDK-t annak kezelésére, hogy hány elem legyen előre bevéve (pufferelve), és adja vissza az egyes lapokhoz.
Az Azure Cosmos DB for NoSQL üzembe helyezése a végfelhasználókhoz legközelebbi régiókban. Csökkentse a késést úgy, hogy az Azure Cosmos DB for NoSQL-t a lehető legnagyobb mértékben a végfelhasználókhoz legközelebbi régiókban helyezi üzembe. Használja ki az olvasási replikáció előnyeit, hogy teljesítménybeli olvasási teljesítményt nyújtson függetlenül attól, hogy hogyan konfigurálja az írást (egy vagy több régió). Konfigurálja a (.NET/Java) SDK-t, hogy a végfelhasználóhoz közelebbi régiókat részesítsen előnyben.
Konfigurálja az SDK-t közvetlen módhoz. A legjobb teljesítmény érdekében a közvetlen mód az előnyben részesített beállítás. Ez a mód lehetővé teszi az ügyfél számára, hogy közvetlenül a szolgáltatás partícióira nyissa meg a TCP-kapcsolatokat, és közvetlenül közvetítő átjáró nélkül küldjön kéréseket. Ez a mód jobb teljesítményt nyújt, mivel kevesebb hálózati ugrás van.
Tiltsa le a tömeges műveletek indexelését. Ha sok beszúrási/csere-/upsert-művelet van, tiltsa le az indexelést a művelet sebességének javítása érdekében a megfelelő SDK tömeges támogatása mellett. Az indexelés később azonnal újra szerkeszthető.
Összetett műveletekben használt mezőkhöz hozzon létre összetett indexeket. Az összetett indexek nagyságrendekkel növelhetik a műveletek hatékonyságát több mezőn. Sok esetben összetett indexeket használ több mezővel rendelkező utasításokhozORDER BY.
Optimalizálja a gazdagépügyfél-gépeket az SDK-khoz. A leggyakoribb esetben használjon legalább 4 magos és 8 GB-os memóriát 64 bites gazdagépeken az SDK-k (.NET/Java) használatával. Emellett gyorsított hálózatkezelést is engedélyezhet a gazdagépeken.
A legtöbb SDK-ban használja az CosmosClient osztály egyetlen mintáját. Használja az ügyfélosztályt a legtöbb SDK-ban egyetlentonként. Az ügyfélosztály kezeli a saját életciklusát, és úgy van kialakítva, hogy ne lehessen megsemmisíteni. A példányok folyamatos létrehozása és letiltása csökkentheti a teljesítményt.
Az elemek méretének megtartása 100 KB-nál kisebb méretben. A nagyobb elemek nagyobb átviteli sebességet biztosítanak a gyakori olvasási és írási műveletekhez. Az olyan nagyobb elemek lekérdezései, amelyek minden mezőt kivetítenek, jelentős átviteli sebességgel is járhatnak.
A nagy adathalmazokhoz csatlakozó lekérdezések optimalizálása az albekérdezések stratégiai használatával. A gyermektömbökhöz csatlakozó lekérdezések összetettebbé tehetik azokat a lekérdezéseket, amelyek több tömböt is érintenek, és nem szűrnek. Egy legalább 10 elemből álló két tömböt összekapcsoló lekérdezés például több mint 1000-et is kiterjeszthet. Az önillesztésű kifejezések optimalizálása albekérdezések használatával a tömbök szűréséhez, mielőtt tömböket csatlakoztatna az elemen belül. A partíciók közötti lekérdezések esetében optimalizálja a lekérdezést úgy, hogy a partíciókulcs szűrővel optimalizálja a lekérdezés útválasztását a lehető legkevesebb partícióra.
A legösszetettebb lekérdezésekhez használjon elemzési számítási feladatokat. Ha gyakori összesítéseket futtat, vagy nagy tárolókon keresztül csatlakozik a lekérdezésekhez, fontolja meg az elemzési tár engedélyezését és a lekérdezések elvégzését az Azure Synapse Analyticsben.

Azure szabályzatmeghatározások

További erőforrások

Fontolja meg az Azure Cosmos DB for NoSQL-hez kapcsolódó további erőforrásokat.

Útmutató az Azure Architecture Centerhez

Útmutató a felhőbevezetési keretrendszerhez

Következő lépések