Sandboxes
Kusto kan sandboxes uitvoeren voor specifieke stromen die moeten worden uitgevoerd in een veilige en geïsoleerde omgeving. Voorbeelden van deze stromen zijn door de gebruiker gedefinieerde scripts die worden uitgevoerd met behulp van de Python-invoegtoepassing of de R-invoegtoepassing.
Sandboxes worden lokaal uitgevoerd (wat betekent dat de verwerking dicht bij de gegevens wordt uitgevoerd), zonder extra latentie voor externe aanroepen.
Vereisten en beperkingen
- Sandboxes die worden uitgevoerd op VM-grootten die geneste virtualisatie ondersteunen , worden geïmplementeerd met behulp van Hyper-V-technologie en hebben geen beperkingen.
- Sandboxes die worden uitgevoerd op VM-grootten die geen ondersteuning bieden voor geneste virtualisatie , worden geïmplementeerd met behulp van een eigen verouderde technologie en zijn onderhevig aan enkele beperkingen.
- De installatiekopie voor het uitvoeren van de sandboxes wordt geïmplementeerd op elk clusterknooppunt en vereist toegewezen SSD-ruimte om uit te voeren.
- De geschatte grootte ligt tussen 10 en 20 GB.
- Dit is van invloed op de gegevenscapaciteit van het cluster en kan van invloed zijn op de kosten van het cluster.
Runtime
- Een queryoperator in de sandbox kan een of meer sandboxes gebruiken voor de uitvoering ervan.
- Een sandbox wordt slechts gebruikt voor één query en wordt verwijderd zodra die query is voltooid.
- Wanneer een knooppunt opnieuw wordt opgestart, bijvoorbeeld als onderdeel van een service-upgrade, worden alle actieve sandboxes op het knooppunt verwijderd.
- Elk knooppunt onderhoudt een vooraf gedefinieerd aantal sandboxes dat gereed is voor het uitvoeren van binnenkomende aanvragen.
- Zodra een sandbox wordt gebruikt, wordt er automatisch een nieuwe beschikbaar gesteld om deze te vervangen.
- Als er geen vooraf toegewezen sandboxes beschikbaar zijn voor een queryoperator, wordt deze beperkt totdat er nieuwe sandboxes beschikbaar zijn. Zie Fouten voor meer informatie. Nieuwe sandboxtoewijzing kan maximaal 10-15 seconden per sandbox duren, afhankelijk van de SKU en beschikbare resources op het gegevensknooppunt.
Sandbox-parameters
Sommige parameters kunnen worden beheerd met behulp van een sandbox-beleid op clusterniveau, voor elk type sandbox.
- Aantal sandboxes per knooppunt: Het aantal sandboxes per knooppunt is beperkt.
- Aanvragen die worden gedaan wanneer er geen beschikbare sandbox is, worden beperkt.
- Initialiseren bij opstarten: als dit is ingesteld
false
op (standaard), worden sandboxes op een knooppunt vertraagd geïnitialiseerd, de eerste keer dat een query een sandbox vereist voor de uitvoering. Als dit niet is ingesteld optrue
, worden sandboxes geïnitialiseerd als onderdeel van het opstarten van de service.- Dit betekent dat de eerste uitvoering van een invoegtoepassing die gebruikmaakt van sandboxes op een knooppunt een korte opwarmperiode omvat.
- CPU: De maximale CPU-snelheid die een sandbox kan gebruiken van de processors van de host is beperkt (standaard is
50%
).- Wanneer de limiet is bereikt, wordt het CPU-gebruik van de sandbox beperkt, maar wordt de uitvoering voortgezet.
- Geheugen: De maximale hoeveelheid RAM die een sandbox van het RAM-geheugen van de host kan gebruiken, is beperkt.
- Het standaardgeheugen voor Hyper-V-technologie is 1 GB en voor verouderde sandboxes 20 GB.
- Het bereiken van de limiet resulteert in beëindiging van de sandbox en een fout bij het uitvoeren van query's.
Sandbox-beperkingen
- Netwerk: Een sandbox kan niet communiceren met resources op de virtuele machine (VM) of daarbuiten.
- Een sandbox kan geen interactie hebben met een andere sandbox.
Notitie
De resources die met sandbox worden gebruikt, zijn niet alleen afhankelijk van de grootte van de gegevens die worden verwerkt als onderdeel van de aanvraag, maar ook van de logica die wordt uitgevoerd in de sandbox en de implementatie van bibliotheken die door de sandbox worden gebruikt.
Voor de python
invoegtoepassingen en r
betekent de laatste bijvoorbeeld het door de gebruiker verstrekte script en de Python- of R-bibliotheken die tijdens runtime worden gebruikt.
Fouten
ErrorCode | Status | Bericht | Mogelijke reden |
---|---|---|---|
E_SB_QUERY_THROTTLED_ERROR | TooManyRequests (429) | De query in de sandbox is afgebroken vanwege beperking. Opnieuw proberen na enige uitstel kan lukken | Er zijn geen beschikbare sandboxes op het doelknooppunt. Nieuwe sandboxes zouden over een paar seconden beschikbaar moeten zijn |
E_SB_QUERY_THROTTLED_ERROR | TooManyRequests (429) | Sandboxes van het type {kind} zijn nog niet geïnitialiseerd | Het sandbox-beleid is onlangs gewijzigd. Nieuwe sandboxes die voldoen aan het nieuwe beleid, zijn binnen enkele seconden beschikbaar |
InternalServiceError (520) | De query in de sandbox is afgebroken vanwege een fout bij het initialiseren van sandboxes | Een onverwachte infrastructuurfout. |
VM-grootten die geneste virtualisatie ondersteunen
De volgende tabel bevat alle moderne VM-grootten die ondersteuning bieden voor Hyper-V-sandbox-technologie.
Naam | Categorie |
---|---|
Standard_L8s_v3 | geoptimaliseerd voor opslag |
Standard_L16s_v3 | geoptimaliseerd voor opslag |
Standard_L8as_v3 | geoptimaliseerd voor opslag |
Standard_L16as_v3 | geoptimaliseerd voor opslag |
Standard_E8as_v5 | geoptimaliseerd voor opslag |
Standard_E16as_v5 | geoptimaliseerd voor opslag |
Standard_E8s_v4 | geoptimaliseerd voor opslag |
Standard_E16s_v4 | geoptimaliseerd voor opslag |
Standard_E8s_v5 | geoptimaliseerd voor opslag |
Standard_E16s_v5 | geoptimaliseerd voor opslag |
Standard_E2ads_v5 | geoptimaliseerd voor rekenkracht |
Standard_E4ads_v5 | geoptimaliseerd voor rekenkracht |
Standard_E8ads_v5 | geoptimaliseerd voor rekenkracht |
Standard_E16ads_v5 | geoptimaliseerd voor rekenkracht |
Standard_E2d_v4 | geoptimaliseerd voor rekenkracht |
Standard_E4d_v4 | geoptimaliseerd voor rekenkracht |
Standard_E8d_v4 | geoptimaliseerd voor rekenkracht |
Standard_E16d_v4 | geoptimaliseerd voor rekenkracht |
Standard_E2d_v5 | geoptimaliseerd voor rekenkracht |
Standard_E4d_v5 | geoptimaliseerd voor rekenkracht |
Standard_E8d_v5 | geoptimaliseerd voor rekenkracht |
Standard_E16d_v5 | geoptimaliseerd voor rekenkracht |
Standard_D32d_v4 | geoptimaliseerd voor rekenkracht |
Feedback
https://aka.ms/ContentUserFeedback.
Binnenkort beschikbaar: In de loop van 2024 zullen we GitHub-problemen geleidelijk uitfaseren als het feedbackmechanisme voor inhoud en deze vervangen door een nieuw feedbacksysteem. Zie voor meer informatie:Feedback verzenden en weergeven voor