Delen via


Zelfstudie: Een Azure Digital Twins-grafiek maken met behulp van de Azure CLI

In deze zelfstudie bouwt u een grafiek in Azure Digital Twins met behulp van modellen, tweelingen en relaties. Het hulpprogramma voor deze zelfstudie is de Azure Digital Twins-opdrachtenset voor de Azure CLI.

U kunt de CLI-opdrachten gebruiken om essentiële Azure Digital Twins-acties uit te voeren, zoals het uploaden van modellen, het maken en wijzigen van tweelingen en het maken van relaties. U kunt ook de referentiedocumentatie voor az dt command set bekijken om de volledige set CLI-opdrachten te bekijken.

In deze handleiding leer je...

  • Een omgeving modelleren
  • Digitale tweelingen maken
  • Relaties toevoegen om een grafiek te vormen
  • Query's uitvoeren op de grafiek om vragen te beantwoorden

Vereisten

Als u de stappen in deze zelfstudie wilt voltooien, moet u eerst de volgende vereisten voltooien.

Als u geen Azure-abonnement hebt, maakt u een gratis account voordat u begint.

De voorbeeldmodellen downloaden

In de zelfstudie worden twee vooraf geschreven modellen gebruikt die deel uitmaken van het end-to-end C#-voorbeeldproject voor Azure Digital Twins. De modelbestanden bevinden zich hier:

Als u de bestanden op uw computer wilt ophalen, gebruikt u de navigatiekoppelingen in de vorige lijst en kopieert u de bestandsteksten naar lokale bestanden op uw computer met dezelfde namen (Room.json en Floor.json).

De omgeving voorbereiden op de Azure CLI

CLI-sessie instellen

Als u met Azure Digital Twins in de CLI wilt werken, moet u zich eerst aanmelden en de CLI-context instellen op uw abonnement voor deze sessie. Voer deze opdrachten uit in het CLI-venster:

az login
az account set --subscription "<your-Azure-subscription-ID>"

Aanbeveling

U kunt uw abonnementsnaam ook gebruiken in plaats van de id in de vorige opdracht.

Als u dit abonnement voor het eerst met Azure Digital Twins gebruikt, voert u de volgende opdracht uit om u te registreren bij de Azure Digital Twins-naamruimte. (Als u het niet zeker weet, kunt u het opnieuw uitvoeren, zelfs als u het ergens in het verleden hebt uitgevoerd.)

az provider register --namespace 'Microsoft.DigitalTwins'

Vervolgens voegt u de Microsoft Azure IoT-extensie voor Azure CLI toe om opdrachten in te schakelen voor interactie met Azure Digital Twins en andere IoT-services. Voer deze opdracht uit om te controleren of u de nieuwste versie van de extensie hebt:

az extension add --upgrade --name azure-iot

U bent nu klaar om te werken met Azure Digital Twins in de Azure CLI.

U kunt deze status controleren door az dt --help op elk gewenst moment uit te voeren om een lijst van de beschikbare bovenliggende Azure Digital Twins-opdrachten te zien.

Een Azure Digital Twins-exemplaar voorbereiden

Als u in dit artikel met Azure Digital Twins wilt werken, moet u eerst een Azure Digital Twins-instantie instellen, evenals de vereiste machtigingen om die te gebruiken. Als u al een Azure Digital Twins-exemplaar hebt ingesteld voor een eerdere opdracht, kunt u dit exemplaar gebruiken.

Volg anders de instructies in Een instantie en authenticatie instellen. De instructies bevatten ook stappen om te controleren of u elke stap hebt voltooid en klaar bent om door te gaan met het gebruik van uw nieuwe exemplaar.

Nadat u uw Azure Digital Twins-exemplaar hebt ingesteld, noteert u de volgende waarden die u later nodig hebt om verbinding te maken met het exemplaar:

  • De hostnaam van de instantie
  • Het Azure-abonnement dat u hebt gebruikt om de instantie te maken

Aanbeveling

Als u de vriendelijke naam van uw exemplaar kent, kunt u de volgende CLI-opdracht gebruiken om de hostnaam en abonnementgegevens op te halen.

az dt show --dt-name <Azure-Digital-Twins-instance-name>

