Tworzenie kontenerów i baz danych usługi Azure Cosmos DB z przepływnością autoskalowania

DOTYCZY: Nosql Mongodb Cassandra Gremlin Tabeli

W usłudze Azure Cosmos DB można skonfigurować standardową (ręczną) lub aprowizowaną przepływność autoskalowania w bazach danych i kontenerach. Automatyczne skalowanie aprowizowanej przepływności w usłudze Azure Cosmos DB umożliwia automatyczne i natychmiastowe skalowanie przepływności (RU/s) bazy danych lub kontenera. Przepływność jest skalowana na podstawie użycia bez wpływu na dostępność, opóźnienie, przepływność lub wydajność obciążenia.

Aprowizowana przepływność autoskalowania jest odpowiednia dla obciążeń o znaczeniu krytycznym, które mają zmienne lub nieprzewidywalne wzorce ruchu, i wymagają umów SLA na dużą wydajność i skalę. W tym artykule opisano zalety i przypadki użycia przepływności aprowizowanej przez autoskalowanie.

Zalety autoskalowania

Bazy danych i kontenery usługi Azure Cosmos DB skonfigurowane z aprowizowaną przepływnością autoskalowania mają następujące korzyści:

  • Proste: autoskalowanie eliminuje złożoność zarządzania jednostkami RU/s przy użyciu niestandardowego skryptu lub ręcznego skalowania pojemności.

  • Skalowalne: bazy danych i kontenery automatycznie skalują aprowizowaną przepływność zgodnie z potrzebami. Nie ma żadnych zakłóceń w połączeniach klienckich, aplikacjach ani wpływie na umowy SLA usługi Azure Cosmos DB.

  • Ekonomiczne: autoskalowanie pomaga zoptymalizować użycie jednostek RU/s i użycie kosztów przez skalowanie w dół, gdy nie jest używane. Płacisz tylko za zasoby, których potrzebują obciążenia na godzinę. Ze wszystkich godzin w miesiącu, jeśli ustawisz maksymalną wartość RU/s(Tmax) autoskalowania i użyjesz pełnej ilości Tmax przez 66% godzin lub mniej, zapiszesz autoskalowanie. Aby dowiedzieć się więcej, zobacz artykuł Jak wybrać między standardową (ręczną) i aprowizowaną przepływnością autoskalowania.

  • Wysoka dostępność: bazy danych i kontenery korzystające z automatycznego skalowania używają tego samego globalnie rozproszonego, odpornego na uszkodzenia, wysoce dostępnego zaplecza usługi Azure Cosmos DB w celu zapewnienia trwałości danych i wysokiej dostępności.

Przypadki użycia autoskalowania

Przypadki użycia autoskalowania obejmują:

  • Zmienne lub nieprzewidywalne obciążenia: jeśli obciążenia mają zmienne lub nieprzewidywalne skoki użycia, autoskalowanie pomaga automatycznie skalować w górę i w dół na podstawie użycia. Przykłady obejmują witryny internetowe handlu detalicznego, które mają różne wzorce ruchu w zależności od sezonowości; Obciążenia IOT, które mają skoki w różnych porach dnia; aplikacje biznesowe, które widzą szczytowe użycie kilka razy w miesiącu lub roku i nie tylko. W przypadku automatycznego skalowania nie trzeba już ręcznie aprowizować pod kątem szczytowej lub średniej pojemności.

  • Nowe aplikacje: jeśli tworzysz nową aplikację i nie masz pewności co do potrzebnej przepływności (RU/s), autoskalowanie ułatwia rozpoczęcie pracy. Możesz zacząć od punktu wejścia autoskalowania 100–1000 RU/s, monitorować użycie i określać odpowiednie jednostki RU/s w czasie.

  • Rzadko używane aplikacje: jeśli masz aplikację, która jest używana tylko przez kilka godzin kilka razy dziennie, tydzień lub miesiąc — na przykład aplikacja o niskim woluminie/witryna internetowa/blog — automatyczne skalowanie dostosowuje pojemność do obsługi szczytowego użycia i skalowania w dół, gdy się skończy.

  • Obciążenia programistyczne i testowe: jeśli ty lub twój zespół korzystasz z baz danych i kontenerów usługi Azure Cosmos DB w godzinach pracy, ale nie potrzebujesz ich w nocy lub weekendach, autoskalowanie pomaga zaoszczędzić koszty, skalując w dół do minimum, gdy nie są używane.

  • Zaplanowane obciążenia produkcyjne/zapytania: jeśli masz serię zaplanowanych żądań, operacji lub zapytań, które mają być uruchamiane w okresach bezczynności, możesz to łatwo wykonać za pomocą skalowania automatycznego. Gdy musisz uruchomić obciążenie, przepływność automatycznie skaluje się do wymaganej wartości i skaluje w dół.

