Piaskownice
Dotyczy: ✅Azure Data Explorer
Usługa Kusto może uruchamiać piaskownice dla określonych przepływów, które muszą być uruchamiane w bezpiecznym i izolowanym środowisku. Przykłady tych przepływów to skrypty zdefiniowane przez użytkownika uruchamiane przy użyciu wtyczki języka Python lub wtyczki języka R.
Piaskownice są uruchamiane lokalnie (co oznacza, że przetwarzanie odbywa się blisko danych), bez dodatkowego opóźnienia dla wywołań zdalnych.
Wymagania wstępne i ograniczenia
- Piaskownice muszą działać na rozmiarach maszyn wirtualnych obsługujących wirtualizację zagnieżdżonych, które zaimplementowano przy użyciu technologii Hyper-V i nie mają żadnych ograniczeń.
- Obraz przedstawiający uruchamianie piaskownic jest wdrażany w każdym węźle klastra i wymaga dedykowanego miejsca na dysku SSD do uruchomienia.
- Szacowany rozmiar wynosi od 10 do 20 GB.
- Ma to wpływ na pojemność danych klastra i może mieć wpływ na koszt klastra.
Środowisko uruchomieniowe
- Operator zapytania w trybie piaskownicy może używać co najmniej jednej piaskownicy do wykonywania.
- Piaskownica jest używana tylko dla pojedynczego zapytania i jest usuwana po zakończeniu tego zapytania.
- Po ponownym uruchomieniu węzła, na przykład w ramach uaktualnienia usługi, wszystkie uruchomione piaskownice na nim zostaną usunięte.
- Każdy węzeł obsługuje wstępnie zdefiniowaną liczbę piaskownic, które są gotowe do uruchamiania żądań przychodzących.
- Po użyciu piaskownicy zostanie automatycznie udostępniona nowa, aby ją zamienić.
- Jeśli nie ma wstępnie przydzielonych piaskownic do obsługi operatora zapytania, będzie ona ograniczana do momentu udostępnienia nowych piaskownic. Aby uzyskać więcej informacji, zobacz Błędy. Nowa alokacja piaskownicy może potrwać do 10–15 sekund na piaskownicę, w zależności od jednostki SKU i dostępnych zasobów w węźle danych.
Parametry piaskownicy
Niektóre parametry można kontrolować przy użyciu zasad piaskownicy na poziomie klastra dla każdego rodzaju piaskownicy.
- Liczba piaskownic na węzeł: liczba piaskownic na węzeł jest ograniczona.
- Żądania, które są wysyłane, gdy nie ma dostępnej piaskownicy, zostaną ograniczone.
- Zainicjuj przy uruchamianiu: jeśli ustawiono
false
wartość (ustawienie domyślne), piaskownice są inicjowane z opóźnieniem w węźle, po raz pierwszy zapytanie wymaga piaskownicy do jego wykonania. W przeciwnym razie, jeśli ustawiono wartośćtrue
, piaskownice są inicjowane w ramach uruchamiania usługi.- Oznacza to, że pierwsze wykonanie wtyczki korzystającej z piaskownic w węźle będzie zawierać krótki okres rozgrzewki.
- Procesor CPU: Maksymalna szybkość procesora CPU, z których może korzystać piaskownica procesorów hosta, jest ograniczona (wartość domyślna to
50%
).- Po osiągnięciu limitu użycie procesora CPU piaskownicy jest ograniczane, ale wykonywanie jest kontynuowane.
- Pamięć: Maksymalna ilość pamięci RAM, którą piaskownica może zużywać pamięć RAM hosta, jest ograniczona.
- Domyślna pamięć dla technologii Hyper-V to 1 GB, a starsze piaskownice — 20 GB.
- Osiągnięcie limitu powoduje zakończenie piaskownicy i błąd wykonywania zapytania.
Ograniczenia piaskownicy
- Sieć: piaskownica nie może wchodzić w interakcje z żadnym zasobem na maszynie wirtualnej ani poza nią.
- Piaskownica nie może wchodzić w interakcje z inną piaskownicą.
Uwaga
Zasoby używane w piaskownicy zależą nie tylko od rozmiaru przetwarzanych danych w ramach żądania, ale także od logiki uruchamianej w piaskownicy oraz implementacji bibliotek używanych przez nią.
Na przykład w przypadku python
wtyczek i r
ten ostatni oznacza skrypt dostarczony przez użytkownika i biblioteki języka Python lub R używane w czasie wykonywania.
Błędy
ErrorCode | Stan | Komunikat | Potencjalna przyczyna |
---|---|---|---|
E_SB_QUERY_THROTTLED_ERROR | TooManyRequests (429) | Kwerenda w trybie piaskownicy została przerwana z powodu ograniczania przepustowości. Ponowienie próby po pewnym wycofaniu może zakończyć się powodzeniem | W węźle docelowym nie ma dostępnych piaskownic. Nowe piaskownice powinny być dostępne w ciągu kilku sekund |
E_SB_QUERY_THROTTLED_ERROR | TooManyRequests (429) | Piaskownice rodzaju "{kind}" nie zostały jeszcze zainicjowane | Zasady piaskownicy zostały ostatnio zmienione. Nowe piaskownice przestrzegające nowych zasad staną się dostępne w ciągu kilku sekund |
InternalServiceError (520) | Zapytanie w trybie piaskownicy zostało przerwane z powodu błędu podczas inicjowania piaskownic | Nieoczekiwana awaria infrastruktury. |
Rozmiary maszyn wirtualnych obsługujące wirtualizację zagnieżdżonych
W poniższej tabeli wymieniono wszystkie nowoczesne rozmiary maszyn wirtualnych, które obsługują technologię piaskownicy funkcji Hyper-V.
Nazwa/nazwisko | Kategoria |
---|---|
Standard_L8s_v3 | zoptymalizowane pod kątem magazynu |
Standard_L16s_v3 | zoptymalizowane pod kątem magazynu |
Standard_L8as_v3 | zoptymalizowane pod kątem magazynu |
Standard_L16as_v3 | zoptymalizowane pod kątem magazynu |
Standard_E8as_v5 | zoptymalizowane pod kątem magazynu |
Standard_E16as_v5 | zoptymalizowane pod kątem magazynu |
Standard_E8s_v4 | zoptymalizowane pod kątem magazynu |
Standard_E16s_v4 | zoptymalizowane pod kątem magazynu |
Standard_E8s_v5 | zoptymalizowane pod kątem magazynu |
Standard_E16s_v5 | zoptymalizowane pod kątem magazynu |
Standard_E2ads_v5 | zoptymalizowane pod kątem obliczeń |
Standard_E4ads_v5 | zoptymalizowane pod kątem obliczeń |
Standard_E8ads_v5 | zoptymalizowane pod kątem obliczeń |
Standard_E16ads_v5 | zoptymalizowane pod kątem obliczeń |
Standard_E2d_v4 | zoptymalizowane pod kątem obliczeń |
Standard_E4d_v4 | zoptymalizowane pod kątem obliczeń |
Standard_E8d_v4 | zoptymalizowane pod kątem obliczeń |
Standard_E16d_v4 | zoptymalizowane pod kątem obliczeń |
Standard_E2d_v5 | zoptymalizowane pod kątem obliczeń |
Standard_E4d_v5 | zoptymalizowane pod kątem obliczeń |
Standard_E8d_v5 | zoptymalizowane pod kątem obliczeń |
Standard_E16d_v5 | zoptymalizowane pod kątem obliczeń |
Standard_D32d_v4 | zoptymalizowane pod kątem obliczeń |