Ze worden als volgt weergegeven in de uitvoer: Schermopname van het Cloud Shell-browservenster met de uitvoer van de opdracht az dt show. Het veld HostName en de abonnements-id zijn gemarkeerd.

Een fysieke omgeving modelleren met DTDL

Nu de CLI en het Azure Digital Twins-exemplaar zijn ingesteld, kunt u beginnen met het bouwen van een grafiek van een scenario.

De eerste stap bij het maken van een Azure Digital Twins-oplossing is het definiëren van dubbelmodellen voor uw omgeving.

Modellen zijn vergelijkbaar met klassen in objectgeoriënteerde programmeertalen; zij bieden door de gebruiker gedefinieerde sjablonen voor digitale dubbels om later gevolgd en geïnstantieerd te worden. Ze worden geschreven in een JSON-achtige taal met de naam Digital Twins Definition Language (DTDL) en kunnen de eigenschappen, relaties en onderdelen van een dubbel definiëren.

Notitie

Met DTDL kunnen ook opdrachten op digitale tweelingen worden gedefinieerd. Opdrachten worden momenteel echter niet ondersteund in de Azure Digital Twins-service.

Navigeer op uw computer naar het Room.json-bestand dat u hebt gemaakt in de sectie Vereisten . Open deze in een code-editor en wijzig deze op de volgende manieren:

  1. Werk het versienummer bij om aan te geven dat u een meer up-to-date versie van dit model maakt. Doe dit door de 1 aan het einde van de @id waarde te wijzigen in een 2. Elk nummer dat hoger is dan het huidige versienummer werkt ook.

  2. Wijzig een eigenschap. Wijzig de naam van de Humidity eigenschap in HumidityLevel (of iets anders als u wilt. Als u iets anders gebruikt dan HumidityLevel, moet u onthouden wat u hebt gebruikt en dat blijven gebruiken in plaats van Vochtigheidsniveau in de hele zelfstudie).

  3. Voeg een eigenschap toe. Plak onder de eigenschap HumidityLevel die eindigt op regel 15 de volgende code om de eigenschap RoomName toe te voegen aan de ruimte:

    ,{
      "@type": "Property",
      "name": "RoomName",
      "schema": "string"
    }
    
  4. Een relatie toevoegen. Plak onder de RoomName eigenschap die u zojuist hebt toegevoegd de volgende code om de mogelijkheid toe te voegen voor dit type tweeling om relaties te vormen met andere tweelingen contains:

    ,{
      "@type": "Relationship",
      "name": "contains"
    }
    

Wanneer u klaar bent, zou het bijgewerkte model moeten overeenkomen met:

{
    "@id": "dtmi:example:Room;2",
    "@type": "Interface",
    "displayName": "Room",
    "contents": [
      {
        "@type": "Property",
        "name": "Temperature",
        "schema": "double"
      },
      {
        "@type": "Property",
        "name": "HumidityLevel",
        "schema": "double"
      }
      ,{
        "@type": "Property",
        "name": "RoomName",
        "schema": "string"
      }
      ,{
        "@type": "Relationship",
        "name": "contains"
      }
    ],
    "@context": "dtmi:dtdl:context;3"
  }

Vergeet niet het bestand op te slaan voordat u verdergaat.

Modellen uploaden naar Azure Digital Twins

Na het ontwerpen van modellen moet u deze uploaden naar uw Azure Digital Twins-instantie. Hiermee configureert u uw Azure Digital Twins-service-exemplaar met uw eigen aangepaste domeinwoordenlijst. Zodra u de modellen hebt geüpload, kunt u dubbelexemplaren maken die deze gebruiken.

  1. Als u een lokale installatie van de Azure CLI gebruikt, kunt u deze stap overslaan. Als u Cloud Shell gebruikt, moet u uw modelbestanden uploaden naar de opslag van Cloud Shell, zodat de bestanden beschikbaar zijn wanneer u de Cloud Shell-opdracht uitvoert die deze gebruikt. Selecteer Bestanden beheren en uploaden.

    Schermopname van het Cloud Shell-browservenster met de selectie van het pictogram Uploaden.

    Navigeer naar het Room.json-bestand op uw computer en selecteer Openen. Herhaal deze stap vervolgens voor Floor.json.

  2. Gebruik vervolgens de opdracht az dt model create , zoals wordt weergegeven in het volgende voorbeeld om het bijgewerkte Room-model te uploaden naar uw Azure Digital Twins-exemplaar. Met de tweede opdracht wordt een ander model geüpload, Floor, dat u ook in de volgende sectie gaat gebruiken om verschillende typen tweelingen te maken. Er is een placeholder voor de hostnaam van het exemplaar (u kunt ook de vriendelijke naam van het exemplaar gebruiken, met een kleine prestatievermindering) en een placeholder voor het bestandspad naar elk modelbestand. Als u Cloud Shell gebruikt, bevindenRoom.json en Floor.json zich in de hoofdopslagmap, zodat u de bestandsnamen rechtstreeks in de volgende opdrachten kunt gebruiken waar een pad is vereist.

    az dt model create --dt-name <Azure-Digital-Twins-instance-hostname-or-name> --models <path-to-Room.json>
    az dt model create --dt-name <Azure-Digital-Twins-instance-hostname-or-name> --models <path-to-Floor.json>
    

    In de uitvoer van elke opdracht ziet u informatie over het geüploade model.

    Aanbeveling

    U kunt ook alle modellen in een map tegelijk uploaden met behulp van de --from-directory optie voor het maken van het model. Zie Optionele parameters voor az dt model create voor meer informatie.

  3. Controleer of de modellen zijn gemaakt met de opdracht az dt model list , zoals wordt weergegeven in het volgende voorbeeld. Als u dit doet, wordt een lijst afgedrukt met alle modellen die zijn geüpload naar het Azure Digital Twins-exemplaar met de volledige informatie. Er is één plaatsaanduiding voor de hostnaam van het exemplaar (u kunt ook de vriendelijke naam van het exemplaar gebruiken met een lichte vermindering in prestaties).

    az dt model list --dt-name <Azure-Digital-Twins-instance-hostname-or-name> --definition
    

    Bekijk het bewerkte Room-model in de resultaten:

    Schermopname van Cloud Shell met het resultaat van de opdracht voor de modellijst, waaronder het bijgewerkte Room-model.

Fouten

De CLI verwerkt ook fouten van de service.

Voer de az dt model create opdracht opnieuw uit om een van dezelfde modellen die u hebt geüpload, opnieuw te laden:

az dt model create --dt-name <Azure-Digital-Twins-instance-hostname-or-name> --models Room.json

Omdat modellen niet kunnen worden overschreven, retourneert het uitvoeren van deze opdracht op hetzelfde model nu een foutcode van ModelIdAlreadyExists.

Digitale tweelingen maken

Nu sommige modellen zijn geüpload naar uw Azure Digital Twins-exemplaar, kunt u digitale dubbels maken op basis van de modeldefinities. Digitale tweelingen vertegenwoordigen de entiteiten in uw bedrijfsomgeving: dingen als sensoren op een boerderij, ruimten in een gebouw, of lichten in een auto.

