Udostępnij za pośrednictwem


Autoskaluj dla usługi Azure API for FHIR

Usługa Azure API for FHIR jako usługa zarządzana umożliwia klientom utrwalanie danych zgodnych ze standardem Fast Healthcare Interoperability Resources (FHIR®) i bezpieczne wymienianie ich za pośrednictwem interfejsu API usługi. Aby obsłużyć różne obciążenia transakcji, klienci mogą używać skalowania ręcznego lub automatycznego skalowania.

Interfejs API platformy Azure dla standardu FHIR zapewnia możliwości skalowania na poziomie bazy danych i zasobów obliczeniowych.

Automatyczne skalowanie na poziomie bazy danych

Domyślnie interfejs API platformy Azure dla standardu FHIR jest ustawiany na ręczne skalowanie bazy danych. Ta opcja działa dobrze, gdy obciążenia transakcji są znane i spójne. Klienci mogą dostosować przepływność RU/s za pośrednictwem portalu do 100 000 i przesłać żądanie zwiększenia limitu.

Funkcja automatycznego skalowania jest przeznaczona do skalowania zasobów platformy Azure, w tym przepływności bazy danych automatycznie zgodnie z obciążeniami, eliminując możliwe wąskie gardła w warstwie danych.

Dowiedz się, jak włączyć skalowanie automatyczne na poziomie bazy danych przy użyciu następnych sekcji

Wskazówki dotyczące włączania autoskalowania

Ogólnie rzecz biorąc, klienci powinni rozważyć skalowanie automatyczne, gdy ich obciążenia różnią się znacznie i są nieprzewidywalne.

Aby włączyć funkcję autoskalowania, klient musi utworzyć jednorazowy bilet pomocy technicznej, aby zażądać go za pośrednictwem Azure Portal. Zespół pomocy technicznej firmy Microsoft włącza funkcję automatycznego skalowania na podstawie priorytetu pomocy technicznej.

Uwaga

Funkcja automatycznego skalowania nie jest dostępna w Azure Portal.

Autoskaluj dla jednostek RU/s

Po włączeniu automatycznego skalowania system oblicza i ustawia wartość początkową Tmax . Skalowalność jest określana przez maksymalną wartość przepływności RU/s lub Tmax, i skaluje się między wartościami 0.1 *Tmax (lub 10% Tmax) i Tmax RU/s. Zwiększa się Tmax automatycznie wraz ze wzrostem całkowitego rozmiaru danych. Aby zapewnić maksymalną skalowalność, Tmax wartość powinna być zachowywana zgodnie z rzeczywistymi wartościami. Klienci mogą jednak zażądać zmiany wartości na wartość z zakresu od 10% do 100% Tmax wartości.

Możesz zwiększyć wartość maksymalną RU/s lub Tmax i przejść tak wysoko, jak usługa obsługuje. Gdy usługa jest zajęta, przepływność RU/s jest skalowana w górę Tmax do wartości. Gdy usługa jest bezczynna, przepływność RU/s jest skalowana w dół do 10%. Tmax

Możesz również zmniejszyć wartość maksymalną RU/s lub Tmax wartość. Gdy obniżysz wartość maksymalną RU/s, minimalną wartością, którą można ustawić, jest: MAX (4000, highest max RU/s ever provisioned / 10, current storage in GB * 400), zaokrąglona do najbliższej wartości 1000 RU/s.

  • Przykład 1: Masz 1 GB danych, a najwyższa aprowizowana RU/s wartość to 10 000. Wartość minimalna to Max (4000, 10 000/10, 1x400) = 4000. Używana jest pierwsza liczba 4000.
  • Przykład 2: Masz 20 GB danych, a najwyższa aprowizowana RU/s wartość to 100 000. Wartość minimalna to Max (4000, 100 000/10, 20x400) = 10 000. Używana jest druga liczba 100 000/10 =10 000.
  • Przykład 3: Masz 80 GB danych, a najwyższa aprowizowana wartość RU/s to 300 000. Wartość minimalna to Max (4000, 300 000/10, 80x400) = 32 000. Jest używana trzecia liczba 80x400=32 000.

Wartość maksymalną RU/s lub Tmax wartość można dostosować za pośrednictwem portalu, jeśli jest to prawidłowa liczba i nie większa niż 100 000 RU/s. Możesz utworzyć bilet pomocy technicznej, aby zażądać Tmax wartości większej niż 100 000.