Tworzenie niestandardowego rozwiązania tych problemów nie tylko wymaga ogromnego czasu, ale także wprowadza złożoność konfiguracji lub kodu aplikacji. Autoskalowanie umożliwia korzystanie z powyższych scenariuszy i eliminuje potrzebę niestandardowego lub ręcznego skalowania pojemności.

Jak działa aprowizowana przepływność autoskalowania

Podczas konfigurowania kontenerów i baz danych za pomocą autoskalowania należy określić maksymalną wymaganą przepływność Tmax . Usługa Azure Cosmos DB skaluje przepływność T , taką jak 0.1*Tmax <= T <= Tmax. Jeśli na przykład ustawisz maksymalną przepływność na 20 000 RU/s, przepływność będzie skalowana między 2000 a 20 000 RU/s. Ponieważ skalowanie jest automatyczne i natychmiastowe, w dowolnym momencie można zużyć do aprowizowania Tmax bez opóźnień.

Każda godzina będzie naliczana opłata za najwyższą przepływność T , do której system jest skalowany w ciągu godziny.

Punkt wejścia dla maksymalnej przepływności Tmax autoskalowania rozpoczyna się od 1000 RU/s, który skaluje się między 100 a 1000 RU/s. Można ustawić Tmax przyrosty 1000 RU/s i zmienić wartość w dowolnym momencie.

Włączanie automatycznego skalowania w istniejących zasobach

Użyj witryny Azure Portal, interfejsu wiersza polecenia lub programu PowerShell, aby włączyć skalowanie automatyczne w istniejącej bazie danych lub kontenerze. W dowolnym momencie możesz przełączać się między aprowizowaną przepływnością autoskalowania i standardową (ręczną). Aby uzyskać więcej informacji, zapoznaj się z tą dokumentacją , aby uzyskać więcej informacji.

Limity przepływności i magazynowania dla autoskalowania

W przypadku dowolnej wartości Tmaxbaza danych lub kontener może przechowywać łącznie 0.1 * Tmax GBwartość . Po osiągnięciu tej ilości miejsca do magazynowania maksymalna wartość RU/s zostanie automatycznie zwiększona na podstawie nowej wartości miejsca do magazynowania, bez wpływu na aplikację.

Jeśli na przykład zaczniesz od maksymalnej wartości RU/s wynoszącej 50 000 RU/s (skaluje się między 5000 a 50 000 RU/s), możesz przechowywać maksymalnie 5000 GB danych. Jeśli przekroczysz 5000 GB — na przykład magazyn wynosi teraz 6000 GB, nowa maksymalna liczba JEDNOSTEK RU/s stanie się 60 000 RU/s (skala między 6000 a 60 000 RU/s).

Jeśli używasz przepływności na poziomie bazy danych z autoskalowaniem, możesz mieć 25 pierwszych kontenerów współużytkujących maksymalną wartość 1000 RU/s autoskalowania (skalowanie między 100– 1000 RU/s), o ile nie przekraczasz 100 GB magazynu. Aby uzyskać więcej informacji, zapoznaj się z tą dokumentacją.

Porównanie — kontenery skonfigurowane przy użyciu przepływności ręcznej i automatycznej skalowania

Aby uzyskać więcej informacji, zobacz tę dokumentację dotyczącą wybierania między standardową (ręczną) i automatyczną przepływnością.

Kontenery ze standardową (ręczną) przepływnością Kontenery z przepływnością autoskalowania
Aprowizowana przepływność (RU/s) Ręcznie zainicjowano aprowizację. Automatyczne i natychmiastowe skalowanie na podstawie wzorców użycia obciążenia.
Ograniczanie szybkości żądań/operacji (429) Może się zdarzyć, jeśli użycie przekroczy aprowizowaną pojemność. Nie będzie się zdarzyć, jeśli używasz jednostek RU/s w skonfigurowanym zakresie przepływności autoskalowania.
Planowanie pojemności Należy zaplanować pojemność i aprowizować dokładną potrzebną przepływność. System automatycznie zajmuje się planowaniem pojemności i zarządzaniem pojemnością.
Cennik Płacisz za ręcznie aprowizowaną jednostkę RU/s na godzinę przy użyciu standardowej (ręcznej ) stawki RU/s za godzinę. Płacisz za godzinę za najwyższą liczbę jednostek RU/s, które system skalował w górę do godziny.

W przypadku kont z pojedynczym regionem zapisu płacisz za jednostki RU/s używane co godzinę, korzystając z stawki ru/s skalowania automatycznego na godzinę.

W przypadku kont z wieloma regionami zapisu nie są naliczane dodatkowe opłaty za skalowanie automatyczne. Płacisz za przepływność używaną co godzinę przy użyciu tej samej stawki ru/s zapisu w wielu regionach na godzinę.
Najlepsze rozwiązanie dla typów obciążeń Przewidywalne i stabilne obciążenia Nieprzewidywalne i zmienne obciążenia

Następne kroki