Kroki optymalizacji po migracji podczas korzystania z interfejsu API usługi Azure Cosmos DB dla bazy danych MongoDB
DOTYCZY: MongoDB
Ważne
Przeczytaj cały ten przewodnik przed wykonaniem kroków po migracji.
Ten przewodnik po migracji bazy danych MongoDB jest częścią serii migracji bazy danych MongoDB. Krytyczne kroki migracji bazy danych MongoDB to etapy przed migracją, migracją i po migracji, jak pokazano poniżej.
Omówienie po migracji
Po przeprowadzeniu migracji danych przechowywanych w bazie danych MongoDB do interfejsu API usługi Azure Cosmos DB dla bazy danych MongoDB możesz nawiązać połączenie z usługą Azure Cosmos DB i zarządzać danymi. Ten przewodnik zawiera opis kroków, których wykonanie należy rozważyć po przeprowadzeniu migracji. Aby zapoznać się z krokami migracji, zobacz samouczek Migrowanie bazy danych MongoDB do interfejsu API usługi Azure Cosmos DB dla bazy danych MongoDB.
Wykonaj następujące kroki, aby przeprowadzić migrację po migracji
- Optymalizowanie zasad indeksowania
- Konfigurowanie dystrybucji globalnej dla interfejsu API usługi Azure Cosmos DB dla bazy danych MongoDB
- Ustawianie poziomu spójności
- Łączenie (jednorazowe) aplikacji
- Dostrajanie w celu uzyskania optymalnej wydajności
Uwaga
Jedynym obowiązkowym krokiem po migracji jest zmiana parametry połączenia w aplikacji w celu wskazania nowego konta usługi Azure Cosmos DB. Wszystkie inne kroki po migracji to zalecane optymalizacje w celu zwiększenia wydajności warstwy danych. Jeśli jednak natychmiast wykonasz migrację jednorazową aplikacji bez innych kroków, aplikacja natychmiast zobaczy wpływ braku optymalnego indeksowania i spójności. W szczególności w przypadku migracji jednorazowej przed skonfigurowaniem indeksów aplikacja może zobaczyć natychmiastowy spadek cen/wydajności. Należy pamiętać, że można rozwiązać ten problem — po zoptymalizowaniu indeksu oczekujemy, że usługa Azure Cosmos DB często przewyższa rozwiązanie status quo w zakresie cen/wydajności.
Wymagania wstępne
W tym przewodniku założono, że utrzymujesz rekord postępu migracji przy użyciu pewnego rodzaju artefaktu śledzenia, takiego jak arkusz kalkulacyjny. Jeśli jeszcze tego nie zrobiono, zalecamy przeczytanie przewodnika przed migracją , aby uzyskać wskazówki dotyczące tworzenia arkusza kalkulacyjnego migracji infrastruktury danych, odnajdywania istniejących zasobów bazy danych MongoDB i planowania migracji.
Optymalizowanie zasad indeksowania
Aby zoptymalizować cenę i wydajność, zalecamy zapoznanie się z arkuszem kalkulacyjnym migracji majątku danych i zaprojektowaniem konfiguracji indeksu dla każdego zasobu.
- Zalecamy planowanie indeksów w fazie przed migracją. Dodaj kolumnę do arkusza kalkulacyjnego migracji majątku danych dla ustawień indeksu.
Serwer usługi Azure Cosmos DB dla bazy danych MongoDB w wersji 3.6 lub nowszej automatycznie indeksuje tylko pole _id. Nie można porzucić tego pola. Automatycznie wymusza unikatowość pola _id na klucz fragmentu. Aby zindeksować dodatkowe pola, zastosuj polecenia MongoDB służące do zarządzania indeksowaniem. Te domyślne zasady indeksowania różnią się od usługi Azure Cosmos DB for NoSQL, która domyślnie indeksuje wszystkie pola.
W przypadku serwera usługi Azure Cosmos DB dla bazy danych MongoDB w wersji 3.2 wszystkie pola danych są domyślnie indeksowane automatycznie podczas migracji danych do usługi Azure Cosmos DB. W wielu przypadkach te domyślne zasady indeksowania są akceptowalne. Ogólnie rzecz biorąc, usuwanie indeksów optymalizuje żądania zapisu i ma domyślne zasady indeksowania (tj. automatyczne indeksowanie) optymalizuje żądania odczytu.
Funkcje indeksowania udostępniane przez usługę Azure Cosmos DB obejmują dodawanie indeksów złożonych, unikatowych indeksów i indeksów czasu wygaśnięcia (TTL). Interfejs zarządzania indeksem jest mapowany na polecenie createIndex(). Dowiedz się więcej na temat indeksowania w usłudze Azure Cosmos DB i indeksowania w interfejsie API usługi Azure Cosmos DB dla bazy danych MongoDB.
- Zastosuj te ustawienia indeksu podczas po migracji.
- Usługa Azure Database Migration Service automatycznie migruje kolekcje bazy danych MongoDB z unikatowymi indeksami. Jednak przed migracją należy utworzyć unikatowe indeksy. Usługa Azure Cosmos DB nie obsługuje tworzenia unikatowych indeksów, gdy w kolekcjach znajdują się już dane. Aby uzyskać więcej informacji, zobacz Unikatowe klucze w usłudze Azure Cosmos DB.
Globalnie dystrybuuj dane
Usługa Azure Cosmos DB jest dostępna we wszystkich regionach świadczenia usługi Azure na całym świecie.
- Postępuj zgodnie ze wskazówkami w artykule Dystrybucja danych globalnie w interfejsie API usługi Azure Cosmos DB dla bazy danych MongoDB w celu globalnego dystrybuowania danych. Po wybraniu domyślnego poziomu spójności dla konta usługi Azure Cosmos DB można skojarzyć co najmniej jeden region świadczenia usługi Azure (w zależności od potrzeb w zakresie dystrybucji globalnej). Aby zapewnić wysoką dostępność i ciągłość działania, zawsze zalecamy uruchamianie w co najmniej 2 regionach. Zapoznaj się z poradami dotyczącymi optymalizowania kosztów wdrożeń w wielu regionach w usłudze Azure Cosmos DB.
Ustawianie poziomu spójności
Usługa Azure Cosmos DB oferuje 5 dobrze zdefiniowanych poziomów spójności. Aby dowiedzieć się więcej o mapowaniu między poziomami spójności bazy danych MongoDB i usługi Azure Cosmos DB, przeczytaj poziomy spójności i interfejsy API usługi Azure Cosmos DB. Domyślny poziom spójności to poziom spójności sesji. Zmiana poziomu spójności jest opcjonalna i można ją zoptymalizować pod kątem aplikacji. Aby zmienić poziom spójności przy użyciu witryny Azure Portal:
- Przejdź do bloku Domyślna spójność w obszarze Ustawienia.
- Wybieranie poziomu spójności
Większość użytkowników pozostawia swój poziom spójności na domyślnym ustawieniu spójności sesji. Istnieją jednak kompromisy w zakresie dostępności i wydajności dla różnych poziomów spójności.
Łączenie lub przełączanie aplikacji jednorazowej
Przetwarzanie przecinania lub łączenia aplikacji umożliwia przełączenie aplikacji w celu korzystania z usługi Azure Cosmos DB po zakończeniu migracji. Wykonaj poniższe kroki:
- W nowym oknie zaloguj się do witryny Azure Portal.
- W witrynie Azure Portal w okienku po lewej stronie otwórz menu Wszystkie zasoby i znajdź konto usługi Azure Cosmos DB, do którego zostały zmigrowane dane.
- Otwórz blok Parametry połączenia. Prawe okienko zawiera wszystkie informacje potrzebne do pomyślnego połączenia z kontem.
- Użyj informacji o połączeniu w konfiguracji aplikacji (lub innych odpowiednich miejscach), aby odzwierciedlić interfejs API usługi Azure Cosmos DB dla bazy danych MongoDB w aplikacji.
Aby uzyskać więcej informacji, zobacz stronę Łączenie aplikacji MongoDB z usługą Azure Cosmos DB .
Dostrajanie w celu uzyskania optymalnej wydajności
Jednym z wygodnych faktów dotyczących indeksowania, globalnej dystrybucji i spójności — wszystkie te elementy można łatwo skonfigurować i ponownie skonfigurować zgodnie z potrzebami. Dlatego po zakończeniu migracji jednorazowej aplikacji zalecamy monitorowanie wydajności aplikacji i dostosowanie tych ustawień zgodnie z potrzebami w celu spełnienia wymagań aplikacji.
Następne kroki
- Próbujesz zaplanować pojemność migracji do usługi Azure Cosmos DB?
- Jeśli wiesz, ile rdzeni wirtualnych i serwerów znajduje się w istniejącym klastrze bazy danych, przeczytaj o szacowaniu jednostek żądań przy użyciu rdzeni wirtualnych lub procesorów wirtualnych
- Jeśli znasz typowe stawki żądań dla bieżącego obciążenia bazy danych, przeczytaj o szacowaniu jednostek żądań przy użyciu planisty pojemności usługi Azure Cosmos DB
- Łączenie aplikacji bazy danych MongoDB z usługą Azure Cosmos DB
- Nawiązywanie połączenia z kontem usługi Azure Cosmos DB przy użyciu programu Studio 3T
- Jak globalnie dystrybuować odczyty przy użyciu interfejsu API usługi Azure Cosmos DB dla bazy danych MongoDB
- Wygasanie danych za pomocą interfejsu API usługi Azure Cosmos DB dla bazy danych MongoDB
- Poziomy spójności w usłudze Azure Cosmos DB
- Indeksowanie w usłudze Azure Cosmos DB
- Jednostki żądania w usłudze Azure Cosmos DB