Uwaga

Wraz ze wzrostem magazynu danych system automatycznie zwiększy maksymalną przepływność do następnego najwyższego ru/s, który może obsługiwać ten poziom magazynu.

Autoskalowanie na poziomie obliczeń

Zasady skalowania automatycznego zdefiniowane dla poziomu obliczeniowego usługi FHIR obejmują:

  • Wyzwalacz skalowania

Wyzwalacz skalowania opisuje, kiedy zostanie przeprowadzone skalowanie usługi. Warunki zdefiniowane w wyzwalaczu są okresowo sprawdzane w celu określenia, czy usługa powinna być skalowana, czy nie. Wszystkie wyzwalacze, które są obecnie obsługiwane, to średni procesor CPU, maksymalny wątek procesu roboczego, średnia wartość LogWrite, średnia liczba operacji we/wy danych.

  • Mechanizm skalowania

Mechanizm skalowania jest stosowany, jeśli sprawdzanie wyzwalacza określa, że skalowanie jest konieczne. Ponadto wyzwalacz skalowania nie zostanie ponownie oceniony, dopóki interwał skalowania nie wygaśnie, co jest ustawione na minutę dla interfejsu API platformy Azure dla standardu FHIR.

Aby zapewnić najlepszy możliwy wynik, zalecamy klientom stopniowe zwiększanie szybkości żądań w celu dopasowania do oczekiwanej szybkości wypychania, a nie wypychania wszystkich żądań jednocześnie.

Często zadawane pytania

Jak oszacować wymaganą przepływność ru/s?

Rozmiar danych jest jednym z kilku czynników używanych do obliczania łącznej przepływności RU/s wymaganych do ręcznego skalowania i automatycznego skalowania. Rozmiar danych można znaleźć przy użyciu opcji menu Metryki w obszarze Monitorowanie. Uruchom nowy wykres i wybierz pozycję Rozmiar kolekcji usługi Cosmos DB w polu listy rozwijanej Metryka i Wartość maksymalna w polu "Agregacja".

Zrzut ekranu przedstawiający metrics_new_chart

W wybranym przedziale czasu powinien być widoczny maksymalny rozmiar zbierania danych. W razie potrzeby zmień wartość "Zakres czasu", na przykład z "Ostatnie 30 minut" na "Ostatnie 48 godzin".

Zrzut ekranu przedstawiający cosmosdb_collection_size

Użyj formuły, aby obliczyć wymagane jednostki RU/s.

  • Skalowanie ręczne: magazyn w GB * 40
  • Autoskalowanie: magazyn w GB * 400

Należy pamiętać, że jest to tylko oszacowanie na podstawie rozmiaru danych i że istnieją inne czynniki wpływające na wymagane jednostki RU/s.

Włączono autoskalowanie, jak mogę przeprowadzić migrację do skalowania ręcznego?

Bilet pomocy technicznej jest wymagany do zmiany skalowania automatycznego na skalowanie ręczne i określenia przepływności RU/s. Minimalną wartością skalowania ręcznego, którą można ustawić, jest: MAX (400, highest max RU/s ever provisioned / 100, current storage in GB * 40), zaokrąglona do najbliższej wartości 1000 RU/s. Liczby użyte w tym miejscu różnią się od tych używanych w autoskalowanie.

Po zakończeniu zmiany nowe stawki rozliczeniowe są oparte na ręcznej skali.

Jaki jest wpływ kosztów autoskalowania?

Funkcja automatycznego skalowania wiąże się z kosztami z powodu automatycznego zarządzania aprowizowaną jednostką przepływności. Rzeczywiste koszty zależą od użycia godzinowego, ale należy pamiętać, że istnieją minimalne koszty wynoszące 10% dla zarezerwowanej Tmax przepływności RU/s. Jednak ten wzrost kosztów nie ma zastosowania do kosztów magazynu i środowiska uruchomieniowego. Aby uzyskać informacje o cenach, zobacz Cennik usługi Azure API for FHIR.

Następne kroki

W tym dokumencie przedstawiono funkcję automatycznego skalowania dla usługi Azure API for FHIR. Aby zapoznać się z omówieniem usługi Azure API for FHIR, zobacz

FHIR® jest zastrzeżonym znakiem towarowym HL7 i jest używany z pozwoleniem HL7.