Als u een digitale dubbel wilt maken, gebruikt u de opdracht az dt twin create . U moet verwijzen naar het model waarop de tweeling is gebaseerd, en kunt desgewenst aanvangswaarden definiëren voor alle eigenschappen in het model. U hoeft in deze fase geen relatiegegevens door te geven.

  1. Voer deze code uit in de CLI om meerdere dubbels te maken, op basis van het Room-model dat u eerder hebt bijgewerkt en een ander model, Floor. Zoals u weet, heeft Room drie eigenschappen, zodat u argumenten kunt opgeven met de initiële waarden voor deze eigenschappen. (Het initialiseren van eigenschapswaarden is in het algemeen optioneel, maar deze zijn nodig voor deze zelfstudie.) Er is één tijdelijke aanduiding voor de hostnaam van het exemplaar. U kunt ook de vriendelijke naam van het exemplaar gebruiken, maar dit resulteert in een lichte afname van de prestaties.

    az dt twin create --dt-name <Azure-Digital-Twins-instance-hostname-or-name> --dtmi "dtmi:example:Room;2" --twin-id room0 --properties '{"RoomName":"Room0", "Temperature":70, "HumidityLevel":30}'
    az dt twin create --dt-name <Azure-Digital-Twins-instance-hostname-or-name> --dtmi "dtmi:example:Room;2" --twin-id room1 --properties '{"RoomName":"Room1", "Temperature":80, "HumidityLevel":60}'
    az dt twin create --dt-name <Azure-Digital-Twins-instance-hostname-or-name> --dtmi "dtmi:example:Floor;1" --twin-id floor0
    az dt twin create --dt-name <Azure-Digital-Twins-instance-hostname-or-name> --dtmi "dtmi:example:Floor;1" --twin-id floor1
    

    Notitie

    Als u iets anders gebruikt dan Cloud Shell in de Bash-omgeving, moet u mogelijk bepaalde tekens in de inline-JSON escapen, zodat deze correct wordt geparseerd.

    Zie Speciale tekens gebruiken in verschillende shells voor meer informatie.

    De uitvoer van elke opdracht bevat informatie over de gemaakte dubbel (inclusief eigenschappen voor de kamerdubbels die met hen zijn geïnitialiseerd).

  2. U kunt controleren of de tweelingen zijn gemaakt met de opdracht az dt twin query , zoals wordt weergegeven in het volgende voorbeeld. De weergegeven query vindt alle digitale tweelingen in uw Azure Digital Twins-instantie. Er is één plaatsaanduiding voor de hostnaam van het exemplaar (u kunt ook de vriendelijke naam van het exemplaar gebruiken met een lichte vermindering in prestaties).

    az dt twin query --dt-name <Azure-Digital-Twins-instance-hostname-or-name> --query-command "SELECT * FROM DIGITALTWINS"
    

    Zoek de room0, room1, floor0 en floor1 tweelingen in de resultaten. Hier volgt een fragment met een deel van het resultaat van deze query.

    Schermopname van Cloud Shell met gedeeltelijk resultaat van dubbelquery, inclusief room0 en room1.

Notitie

Nadat u een wijziging hebt aangebracht in de gegevens in uw grafiek, kan er een latentie van maximaal 10 seconden zijn voordat de wijzigingen worden doorgevoerd in query's.

De DigitalTwins-API weerspiegelt wijzigingen onmiddellijk, dus als u een direct antwoord nodig hebt, gebruikt u een API-aanvraag (DigitalTwins GetById) of een SDK-aanroep (GetDigitalTwin) om dubbelgegevens op te halen in plaats van een query.

Een digitale tweeling aanpassen

U kunt ook de eigenschappen wijzigen van een tweeling die u hebt gemaakt.

  1. Voer de volgende opdracht az dt twin update uit om room0's RoomName te wijzigen van Room0 in PresidentialSuite. Er is één plaatsaanduiding voor de hostnaam van het exemplaar (u kunt ook de vriendelijke naam van het exemplaar gebruiken met een lichte vermindering in prestaties).

    az dt twin update --dt-name <Azure-Digital-Twins-instance-hostname-or-name> --twin-id room0 --json-patch '{"op":"add", "path":"/RoomName", "value": "PresidentialSuite"}'
    

    Notitie

    U wordt aangeraden de CLI in de Bash-omgeving te gebruiken voor deze zelfstudie. Als u de PowerShell-omgeving gebruikt, moet u mogelijk de aanhalingstekens escapen om de --json-patch JSON-waarde correct te kunnen parseren.

    De uitvoer van dit commando toont de huidige informatie van de tweeling, en u zou de nieuwe waarde voor het RoomName in het resultaat moeten zien.

    Schermopname van Cloud Shell met het resultaat van de updateopdracht, die een RoomName van PresidentialSuite bevat.

  2. U kunt controleren of de update is voltooid door de opdracht az dt twin show uit te voeren om de informatie van room0 te bekijken. Er is één plaatsaanduiding voor de hostnaam van het exemplaar (u kunt ook de vriendelijke naam van het exemplaar gebruiken met een lichte vermindering in prestaties).

    az dt twin show --dt-name <Azure-Digital-Twins-instance-hostname-or-name> --twin-id room0
    

    De uitvoer zou de bijgewerkte naam moeten weerspiegelen.

Maak een grafiek door relaties toe te voegen

