Not
Åtkomst till denna sida kräver auktorisation. Du kan prova att logga in eller byta katalog.
Åtkomst till denna sida kräver auktorisation. Du kan prova att byta katalog.
I den här snabbstarten skapar, kör och skickar du ett Azure Stream Analytics-jobb (ASA) med hjälp av ASA Tools-tillägget för Visual Studio Code på den lokala datorn. Du lär dig att skapa ett ASA-jobb som läser strömmande realtidsdata från IoT Hub och filtrerar händelser med en temperatur som är större än 27°. Utdataresultatet skickas till en fil i Blob Storage. De indata som används i den här snabbstarten genereras av en Raspberry Pi-onlinesimulator.
Anmärkning
Visual Studio Code-verktyg stöder inte jobb i regionerna Kina Öst, Kina Nord, Tyskland Central och Tyskland Nordost.
Förutsättningar
- Azure-prenumeration. Om du inte har någon Azure-prenumeration kan du skapa ett kostnadsfritt konto.
- Visual Studio Code.
Installera Azure Stream Analytics Tools-tillägget
Öppna Visual Studio Code (VS Code).
Från Tillägg i det vänstra fönstret söker du efter stream analytics och väljer Installera på Azure Stream Analytics Tools-tillägget .
När den har installerats väljer du Azure-ikonen i aktivitetsfältet och loggar in på Azure.
När du har loggat in kan du se prenumerationerna under ditt Azure-konto.
Anmärkning
ASA Tools-tillägget signerar dig automatiskt varje gång du öppnar VS Code. Om ditt konto har tvåfaktorautentisering använder du telefonautentisering i stället för att använda en PIN-kod. Om du vill logga ut ditt Azure-konto trycker du på Ctrl + Shift + P och anger Azure: Sign Out.
Förbereda indata
Förbered indata innan du definierar Stream Analytics-jobbet. Lösningen matar in realtidssensordata till IoT Hub, som du senare konfigurerar som jobbindata. Förbered de indata som krävs för jobbet genom att utföra följande steg:
Logga in på Azure-portalen.
Välj Skapa en resurs. På sidan Skapa en resurs väljer du Sakernas Internet>IoT Hub.
Följ dessa steg på sidan IoT Hub :
- För Prenumeration väljer du din Azure-prenumeration.
- För Resursgrupp väljer du en befintlig resursgrupp eller skapar en ny resursgrupp.
- För IoT Hub-namn anger du ett namn för din IoT-hubb.
- För Region väljer du den region som är närmast dig.
- För att välja Nivå väljer du Gratis, om det fortfarande är tillgängligt i din prenumeration. Mer information finns i Prissättning för IoT Hub.
- Behåll standardvärdet för daglig meddelandegräns.
- Välj Nästa: Nätverk längst ned på sidan.
Välj Förhandsgranska + skapa. Granska din IoT Hub-information och välj Skapa. Det kan ta några minuter att skapa din IoT Hub. Du kan övervaka förloppet i fönsterrutan Meddelanden.
När resursen (IoT Hub) har skapats väljer du Gå till resurs för att gå till sidan IoT Hub.
På sidan IoT Hub väljer du Enheter på den vänstra menyn och väljer sedan + Lägg till enhet.
Ange ett enhets-ID och välj Spara.
När du har skapat enheten visas enheten i listan IoT-enheter . Välj knappen Uppdatera på sidan om du inte ser den.
Välj enheten i listan.
På enhetssidan väljer du kopieringsknappen bredvid Primär anslutningssträng och sparar den i ett anteckningsblock som ska användas senare.
Köra IoT-simulatorn
Ersätt platshållaren på rad 15 med anslutningssträngen för Azure IoT Hub-enheten som du sparade i ett tidigare avsnitt.
Välj Kör. Utdata visar sensordata och meddelanden som skickas till din IoT Hub.
Viktigt!
Välj Återställ efter några minuter för att återställa anslutningssträng.
Skapa bloblagring
I det övre vänstra hörnet av Azure Portal väljer du Skapa ett lagringskonto> för resurslagring.>
I fönsterrutan Skapa lagringskonto anger du namn, plats och resursgrupp för lagringskonto. Välj samma plats och resursgrupp som den IoT-hubb som du skapade. Välj sedan Granska och Skapa för att skapa lagringskontot.
På sidan Lagringskonto väljer du Containrar på den vänstra menyn och väljer sedan + Container i kommandofältet.
På sidan Ny container anger du ett namn för containern, lämnar offentlig åtkomstnivå som Privat (ingen anonym åtkomst) och väljer OK.
Skapa ett Stream Analytics-projekt
I Visual Studio Code väljer du Visa>kommandopalett och anger ASA: Skapa nytt projekt.
Ange projektnamnet, till exempel myASAproj, och välj en mapp för projektet.
Visual Studio Code lägger till ett ASA-projekt på din arbetsyta. Den består av tre mappar: Indata, utdata och funktioner. Den har också frågeskriptet (*.asaql), en JobConfig.json-fil och en asaproj.json konfigurationsfil.
Filen asaproj.json innehåller inställningar för indata, utdata och jobbkonfiguration för att skicka Stream Analytics-jobbet till Azure.
Anmärkning
När du lägger till indata och utdata från kommandopaletten läggs motsvarande sökvägar till iasaproj.json automatiskt. Om du lägger till eller tar bort indata eller utdata direkt på disken måste du lägga till eller ta bort dem manuellt från asaproj.json. Du kan placera indata och utdata på en plats och sedan referera till dem i olika jobb genom att ange sökvägarna i varje asaproj.json fil.
Definiera transformationsfrågan
Öppna filen myASAproj.asaql och lägg till följande fråga:
SELECT * INTO Output FROM Input WHERE Temperature > 27
Konfigurera jobbindata
Högerklicka på mappen Indata i Stream Analytics-projektet. Sedan välj ASA: Lägg till indata från snabbmenyn.
Eller tryck på Ctrl+Skift+P för att öppna kommandopaletten och ange ASA: Lägg till indata.
Välj IoT Hub som indatatyp.
Välj Välj från Azure-prenumerationer i den nedrullningsbara menyn och tryck sedan på RETUR.
Ange Indata som namn och tryck sedan på RETUR.
I mappen Indata ser du att en Input.json-fil har skapats.
I JSON-filen bekräftar du att Indata har angetts Namn.
I JSON-redigeraren för Input.json väljer du Välj från dina prenumerationer och väljer sedan din Azure-prenumeration som har IoT-hubben.
I JSON-redigeraren väljer du Välj en IoT Hub och sedan den IoT-hubb som du skapade.
Som standard
SharedAccessPolicyNameska vara inställt påiothubowner. Om inte, välj Välj ett Shared Access Policy Name-länk, och välj sedan iothubowner från listrutan.Värdet
SharedAccessPolicyKeyska anges automatiskt.Välj Förhandsgranska data för att se om indata har konfigurerats för jobbet. Det kommer att ta emot ett exempel på din IoT Hub och visa det i förhandsgranskningsfönstret.
Konfigurera jobbutdata
- Högerklicka på Utdata i utforskaren och välj ASA: Lägg till utdata.
- Välj Data Lake Storage Gen2/Blob Storage som mottagartyp i listrutan.
- Välj Välj från Azure-prenumerationer.
- Ange Utdata som namn på aliaset och tryck på RETUR. Det här utdatanamnet används för INTO-instruktionen i frågan.
- I JSON-redigeraren för Output.jsonväljer du Välj från dina prenumerationer och väljer sedan din Azure-prenumeration som har Azure Storage-kontot.
- Om du behöver ändra lagringskontot som fylls i automatiskt väljer du Välj ett lagringskonto och väljer sedan ditt Azure Storage-konto. Lagringskontonamn identifieras automatiskt om de skapas i samma prenumeration.
- Om du behöver ändra containernamnet väljer du Välj en container och väljer den blobcontainer som du skapade.
Kompilera skriptet och skicka det till Azure
Skriptkompilering kontrollerar syntaxen och genererar Azure Resource Manager-mallarna för automatisk distribution.
Högerklicka på skriptfilen i utforskarfönstret, peka på ASA: Kompilera skript och välj sedan ASA: ARM Template V2 (rekommenderas).
Efter kompilering visas en Distribuera-mapp under projektet med två Azure Resource Manager-mallar. Dessa två filer används för automatisk distribution.
Välj Skicka till Azure i frågeredigeraren.
I fönstret Skicka följer du dessa steg:
Välj din Azure-prenumeration.
Välj en Azure-resursgrupp.
Välj den region där du vill skapa Stream Analytics-jobbet.
Välj sedan Skicka.
Välj Publicera till Azure och slutför. Vänta tills en ny flik Cloud Job View öppnas, som visar statusen för ditt jobb.
Starta Stream Analytics-jobbet och kontrollera utdata
På fliken Molnjobbvy väljer du Starta för att köra jobbet i molnet.
I fönstret Starta direktuppspelningsjobb väljer du OK. Den här processen kan ta några minuter att slutföra.
Om jobbet startar framgångsrikt ändras jobbstatusen till Körs. Du ser ett logiskt diagram som visar hur ditt ASA-jobb körs.
Om du vill visa utdataresultaten öppnar du bloblagringen i Visual Studio Code-tillägget eller i Azure-portalen.
Ladda ned och öppna filen för att se utdata.
{"messageId":11,"deviceId":"Raspberry Pi Web Client","temperature":28.165519323167562,"humidity":76.875393581654379,"EventProcessedUtcTime":"2022-09-01T22:53:58.1015921Z","PartitionId":3,"EventEnqueuedUtcTime":"2022-09-01T22:52:57.6250000Z","IoTHub":{"MessageId":null,"CorrelationId":null,"ConnectionDeviceId":"MyASAIoTDevice","ConnectionDeviceGenerationId":"637976642928634103","EnqueuedTime":"2022-09-01T22:52:57.6290000Z"}} {"messageId":14,"deviceId":"Raspberry Pi Web Client","temperature":29.014941877871451,"humidity":64.93477299527828,"EventProcessedUtcTime":"2022-09-01T22:53:58.2421545Z","PartitionId":3,"EventEnqueuedUtcTime":"2022-09-01T22:53:03.6100000Z","IoTHub":{"MessageId":null,"CorrelationId":null,"ConnectionDeviceId":"MyASAIoTDevice","ConnectionDeviceGenerationId":"637976642928634103","EnqueuedTime":"2022-09-01T22:53:03.6140000Z"}} {"messageId":17,"deviceId":"Raspberry Pi Web Client","temperature":28.032846241745975,"humidity":66.146114343897338,"EventProcessedUtcTime":"2022-09-01T22:53:58.2421545Z","PartitionId":3,"EventEnqueuedUtcTime":"2022-09-01T22:53:19.5960000Z","IoTHub":{"MessageId":null,"CorrelationId":null,"ConnectionDeviceId":"MyASAIoTDevice","ConnectionDeviceGenerationId":"637976642928634103","EnqueuedTime":"2022-09-01T22:53:19.5830000Z"}} {"messageId":18,"deviceId":"Raspberry Pi Web Client","temperature":30.176185593576143,"humidity":72.697359909427419,"EventProcessedUtcTime":"2022-09-01T22:53:58.2421545Z","PartitionId":3,"EventEnqueuedUtcTime":"2022-09-01T22:53:21.6120000Z","IoTHub":{"MessageId":null,"CorrelationId":null,"ConnectionDeviceId":"MyASAIoTDevice","ConnectionDeviceGenerationId":"637976642928634103","EnqueuedTime":"2022-09-01T22:53:21.6140000Z"}} {"messageId":20,"deviceId":"Raspberry Pi Web Client","temperature":27.851894248213021,"humidity":71.610229530268214,"EventProcessedUtcTime":"2022-09-01T22:53:58.2421545Z","PartitionId":3,"EventEnqueuedUtcTime":"2022-09-01T22:53:25.6270000Z","IoTHub":{"MessageId":null,"CorrelationId":null,"ConnectionDeviceId":"MyASAIoTDevice","ConnectionDeviceGenerationId":"637976642928634103","EnqueuedTime":"2022-09-01T22:53:25.6140000Z"}} {"messageId":21,"deviceId":"Raspberry Pi Web Client","temperature":27.718624694772238,"humidity":66.540445035685153,"EventProcessedUtcTime":"2022-09-01T22:53:58.2421545Z","PartitionId":3,"EventEnqueuedUtcTime":"2022-09-01T22:53:48.0820000Z","IoTHub":{"MessageId":null,"CorrelationId":null,"ConnectionDeviceId":"MyASAIoTDevice","ConnectionDeviceGenerationId":"637976642928634103","EnqueuedTime":"2022-09-01T22:53:48.0830000Z"}} {"messageId":22,"deviceId":"Raspberry Pi Web Client","temperature":27.7849054424326,"humidity":74.300662748167085,"EventProcessedUtcTime":"2022-09-01T22:54:09.3393532Z","PartitionId":3,"EventEnqueuedUtcTime":"2022-09-01T22:54:09.2390000Z","IoTHub":{"MessageId":null,"CorrelationId":null,"ConnectionDeviceId":"MyASAIoTDevice","ConnectionDeviceGenerationId":"637976642928634103","EnqueuedTime":"2022-09-01T22:54:09.2400000Z"}} {"messageId":28,"deviceId":"Raspberry Pi Web Client","temperature":30.839892925680324,"humidity":76.237611741451786,"EventProcessedUtcTime":"2022-09-01T22:54:47.8053253Z","PartitionId":3,"EventEnqueuedUtcTime":"2022-09-01T22:54:47.6180000Z","IoTHub":{"MessageId":null,"CorrelationId":null,"ConnectionDeviceId":"MyASAIoTDevice","ConnectionDeviceGenerationId":"637976642928634103","EnqueuedTime":"2022-09-01T22:54:47.6150000Z"}} {"messageId":29,"deviceId":"Raspberry Pi Web Client","temperature":30.561040300759053,"humidity":78.3845172058103,"EventProcessedUtcTime":"2022-09-01T22:54:49.8070489Z","PartitionId":3,"EventEnqueuedUtcTime":"2022-09-01T22:54:49.6030000Z","IoTHub":{"MessageId":null,"CorrelationId":null,"ConnectionDeviceId":"MyASAIoTDevice","ConnectionDeviceGenerationId":"637976642928634103","EnqueuedTime":"2022-09-01T22:54:49.5990000Z"}} {"messageId":31,"deviceId":"Raspberry Pi Web Client","temperature":28.163585438418679,"humidity":60.0511571297096,"EventProcessedUtcTime":"2022-09-01T22:55:25.1528729Z","PartitionId":3,"EventEnqueuedUtcTime":"2022-09-01T22:55:24.9050000Z","IoTHub":{"MessageId":null,"CorrelationId":null,"ConnectionDeviceId":"MyASAIoTDevice","ConnectionDeviceGenerationId":"637976642928634103","EnqueuedTime":"2022-09-01T22:55:24.9120000Z"}} {"messageId":32,"deviceId":"Raspberry Pi Web Client","temperature":31.00503387156985,"humidity":78.68821066044552,"EventProcessedUtcTime":"2022-09-01T22:55:43.2652127Z","PartitionId":3,"EventEnqueuedUtcTime":"2022-09-01T22:55:43.0480000Z","IoTHub":{"MessageId":null,"CorrelationId":null,"ConnectionDeviceId":"MyASAIoTDevice","ConnectionDeviceGenerationId":"637976642928634103","EnqueuedTime":"2022-09-01T22:55:43.0520000Z"}}
Rensa resurser
När du inte längre behöver resurserna tar du bort resursgruppen, Stream Analytics-jobbet och alla relaterade resurser. När jobbet tas bort stoppas faktureringen för de strömningsenheter som jobbet förbrukar. Om du planerar att använda jobbet i framtiden kan du stoppa det och starta om det senare när du behöver det. Om du inte kommer att fortsätta att använda det här jobbet tar du bort alla resurser som skapats i den här snabbstarten med hjälp av följande steg:
På den vänstra menyn i Azure Portal väljer du Resursgrupper och sedan namnet på den resurs som du skapade.
Välj Ta bort på din resursgruppssida. Ange namnet på resursen som ska tas bort i textrutan och välj sedan Ta bort.
Nästa steg
Mer information om ASA Tools-tillägget för Visual Studio Code finns i följande artiklar: