Udostępnij przez


Typ konta bezserwerowego usługi Azure Cosmos DB

W przypadku opcji cenowej usługi Azure Cosmos DB opartej tylko na używanych zasobach wybierz typ konta bezserwerowego usługi Azure Cosmos DB. W przypadku opcji bezserwerowej opłaty są naliczane tylko za jednostki żądań (RU), z których korzystają operacje bazy danych, oraz za magazyn używany przez dane. Kontenery bezserwerowe mogą obsługiwać tysiące żądań na sekundę bez minimalnej opłaty i bez wymaganego planowania wydajności.

Ważne

Czy masz jakieś opinie na temat bezserwerowych? Chcemy to usłyszeć! Możesz usunąć komunikat do zespołu bezserwerowego usługi Azure Cosmos DB: azurecosmosdbserverless@service.microsoft.com.

Każda operacja bazy danych w usłudze Azure Cosmos DB ma koszt wyrażony w jednostkach RU. Sposób naliczania opłat za ten koszt zależy od wybranego typu konta usługi Azure Cosmos DB:

  • Aprowizowana przepływność: w typie konta aprowizowanej przepływności zatwierdzasz pewną przepływność (wyrażoną w jednostkach RU na sekundę lub RU/s), która jest aprowizowana w bazach danych i kontenerach. Koszt operacji bazy danych jest następnie odliczany od liczby jednostek RU, które są dostępne co sekundę. Dla każdego okresu rozliczeniowego są naliczane opłaty za aprowizowaną przepływność.

  • Bezserwerowy: w przypadku typu konta bezserwerowego nie trzeba konfigurować aprowizowanej przepływności podczas tworzenia kontenerów na koncie usługi Azure Cosmos DB. Dla każdego okresu rozliczeniowego są naliczane opłaty za liczbę jednostek RU używanych przez operacje bazy danych.

Przypadki użycia

Opcja bezserwerowa usługi Azure Cosmos DB najlepiej pasuje do scenariuszy, w których spodziewasz się sporadycznie i nieprzewidywalnego ruchu oraz długich czasów bezczynności. Ponieważ aprowizowanie pojemności w tych typach scenariuszy nie jest wymagane i może być kosztowne, usługa Azure Cosmos DB bezserwerowa powinna być brana pod uwagę w następujących przypadkach użycia:

  • Rozpoczynasz pracę z usługą Azure Cosmos DB.
  • Uruchamiasz aplikacje, które mają jeden z następujących wzorców:
    • Wzrost, sporadycznie ruch, który jest trudny do prognozowania.
    • Niski (mniej niż 10 procent) średni stosunek ruchu do szczytu.
  • Opracowujesz, testujesz, prototypujesz lub oferujesz użytkownikom nową aplikację i nie znasz jeszcze wzorca ruchu.
  • Integrujesz się z usługą obliczeniową bezserwerową, na przykład z usługą Azure Functions.

Aby uzyskać więcej informacji, zobacz Jak wybrać między aprowizowaną przepływnością a bezserwerową.

Najlepsze rozwiązania dotyczące aplikacji wielodostępnych

Podczas projektowania aplikacji wielodostępnych w usłudze Azure Cosmos DB zalecane są dwa modele izolacji:

Klucz partycji dla każdego najemcy

W tym modelu każdy dzierżawca jest reprezentowany jako klucz logicznej partycji w kontenerze. Takie podejście:

  • Skaluje się efektywnie wraz ze wzrostem liczby najemców
  • Zmniejsza koszt dzierżawy przez udostępnianie przepływności i magazynu
  • Dobrze sprawdza się w przypadku aplikacji typu "biznes-klient" (B2C) z wieloma mniejszymi najemcami.

Aby uzyskać więcej informacji, zobacz model partition-key-per-tenant.

Konto bazy danych dla najemcy

W tym modelu każdy lokator ma dedykowane konto usługi Azure Cosmos DB. Takie podejście:

  • Zapewnia silne granice izolacji
  • Umożliwia ustawienia dla poszczególnych dzierżawców, takie jak konfiguracja regionalna, klucze zarządzane przez klienta i przywracanie do wybranego punktu w czasie
  • Działa dobrze w przypadku aplikacji biznesowych (B2B), które wymagają zróżnicowanych konfiguracji