Vervolgens kunt u enkele relaties tussen deze tweelingen maken om ze te verbinden met een tweelinggrafiek. Tweelinggrafieken worden gebruikt om een gehele omgeving voor te stellen.

De typen relaties die u van de ene tweeling naar de andere kunt maken, worden gedefinieerd in de modellen die u eerder hebt geüpload. De modeldefinitie voor Floor geeft aan dat vloeren een type relatie kunnen hebben met de naam contains. Omdat de modeldefinitie deze relatie specificeert, is het mogelijk om een relatie van het type contains te creëren van elk Vloerdubbel naar de bijbehorende kamer die het bevat.

Gebruik de opdracht az dt twin relationship create om een relatie toe te voegen. Specificeer de tweeling waaruit de relatie afkomstig is, het type relatie en de tweeling waarmee de relatie verbinding maakt. Geef ten slotte de relatie een unieke id. Als een relatie is gedefinieerd om eigenschappen te hebben, kunt u ook de relatie-eigenschappen in deze opdracht initialiseren.

  1. Voer de volgende code uit om een contains-type-relatie toe te voegen van elke vloertweeling die u eerder hebt gemaakt naar de bijbehorende kamertweeling. De relaties hebben de naam relatie0 en relatie1. Er is één plaatsaanduiding voor de hostnaam van het exemplaar (u kunt ook de vriendelijke naam van het exemplaar gebruiken met een lichte vermindering in prestaties).

    az dt twin relationship create --dt-name <Azure-Digital-Twins-instance-hostname-or-name> --relationship-id relationship0 --relationship contains --twin-id floor0 --target room0
    az dt twin relationship create --dt-name <Azure-Digital-Twins-instance-hostname-or-name> --relationship-id relationship1 --relationship contains --twin-id floor1 --target room1
    

    Aanbeveling

    De contains relatie in het floor-model is ook gedefinieerd met twee eigenschappen. ownershipUserownershipDepartmentU kunt dus ook argumenten opgeven met de initiële waarden voor deze eigenschappen wanneer u de relaties maakt. Om een relatie met deze geïnitialiseerde eigenschappen te maken, voegt u de --properties-optie toe aan een van de bovenstaande opdrachten, zoals volgt:

    ... --properties '{"ownershipUser":"MyUser", "ownershipDepartment":"MyDepartment"}'
    

    In de uitvoer van elke opdracht ziet u informatie over de succesvol gemaakte relatie.

  2. U kunt de relaties controleren met een van de volgende opdrachten, waarmee de relaties in uw Azure Digital Twins-exemplaar worden afgedrukt. Elke commando heeft één tijdelijke aanduiding voor de hostnaam van het exemplaar (u kunt ook de vriendelijke naam van het exemplaar gebruiken met een lichte vermindering in prestaties).

    • Als u alle verbanden van elke verdieping wilt bekijken (de relaties vanaf één kant bezien):
      az dt twin relationship list --dt-name <Azure-Digital-Twins-instance-hostname-or-name> --twin-id floor0
      az dt twin relationship list --dt-name <Azure-Digital-Twins-instance-hostname-or-name> --twin-id floor1
      
    • Als u alle relaties wilt zien die in elke ruimte binnenkomen (de relatie vanaf de andere kant bekijken):
      az dt twin relationship list --dt-name <Azure-Digital-Twins-instance-hostname-or-name> --twin-id room0 --incoming
      az dt twin relationship list --dt-name <Azure-Digital-Twins-instance-hostname-or-name> --twin-id room1 --incoming
      
    • Zoek afzonderlijk naar deze relaties door ID.
      az dt twin relationship show --dt-name <Azure-Digital-Twins-instance-hostname-or-name> --twin-id floor0 --relationship-id relationship0
      az dt twin relationship show --dt-name <Azure-Digital-Twins-instance-hostname-or-name> --twin-id floor1 --relationship-id relationship1
      

De tweelingen en relaties die u in deze zelfstudie hebt ingesteld, vormen de volgende conceptuele grafiek:

Een diagram met een conceptuele grafiek. floor0 is verbonden via relationship0 met room0 en floor1 is verbonden via relationship1 met room1.

