Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Schakelen tussen services met behulp van de vervolgkeuzelijst Versie . Meer informatie over navigatie.
Van toepassing op: ✅ Microsoft Fabric ✅ Azure Data Explorer
U kunt Python-code insluiten in Kusto Query Language-query's met behulp van de python()-invoegtoepassing. De plugin runtime hostt in een sandbox, een geïsoleerde en beveiligde Python-omgeving. De mogelijkheid van de python()-invoegtoepassing breidt de systeemeigen functionaliteit van Kusto Query Language uit met het enorme archief van OSS Python-pakketten. Met deze extensie kunt u geavanceerde algoritmen uitvoeren, zoals machine learning, kunstmatige intelligentie, statistische en tijdreeksen als onderdeel van de query.
Kusto Query Language-hulpprogramma's zijn niet handig voor het ontwikkelen en opsporen van fouten in Python-algoritmen. Ontwikkel daarom het algoritme in uw favoriete met Python geïntegreerde ontwikkelomgeving, zoals Jupyter, PyCharm, Visual Studio of Visual Studio Code. Wanneer het algoritme is voltooid, kopieert en plakt u het in KQL. Om deze werkstroom te verbeteren en te stroomlijnen, kunnen Kusto Explorer- of webgebruikersinterfaceclients worden geïntegreerd met Visual Studio Code voor het ontwerpen en opsporen van fouten in KQL inline Python-code.
Opmerking
Deze werkstroom kan alleen worden gebruikt voor het opsporen van fouten in relatief kleine invoertabellen (maximaal enkele MB). Daarom moet u mogelijk de invoer voor foutopsporing beperken. Als u een grote tabel wilt verwerken, beperkt u deze voor foutopsporing met behulp van | take, | sampleof where rand() < 0.x.
Vereiste voorwaarden
- Een Azure-abonnement. Maak een gratis Azure-account.
- Een Azure Data Explorer-cluster en -database. Een cluster en database maken.
- Installeer Python Anaconda Distribution. In Geavanceerde opties selecteert u Anaconda toevoegen aan mijn PATH-omgevingsvariabele.
- Installeer Visual Studio Code.
- Installeer de Python-extensie voor Visual Studio Code.
- Schakel de Python-invoegtoepassing in. Zie Taalextensies beheren in uw Azure Data Explorer-cluster voor meer informatie.
- Een werkruimte met een Microsoft Fabric-ingeschakelde capaciteit.
- Een database. Maak een KQL-database.
- Installeer Python Anaconda Distribution. In Geavanceerde opties selecteert u Anaconda toevoegen aan mijn PATH-omgevingsvariabele.
- Installeer Visual Studio Code.
- Installeer de Python-extensie voor Visual Studio Code.
- Schakel de Python-invoegtoepassing in.
Python-foutopsporing inschakelen in Visual Studio Code
Geef in uw clienttoepassing het voorvoegsel van een query met inline Python met
set query_python_debug;Voer de query uit.
- Kusto Explorer: Visual Studio Code wordt automatisch gestart met het debug_python.py script.
- Kusto Web UI:
- Download en sla debug_python.py, df.txt, en kargs.txt op. Selecteer Toestaan in het venster. Bestanden opslaan in de geselecteerde map.
- Klik met de rechtermuisknop op debug_python.py en open met Visual Studio Code. Het debug_python.py script bevat de inline Python-code, uit de KQL-query, voorafgegaan door de sjablooncode om het invoergegevensframe te initialiseren vanuit df.txt en de woordenlijst met parameters uit kargs.txt.
Start in Visual Studio Code het foutopsporingsprogramma van Visual Studio Code: Start>Debugging uitvoeren (F5) en selecteer Python-configuratie . Het foutopsporingsprogramma wordt gestart en stelt automatisch een onderbrekingspunt in om fouten in de inlinecode op te sporen.
Geef in uw clienttoepassing het voorvoegsel van een query met inline Python met
set query_python_debug;Voer de query uit.
- Kusto Explorer: Visual Studio Code wordt automatisch gestart met het debug_python.py script.
- KQL-query-set
- Download en sla debug_python.py, df.txt, en kargs.txt op. Selecteer Toestaan in het venster. Bestanden opslaan in de geselecteerde map.
- Klik met de rechtermuisknop op debug_python.py en open met Visual Studio Code. Het debug_python.py script bevat de inline Python-code, uit de KQL-query, voorafgegaan door de sjablooncode om het invoergegevensframe te initialiseren vanuit df.txt en de woordenlijst met parameters uit kargs.txt.
Start in Visual Studio Code het foutopsporingsprogramma van Visual Studio Code: Start>Debugging uitvoeren (F5) en selecteer Python-configuratie . Het foutopsporingsprogramma wordt gestart en stelt automatisch een onderbrekingspunt in om fouten in de inlinecode op te sporen.
Hoe werkt inline Python-foutopsporing in Visual Studio Code?
- De query wordt geparseerd en uitgevoerd op de server totdat de vereiste
| evaluate python()component is bereikt. - De Python-sandbox wordt aangeroepen, maar in plaats van de code uit te voeren, wordt de invoertabel, de woordenlijst met parameters en de code geserialiseerd en teruggestuurd naar de client.
- Deze drie objecten worden opgeslagen in drie bestanden: df.txt, kargs.txten debug_python.py in de geselecteerde map (webinterface) of in de %TEMP% clientmap (Kusto Explorer).
- Visual Studio Code wordt gestart, vooraf geladen met het debug_python.py-bestand dat een voorvoegselcode bevat om df en kargs te initialiseren vanuit hun respectieve bestanden, gevolgd door het Python-script dat is ingesloten in de KQL-query.
Queryvoorbeeld
Voer de volgende KQL-query uit in uw clienttoepassing:
range x from 1 to 4 step 1 | evaluate python(typeof(*, x4:int), 'exp = kargs["exp"]\n' 'result = df\n' 'result["x4"] = df["x"].pow(exp)\n' , bag_pack('exp', 4))Bekijk de resulterende tabel:
x x4 1 1 2 16 3 81 4 256 Voer dezelfde KQL-query uit in uw clienttoepassing met behulp van
set query_python_debug;:set query_python_debug; range x from 1 to 4 step 1 | evaluate python(typeof(*, x4:int), 'exp = kargs["exp"]\n' 'result = df\n' 'result["x4"] = df["x"].pow(exp)\n' , bag_pack('exp', 4))Visual Studio Code wordt gestart:
Visual Studio Code voert foutopsporing uit en drukt het gegevensframe 'result' af in de foutopsporingsconsole.
Opmerking
Er kunnen verschillen zijn tussen de Python-sandboxafbeelding en uw lokale installatie. Controleer de sandbox-image voor specifieke pakketten door een query op de plugin uit te voeren.
Opmerking
Als er fouten optreden bij het starten van de foutopsporingssessie van Visual Studio Code, kunt u het standaard terminalprofiel instellen op opdrachtprompt:
- Druk op Ctrl+Shift+P om het opdrachtenpalet te openen.
- Zoek naar 'Terminal: Standaardprofiel selecteren' en selecteer 'Opdrachtprompt'