Sdílet prostřednictvím


Sandboxy

Platí pro: ✅Azure Data Explorer

Kusto může spouštět sandboxy pro konkrétní toky, které se musí spouštět v zabezpečeném a izolovaném prostředí. Příklady těchto toků jsou uživatelsky definované skripty, které se spouští pomocí modulu plug-in Pythonu nebo modulu plug-in R.

Sandboxy se spouští místně (což znamená, že zpracování se provádí blízko dat) bez další latence pro vzdálená volání.

Předpoklady a omezení

Šablona běhového prostředí

  • Operátor dotazu v izolovaném prostoru (sandbox) může pro spuštění použít jeden nebo více sandboxů.
    • Sandbox se používá jenom pro jeden dotaz a po dokončení dotazu se vyřadí.
    • Když se uzel restartuje, například jako součást upgradu služby, všechny spuštěné sandboxy na něm budou uvolněny.
  • Každý uzel udržuje předdefinovaný počet sandboxů, které jsou připravené pro spouštění příchozích požadavků.
    • Po použití sandboxu se automaticky zpřístupní nový, který ho nahradí.
  • Pokud nejsou k dispozici žádné předem přidělené sandboxy pro obsluhu operátoru dotazu, omezí se, dokud nebudou k dispozici nové sandboxy. Další informace najdete v tématu Chyby. Nové přidělení sandboxu může trvat až 10 až 15 sekund na sandbox v závislosti na skladové poště a dostupných prostředcích na datovém uzlu.

Parametry sandboxu

Některé parametry je možné řídit pomocí zásad sandboxu na úrovni clusteru pro každý druh sandboxu.

  • Počet sandboxů na uzel: Počet sandboxů na uzel je omezený.
    • Požadavky, které se provádějí v případě, že není k dispozici sandbox, se omezí.
  • Inicializace při spuštění: pokud je nastavená na false (výchozí), jsou sandboxy na uzlu opožděně inicializovány, při prvním spuštění dotazu vyžaduje sandbox. Jinak, pokud je nastavena na true, sandboxy se inicializují jako součást spuštění služby.
    • To znamená, že první spuštění modulu plug-in, který používá sandboxy na uzlu, bude obsahovat krátkou dobu zahřátí.
  • CPU: Maximální rychlost procesoru, kterou sandbox může využívat procesory hostitele, je omezená (výchozí hodnota je 50%).
    • Po dosažení limitu dojde k omezení využití procesoru sandboxu, ale provádění bude pokračovat.
  • Paměť: Maximální velikost paměti RAM, kterou sandbox může využívat, je omezená paměť RAM hostitele.
    • Výchozí paměť pro technologii Hyper-V je 1 GB a pro starší sandboxy 20 GB.
    • Dosažení limitu způsobí ukončení sandboxu a chybu spuštění dotazu.

Omezení sandboxu

  • Síť: Sandbox nemůže komunikovat s žádným prostředkem na virtuálním počítači nebo mimo něj.
    • Sandbox nemůže komunikovat s jiným sandboxem.

Poznámka:

Prostředky používané s sandboxem závisejí nejen na velikosti zpracovávaných dat v rámci požadavku, ale také na logice, která se spouští v sandboxu, a na implementaci knihoven, které ho používají. Například pro moduly python plug-in a r moduly plug-in znamená skript poskytovaný uživatelem a knihovny Pythonu nebo R, které využívá za běhu.

Chyby

ErrorCode Stav Zpráva Potenciální důvod
E_SB_QUERY_THROTTLED_ERROR TooManyRequests (429) Dotaz v izolovaném prostoru (sandbox) byl přerušen kvůli omezování. Opakování po nějakém zpochybnění může proběhnout úspěšně. V cílovém uzlu nejsou k dispozici žádné sandboxy. Nové sandboxy by měly být dostupné během několika sekund.
E_SB_QUERY_THROTTLED_ERROR TooManyRequests (429) Sandboxy typu {kind} ještě nebyly inicializovány. Zásady sandboxu se nedávno změnily. Nové sandboxy, které dodržují nové zásady, budou k dispozici během několika sekund.
InternalServiceError (520) Dotaz v izolovaném prostoru (sandbox) byl přerušen kvůli chybě při inicializaci sandboxů. Neočekávaná chyba infrastruktury

Velikosti virtuálních počítačů podporující vnořenou virtualizaci

Následující tabulka uvádí všechny moderní velikosti virtuálních počítačů, které podporují technologii sandboxu Hyper-V.

Název Kategorie
Standard_L8s_v3 optimalizované pro úložiště
Standard_L16s_v3 optimalizované pro úložiště
Standard_L8as_v3 optimalizované pro úložiště
Standard_L16as_v3 optimalizované pro úložiště
Standard_E8as_v5 optimalizované pro úložiště
Standard_E16as_v5 optimalizované pro úložiště
Standard_E8s_v4 optimalizované pro úložiště
Standard_E16s_v4 optimalizované pro úložiště
Standard_E8s_v5 optimalizované pro úložiště
Standard_E16s_v5 optimalizované pro úložiště
Standard_E2ads_v5 optimalizované pro výpočty
Standard_E4ads_v5 optimalizované pro výpočty
Standard_E8ads_v5 optimalizované pro výpočty
Standard_E16ads_v5 optimalizované pro výpočty
Standard_E2d_v4 optimalizované pro výpočty
Standard_E4d_v4 optimalizované pro výpočty
Standard_E8d_v4 optimalizované pro výpočty
Standard_E16d_v4 optimalizované pro výpočty
Standard_E2d_v5 optimalizované pro výpočty
Standard_E4d_v5 optimalizované pro výpočty
Standard_E8d_v5 optimalizované pro výpočty
Standard_E16d_v5 optimalizované pro výpočty
Standard_D32d_v4 optimalizované pro výpočty