De tweelinggrafiek raadplegen om vragen over het milieu te beantwoorden

Een belangrijke functie van Azure Digital Twins is de mogelijkheid om eenvoudig en efficiënt query's uit te voeren op uw tweelinggrafiek om vragen over uw omgeving te beantwoorden. In de Azure CLI wordt query's uitgevoerd met de opdracht az dt twin query .

Notitie

Nadat u een wijziging hebt aangebracht in de gegevens in uw grafiek, kan er een latentie van maximaal 10 seconden zijn voordat de wijzigingen worden doorgevoerd in query's.

De DigitalTwins-API weerspiegelt wijzigingen onmiddellijk, dus als u een direct antwoord nodig hebt, gebruikt u een API-aanvraag (DigitalTwins GetById) of een SDK-aanroep (GetDigitalTwin) om dubbelgegevens op te halen in plaats van een query.

Voer de volgende query's uit in de CLI om enkele vragen over de voorbeeldomgeving te beantwoorden. Elke commando heeft één tijdelijke aanduiding voor de hostnaam van het exemplaar (u kunt ook de vriendelijke naam van het exemplaar gebruiken met een lichte vermindering in prestaties).

  1. Wat zijn alle entiteiten uit mijn omgeving die worden weergegeven in Azure Digital Twins? (alles opvragen)

    az dt twin query --dt-name <Azure-Digital-Twins-instance-hostname-or-name> --query-command "SELECT * FROM DIGITALTWINS"
    

    Met deze query kunt u in één oogopslag uw omgeving op een rijtje zetten en ervoor zorgen dat alles wordt weergegeven zoals u wilt dat deze zich in Azure Digital Twins bevindt. Het resultaat van deze query is een output die elke digitale dubbel met zijn details bevat. Hier volgt een fragment:

    Schermopname van Cloud Shell met gedeeltelijk resultaat van dubbelquery, inclusief room0 en room1.

    Aanbeveling

    Mogelijk herkent u dat deze opdracht dezelfde opdracht is die u eerder hebt gebruikt in de sectie Digitale dubbels maken om alle Azure Digital Twins in het exemplaar te vinden.

  2. Wat zijn alle ruimten in mijn omgeving? vraag naar model

    az dt twin query --dt-name <Azure-Digital-Twins-instance-hostname-or-name> --query-command "SELECT * FROM DIGITALTWINS T WHERE IS_OF_MODEL(T, 'dtmi:example:Room;2')"
    

    U kunt uw query beperken tot tweelingen van een bepaald type om meer specifieke informatie te verkrijgen over wat er wordt weergegeven. Het resultaat hiervan toont room0 en room1, maar geeft geen floor0 of floor1 weer (omdat ze verdiepingen zijn, niet kamers).

    Schermopname van Cloud Shell met het resultaat van de modelquery, die alleen room0 en room1 bevat.

  3. Wat zijn alle ruimten op floor0? (query op relatie)

    az dt twin query --dt-name <Azure-Digital-Twins-instance-hostname-or-name> --query-command "SELECT room FROM DIGITALTWINS floor JOIN room RELATED floor.contains where floor.\$dtId = 'floor0'"
    

    U kunt query's uitvoeren op basis van relaties in uw grafiek, om informatie te krijgen over de manier waarop tweelingen zijn verbonden of om uw query te beperken tot een bepaald gebied. Deze query illustreert ook dat de id van een tweeling (zoals floor0 in de vorige query) wordt opgevraagd met behulp van het metagegevensveld $dtId. Alleen room0 bevindt zich op floor0, dus het is de enige ruimte in het resultaat voor deze query.

    Schermopname van Cloud Shell met het resultaat van een relatiequery, inclusief room0.

    Notitie

    Wanneer u Cloud Shell gebruikt om een query uit te voeren met metagegevensvelden zoals deze die beginnen met $, moet u voor $ een backslash gebruiken. Hierdoor weet Cloud Shell dat het geen variabele is en als letterlijke tekst in de querytekst moet worden gelezen. Het veld met escape-metagegevens wordt weergegeven in de vorige schermopname.

  4. Welke tweelingen in mijn omgeving hebben een temperatuur van meer dan 75 °F? (query op eigenschap)

    az dt twin query --dt-name <Azure-Digital-Twins-instance-hostname-or-name> --query-command "SELECT * FROM DigitalTwins T WHERE T.Temperature > 75"
    

    U kunt de graaf op eigenschappen bevragen om verschillende soorten vragen te beantwoorden, waaronder het vinden van uitschieters in uw omgeving die mogelijk aandacht nodig hebben. Andere vergelijkingsoperators (<,>, =of !=) worden ook ondersteund. room1 wordt hier weergegeven in de resultaten, omdat deze een temperatuur van 80 °F heeft.

    Schermopname van Cloud Shell met het resultaat van de eigenschapsquery, die alleen room1 bevat.

  5. Wat zijn alle ruimten op floor0 met een temperatuur van meer dan 75 °F? (samengestelde query)

    az dt twin query --dt-name <Azure-Digital-Twins-instance-hostname-or-name> --query-command "SELECT room FROM DIGITALTWINS floor JOIN room RELATED floor.contains where floor.\$dtId = 'floor0' AND IS_OF_MODEL(room, 'dtmi:example:Room;2') AND room.Temperature > 75"
    

    U kunt de eerdere query's ook combineren zoals u dat in SQL zou doen, met behulp van combinatie-operatoren zoals AND, OR, NOT. Deze query maakt gebruik van AND om de vorige query over tweelingtemperaturen specifieker te maken. Het resultaat bevat nu alleen ruimten met een temperatuur van meer dan 75 °F op verdieping 0—wat in dit geval geen enkele is. De resultatenset is leeg.

    Schermopname van Cloud Shell met het resultaat van samengestelde query, die geen items bevat.

