Globális elosztott adatbázis beállítása az Azure Cosmos DB MongoDB-hez készült API-jával

A KÖVETKEZŐKRE VONATKOZIK: MongoDB

Ebben a cikkben bemutatjuk, hogyan használható a Azure Portal egy globális elosztott adatbázis beállítására, és hogyan csatlakozhat hozzá az Azure Cosmos DB MongoDB-hez készült API-jával.

Ez a cikk a következő feladatokat mutatja be:

Globális adatbázis-régiók hozzáadása az Azure Portal használatával

Az Azure Cosmos DB világszerte minden Azure-régióban elérhető. Miután kiválasztotta az adatbázisfiók alapértelmezett konzisztenciaszintjét, egy vagy több régiót társíthat hozzá (a választott alapértelmezett konzisztenciaszinttől és a globális terjesztés szükségleteitől függően).

  1. Az Azure Portalon a bal oldali sávon kattintson az Azure Cosmos DB lehetőségre.

  2. Az Azure Cosmos DB oldalon válassza ki a módosítandó adatbázis-fiókot.

  3. A fiók lapon kattintson az Adatok globális replikálása lehetőségre a menüben.

  4. A térkép régióira, majd a Mentés gombra kattintva választhatja ki a hozzáadni vagy eltávolítani kívánt régiókat az Adatok globális replikálása lapon. A régiók hozzáadásának költsége van, további információkat az árképzést ismertető oldalon vagy a Globális adatterjesztés az Azure Cosmos DB-vel című cikkben talál.

    Kattintson a térkép régióira azok hozzáadásához vagy eltávolításához

Ha hozzáadta a második régiót, elérhetővé válik a Manuális feladatátvétel funkció a Portal Adatok globális replikálása oldalán. Ezzel a funkcióval tesztelhető a feladatátvételi folyamat vagy módosítható az elsődleges írási régió. Miután hozzáadta a harmadik régiót, ugyanazon az oldalon elérhetővé válik a Feladatátvételi prioritások funkció, így módosíthatja az olvasások feladatátvételi sorrendjét.

Globális adatbázis-régiók kiválasztása

Két vagy több régió konfigurálására két gyakori forgatókönyv áll rendelkezésre:

  1. Kis késleltetésű adathozzáférés biztosítása a végfelhasználóknak, legyenek bárhol a világon
  2. Regionális rugalmasság hozzáadása az üzletmenet-folytonosság és a vészhelyreállítás (BCDR) érdekében

Ha kis késleltetést szeretne biztosítani a végfelhasználók számára, javasolt, hogy az alkalmazást és az Azure Cosmos DB-t is abban a régióban való helyezze üzembe, amelyben az alkalmazások felhasználói találhatók.

A BCDR esetében ajánlott régiókat hozzáadni az Azure régiók közötti replikációja: Üzletmenet-folytonosság és vészhelyreállítás című cikkben ismertetett régiópárok alapján.

A területi beállítás ellenőrzése

Az Azure Cosmos DB MongoDB-hez készült API-jával egyszerűen ellenőrizheti a globális konfigurációt, ha futtatja az isMaster() parancsot a Mongo Shellből.

A Mongo parancskörnyezetben:

   db.isMaster()

Példa eredmények:

   {
      "_t": "IsMasterResponse",
      "ok": 1,
      "ismaster": true,
      "maxMessageSizeBytes": 4194304,
      "maxWriteBatchSize": 1000,
      "minWireVersion": 0,
      "maxWireVersion": 2,
      "tags": {
         "region": "South India"
      },
      "hosts": [
         "vishi-api-for-mongodb-southcentralus.documents.azure.com:10255",
         "vishi-api-for-mongodb-westeurope.documents.azure.com:10255",
         "vishi-api-for-mongodb-southindia.documents.azure.com:10255"
      ],
      "setName": "globaldb",
      "setVersion": 1,
      "primary": "vishi-api-for-mongodb-southindia.documents.azure.com:10255",
      "me": "vishi-api-for-mongodb-southindia.documents.azure.com:10255"
   }

Csatlakozás egy előnyben részesített régióhoz

Az Azure Cosmos DB MongoDB-hez készült API-ja lehetővé teszi a gyűjtemény olvasási beállításainak megadását egy globálisan elosztott adatbázishoz. Az alacsony olvasási késés és a globálisan magas rendelkezésre állás esetében egyaránt azt javasoljuk, hogy a gyűjtemény olvasási beállítását a legközelebbi értékre konfigurálja. A legközelebbi olvasási beállítás úgy van konfigurálva, hogy a legközelebb eső régióból olvasson.

var collection = database.GetCollection<BsonDocument>(collectionName);
collection = collection.WithReadPreference(new ReadPreference(ReadPreferenceMode.Nearest));

Az elsődleges olvasási/írási régióval és vészhelyreállítási (DR) forgatókönyvekhez másodlagos régióval rendelkező alkalmazások esetében javasoljuk, hogy a gyűjtemény olvasási beállításait az elsődleges előnyben részesített értékre állítsa. Az elsődlegesen előnyben részesített olvasási beállítás úgy van konfigurálva, hogy a másodlagos régióból olvasson, ha az elsődleges régió nem érhető el.

var collection = database.GetCollection<BsonDocument>(collectionName);
collection = collection.WithReadPreference(new ReadPreference(ReadPreferenceMode.SecondaryPreferred));

Végül pedig ha az olvasási régiókat manuálisan szeretné megadni, a régió címkét az olvasási beállításban adhatja meg.

var collection = database.GetCollection<BsonDocument>(collectionName);
var tag = new Tag("region", "Southeast Asia");
collection = collection.WithReadPreference(new ReadPreference(ReadPreferenceMode.Secondary, new[] { new TagSet(new[] { tag }) }));

Ezzel el is végezte az oktatóanyagot. Ha meg szeretné ismerni, hogyan kezelheti a globálisan replikált fiók konzisztenciáját, olvassa el a Konzisztenciaszintek az Azure Cosmos DB-ben című cikket. További információ a globális adatbázis-replikáció működéséről az Azure Cosmos DB szolgáltatásban: Globális adatterjesztés az Azure Cosmos DB-vel.

Következő lépések

Ebben az oktatóanyagban a következőket hajtotta végre:

  • Globális terjesztés konfigurálása az Azure Portallal
  • Globális disztribúció konfigurálása az Azure Cosmos DB MongoDB-hez készült API-jával

Továbbléphet a következő oktatóanyagra, amelyből megtudhatja, hogyan fejleszthet helyileg az Azure Cosmos DB helyi emulátorával.

Kapacitástervezést szeretne végezni az Azure Cosmos DB-be való migráláshoz? A kapacitástervezéshez használhatja a meglévő adatbázisfürt adatait.