Aby uzyskać więcej informacji, zapoznaj się z modelem database-account-per-tenant.

Uwaga / Notatka

Unikaj projektowania aplikacji wielodostępnych przy użyciu podejścia kontenera na najemcę lub bazy danych na najemcę. Te wzorce mogą powodować wyzwania związane ze skalowalnością w miarę zwiększania się bazy klientów. Zamiast tego użyj jednego z zalecanych powyżej modeli, aby zapewnić przewidywalną wydajność i efektywność kosztową.

Aby uzyskać szczegółowy przewodnik, zobacz Multi tenancy in Azure Cosmos DB (Obsługa wielu dzierżaw w usłudze Azure Cosmos DB).

Korzystanie z zasobów bezserwerowych

Usługa Azure Cosmos DB bezserwerowa to nowy typ konta w usłudze Azure Cosmos DB. Podczas tworzenia konta usługi Azure Cosmos DB można wybrać między aprowizowaną przepływnością i opcjami bezserwerowym .

Aby rozpocząć korzystanie z modelu bezserwerowego, musisz utworzyć nowe konto bezserwerowe.

Każdy kontener utworzony na koncie bezserwerowym jest kontenerem bezserwerowym. Kontenery bezserwerowe mają takie same możliwości jak kontenery utworzone w typie konta aprowizowanej przepływności. Odczytywanie, zapisywanie i wykonywanie zapytań dotyczących danych dokładnie w taki sam sposób. Jednak konto bezserwerowe i kontener bezserwerowy mają również inne specyficzne cechy:

  • Konto bezserwerowe może działać tylko w jednym regionie świadczenia usługi Azure. Po utworzeniu konta nie można dodać kolejnych regionów platformy Azure do konta bezserwerowego.
  • Aprowizowanie przepływności nie jest wymagane w kontenerze bezserwerowym, więc mają zastosowanie następujące instrukcje:
    • Nie można przekazać żadnej przepływności podczas tworzenia kontenera bezserwerowego lub zwracany jest błąd.
    • Nie można odczytać ani zaktualizować przepływności w kontenerze bezserwerowym lub zostanie zwrócony błąd.
    • Nie można utworzyć bazy danych z udostępnioną przepływnością na koncie bezserwerowym lub zostanie zwrócony błąd.
  • Kontener bezserwerowy zaczyna się od przepływności 5000 RU/s. Każda partycja fizyczna w kontenerze bezserwerowym może obsłużyć do 5000 RU/s, co oznacza, że maksymalna przepływność kontenera zależy od całkowitej liczby partycji fizycznych. Aby dowiedzieć się więcej, zobacz Wydajność bezserwerowa usługi Azure Cosmos DB.

Monitorowanie użycia

Jeśli wcześniej użyto modelu aprowizowanej przepływności usługi Azure Cosmos DB, może się okazać, że model bezserwerowy jest bardziej ekonomiczny, gdy ruch nie uzasadnia aprowizowanej pojemności. Kompromis polega na tym, że koszty stają się mniej przewidywalne, ponieważ są naliczane na podstawie liczby żądań, które przetwarza baza danych. Ze względu na brak przewidywalności w przypadku korzystania z opcji bezserwerowej ważne jest monitorowanie bieżącego zużycia.

Użycie można monitorować, wyświetlając wykres na koncie usługi Azure Cosmos DB w witrynie Azure Portal. W przypadku konta usługi Azure Cosmos DB przejdź do okienka Metryki . Na karcie Przegląd wyświetl wykres o nazwie Jednostki żądań użyty. Wykres przedstawia liczbę jednostek RU używanych przez konto przez różne okresy czasu.

Zrzut ekranu przedstawiający wykres wykorzystanych jednostek żądania.

Możesz użyć tego samego wykresu w usłudze Azure Monitor. W przypadku korzystania z usługi Azure Monitor możesz skonfigurować alerty , aby otrzymywać powiadomienia, gdy użycie jednostek RU przekroczy ustawiony próg.

Wysoka dostępność

Usługa Azure Cosmos DB bezserwerowa rozszerza obsługę wysokiej dostępności przy użyciu stref dostępności w wyznaczonych regionach. Skojarzone umowy dotyczące poziomu usług (SLA) są zgodne z zapisami w jednym regionie z konfiguracją strefy dostępności , zapewniając niezawodność wdrożeń.

Następne kroki