Hulpmiddelen opschonen

Nadat u deze zelfstudie hebt voltooid, kunt u kiezen welke resources u wilt verwijderen, afhankelijk van wat u hierna wilt doen.

  • Als u van plan bent verder te gaan met de volgende zelfstudie, kunt u de resources die u hier hebt ingesteld behouden en het Azure Digital Twins-exemplaar opnieuw gebruiken zonder dat er iets tussendoor hoeft te worden gewist.
  • Als u het Azure Digital Twins-exemplaar uit dit artikel wilt blijven gebruiken, maar alle bijbehorende modellen, tweelingen en relaties wilt wissen, voert u de volgende CLI-opdracht az dt job deletion CLI uit:

    az dt job deletion create -n <name-of-Azure-Digital-Twins-instance> -y
    

    Als u slechts enkele van deze elementen wilt verwijderen, kunt u de opdrachten az dt twin relationship delete, az dt twin delete en az dt model delete gebruiken om alleen de elementen die u wilt verwijderen selectief te verwijderen.

  • Als u geen van de resources nodig hebt die u in deze zelfstudie hebt gemaakt, kunt u het Azure Digital Twins-exemplaar en alle andere resources uit dit artikel verwijderen met de opdracht az group delete CLI. Hiermee verwijdert u alle Azure-resources in een resourcegroep, evenals de resourcegroep zelf.

    Belangrijk

    Het verwijderen van een resourcegroep kan niet ongedaan worden gemaakt. De resourcegroep en alle resources daarin worden permanent verwijderd. Zorg ervoor dat u niet per ongeluk de verkeerde resources groep of bronnen verwijdert.

    Open Azure Cloud Shell of een lokaal CLI-venster en voer de volgende opdracht uit om de resourcegroep en alles wat deze bevat te verwijderen.

    az group delete --name <your-resource-group>
    

Mogelijk wilt u ook de modelbestanden verwijderen die u op uw lokale computer hebt gemaakt.

Volgende stappen

In deze zelfstudie hebt u aan de slag gegaan met Azure Digital Twins door een grafiek in uw exemplaar te bouwen met behulp van de Azure CLI. U hebt modellen, digitale dubbels en relaties gemaakt om een grafiek te vormen. U hebt ook enkele query's uitgevoerd in de grafiek om een idee te krijgen van de soorten vragen die Azure Digital Twins over een omgeving kan beantwoorden.

Ga verder met de volgende zelfstudie om Azure Digital Twins te combineren met andere Azure-services om een end-to-end scenario op basis van gegevens te voltooien: