Een gegevensgeschiedenisverbinding maken voor Azure Digital Twins

Gegevensgeschiedenis is een Azure Digital Twins-functie voor het automatisch historiseren van grafiekupdates naar Azure Data Explorer. Deze gegevens kunnen worden opgevraagd met behulp van de Azure Digital Twins-queryinvoegtoepassing voor Azure Data Explorer om inzicht te krijgen in uw omgeving in de loop van de tijd.

In dit artikel wordt beschreven hoe u een werkende gegevensgeschiedenisverbinding instelt tussen Azure Digital Twins en Azure Data Explorer. Azure CLI en Azure Portal worden gebruikt om de vereiste gegevensgeschiedenisbronnen in te stellen en te verbinden, waaronder:

Het bevat ook een voorbeelddubbelgrafiek die u kunt gebruiken om de historized grafiekupdates in Azure Data Explorer te bekijken.

Tip

Hoewel dit artikel gebruikmaakt van Azure Portal, kunt u ook werken met gegevensgeschiedenis met behulp van de 2022-05-31-versie van de rest-API's.

Vereisten

De omgeving voorbereiden op de Azure CLI

Notitie

U kunt Azure Cloud Shell ook gebruiken in de PowerShell-omgeving in plaats van de Bash-omgeving, indien gewenst. De opdrachten op deze pagina zijn geschreven voor de Bash-omgeving, zodat er mogelijk kleine aanpassingen moeten worden uitgevoerd in PowerShell.

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>"

Tip

U kunt ook de naam van uw abonnement in plaats van de ID gebruiken in de bovenstaande opdracht.

Als dit de eerste keer is dat u dit abonnement met Azure Digital Twins gebruikt, voert u deze opdracht uit om u te registreren bij de naamruimte van Azure Digital Twins. (Als u het niet zeker weet, kunt u de opdracht opnieuw uitvoeren, zelfs als u dit in het verleden een keer hebt gedaan.)

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 dit controleren door az dt --help op elk gewenst moment uit te voeren om een lijst weer te geven van de Azure Digital Twins-opdrachten op het hoogste niveau die beschikbaar zijn.

Lokale variabelen instellen voor CLI-sessie

Dit artikel bevat CLI-opdrachten die u kunt gebruiken om de gegevensgeschiedenisbronnen te maken. Om deze opdrachten later eenvoudig te kopiëren en uit te voeren, kunt u nu lokale variabelen instellen in uw CLI-sessie en deze variabelen later in de CLI-opdrachten raadplegen bij het maken van uw resources. Werk de tijdelijke aanduidingen (aangeduid met <...> vierkante haken) bij in de onderstaande opdrachten en voer deze opdrachten uit om de variabelen te maken. Zorg ervoor dat u de naamgevingsregels volgt die worden beschreven in de opmerkingen. Deze waarden worden later gebruikt bij het maken van de nieuwe resources.

Notitie

Deze opdrachten zijn geschreven voor de Bash-omgeving. Ze kunnen worden aangepast voor PowerShell als u liever een PowerShell CLI-omgeving gebruikt.

## General Setup
location="<your-resource-region>"
resourcegroup="<your-resource-group-name>"

## Azure Digital Twins Setup
# Instance name can contain letters, numbers, and hyphens. It must start and end with a letter or number, and be between 4 and 62 characters long.
dtname="<name-for-your-digital-twins-instance>"
# Connection name can contain letters, numbers, and hyphens. It must contain at least one letter, and be between 3 and 50 characters long.
connectionname="<name-for-your-data-history-connection>"

## Event Hub Setup
# Namespace can contain letters, numbers, and hyphens. It must start with a letter, end with a letter or number, and be between 6 and 50 characters long.
eventhubnamespace="<name-for-your-event-hub-namespace>"
# Event hub name can contain only letters, numbers, periods, hyphens and underscores. It must start and end with a letter or number.
eventhub="<name-for-your-event-hub>"

## Azure Data Explorer Setup
# Cluster name can contain only lowercase alphanumeric characters. It must start with a letter, and be between 4 and 22 characters long.
clustername="<name-for-your-cluster>"  
# Database name can contain only alphanumeric, spaces, dash and dot characters, and be up to 260 characters in length.
databasename="<name-for-your-database>"

# Enter a name for the table where relationship create and delete events will be stored.
relationshiplifecycletablename="<name-for-your-relationship-lifecycle-events-table>"
# Enter a name for the table where twin create and delete events will be stored.
twinlifecycletablename="<name-for-your-twin-lifecycle-events-table>"
# Optionally, enter a custom name for the table where twin property updates will be stored. If not provided, the table will be named AdtPropertyEvents.
twinpropertytablename="<name-for-your-twin-property-events-table>"

Een Azure Digital Twins-exemplaar maken met een beheerde identiteit

Als u al een Azure Digital Twins-exemplaar hebt, moet u ervoor zorgen dat u een door het systeem toegewezen beheerde identiteit hebt ingeschakeld.

Als u geen Azure Digital Twins-exemplaar hebt, volgt u de instructies in Het exemplaar maken met een beheerde identiteit om een Azure Digital Twins-exemplaar te maken met een door het systeem toegewezen beheerde identiteit voor de eerste keer.

Zorg er vervolgens voor dat u de rol Azure Digital Twins-gegevenseigenaar hebt voor het exemplaar. U vindt instructies in Machtigingen voor gebruikerstoegang instellen.

Als u de naam van uw exemplaar wilt toevoegen aan uw lokale CLI-variabelen, zodat deze automatisch wordt aangesloten op latere opdrachten die u uit dit artikel hebt gekopieerd, slaat u deze op in de variabele dtname als volgt:

dtname="<name-of-your-instance>"

Een Event Hubs-naamruimte en Event Hub maken

De volgende stap bestaat uit het maken van een Event Hubs-naamruimte en een Event Hub. Deze hub ontvangt meldingen over de levenscyclus van grafieken en updates van eigenschappen van het Azure Digital Twins-exemplaar en stuurt de berichten vervolgens door naar het Azure Data Explorer-doelcluster.

Als onderdeel van de configuratie van de gegevensgeschiedenisverbinding verleent u het Azure Digital Twins-exemplaar de rol Azure Event Hubs-gegevenseigenaar voor de Event Hub-resource.

Zie de documentatie van Event Hubs voor meer informatie over Event Hubs en hun mogelijkheden.

Notitie

Tijdens het instellen van de gegevensgeschiedenis moet lokale autorisatie zijn ingeschakeld op de Event Hub. Als u uiteindelijk lokale autorisatie wilt uitschakelen op uw Event Hub, schakelt u de autorisatie uit na het instellen van de verbinding. U moet ook enkele machtigingen aanpassen, zoals wordt beschreven in Netwerktoegang tot gegevensgeschiedenisresources beperken verderop in dit artikel.

Gebruik de volgende CLI-opdrachten om de vereiste resources te maken. De opdrachten gebruiken verschillende lokale variabelen (, , en $eventhub) die eerder zijn gemaakt in lokale variabelen instellen voor DE CLI-sessie. $eventhubnamespace$resourcegroup$location

Maak een Event Hubs-naamruimte:

az eventhubs namespace create --name $eventhubnamespace --resource-group $resourcegroup --location $location

Maak een Event Hub in uw naamruimte:

az eventhubs eventhub create --name $eventhub --resource-group $resourcegroup --namespace-name $eventhubnamespace

Een Kusto-cluster en -database (Azure Data Explorer) maken

Maak vervolgens een Kusto-cluster (Azure Data Explorer) en -database om de gegevens van Azure Digital Twins te ontvangen.

Als onderdeel van de configuratie van de gegevensgeschiedenisverbinding verleent u het Azure Digital Twins-exemplaar de rol Inzender op ten minste de database (deze kan ook worden beperkt tot het cluster) en de Beheer rol in de database.

Belangrijk

Zorg ervoor dat voor het cluster openbare netwerktoegang is ingeschakeld. Als het Azure Data Explorer-cluster openbare netwerktoegang heeft uitgeschakeld, kan Azure Digital Twins de tabellen en andere vereiste artefacten niet configureren en mislukt de installatie van de gegevensgeschiedenis.

Gebruik de volgende CLI-opdrachten om de vereiste resources te maken. De opdrachten gebruiken verschillende lokale variabelen (, , en $databasename) die eerder zijn gemaakt in lokale variabelen instellen voor DE CLI-sessie. $clustername$resourcegroup$location

Voeg eerst de Kusto-extensie toe aan uw CLI-sessie als u deze nog niet hebt.

az extension add --name kusto

Maak vervolgens het Kusto-cluster. De onderstaande opdracht vereist 5-10 minuten om uit te voeren en maakt een E2a v4-cluster in de ontwikkelaarslaag. Dit type cluster heeft één knooppunt voor het engine- en gegevensbeheercluster en is van toepassing op ontwikkelings- en testscenario's. Zie De juiste reken-SKU selecteren voor uw Azure Data Explorer-cluster en prijzen voor Azure Data Explorer voor meer informatie over de lagen in Azure Data Explorer en hoe u de juiste opties voor uw productieworkload selecteert.

az kusto cluster create --cluster-name $clustername --sku name="Dev(No SLA)_Standard_E2a_v4" tier="Basic" --resource-group $resourcegroup --location $location --type SystemAssigned

Maak een database in uw nieuwe Kusto-cluster (met behulp van de clusternaam van boven en op dezelfde locatie). Deze database wordt gebruikt voor het opslaan van contextuele Azure Digital Twins-gegevens. Met de onderstaande opdracht maakt u een database met een periode voor voorlopig verwijderen van 365 dagen en een hot-cacheperiode van 31 dagen. Zie az kusto database create voor meer informatie over de opties die beschikbaar zijn voor deze opdracht.

az kusto database create --cluster-name $clustername --database-name $databasename --resource-group $resourcegroup --read-write-database soft-delete-period=P365D hot-cache-period=P31D location=$location

Verbinding met gegevensgeschiedenis instellen

Nu u de vereiste resources hebt gemaakt, gebruikt u de opdracht in deze sectie om een gegevensgeschiedenisverbinding te maken tussen het Azure Digital Twins-exemplaar, de Event Hub en het Azure Data Explorer-cluster.

Met deze opdracht maakt u ook drie tabellen in uw Azure Data Explorer-database om respectievelijk dubbele eigenschapsupdates, levenscyclus-gebeurtenissen van dubbels en levenscyclus-gebeurtenissen voor relaties op te slaan. Zie Gegevenstypen en schema's voor meer informatie over deze typen historized gegevens en de bijbehorende Azure Data Explorer-tabellen.

Gebruik de opdracht in deze sectie om een gegevensgeschiedenisverbinding en de tabellen in Azure Data Explorer te maken. Met de opdracht wordt altijd een tabel gemaakt voor gebeurtenissen van historized twin-eigenschappen en bevat deze parameters voor het maken van de tabellen voor levenscyclus- en levenscyclusgebeurtenissen van dubbels.

Notitie

Bij deze opdracht wordt standaard ervan uitgegaan dat alle resources zich in dezelfde resourcegroep bevinden als het Azure Digital Twins-exemplaar. U kunt resources opgeven die zich in verschillende resourcegroepen bevinden met behulp van de parameteropties voor deze opdracht.

De onderstaande opdracht maakt gebruik van lokale variabelen die eerder zijn gemaakt in Lokale variabelen instellen voor CLI-sessie en heeft verschillende parameters, waaronder...

  • De namen van de levenscyclus- en dubbellevenscyclustabellen van relaties in Azure Data Explorer (deze parameters zijn optioneel als u deze gebeurtenistypen niet wilt historiseren, maar vereist als u deze gebeurtenistypen wel wilt historiseren)
  • Een optionele parameter voor het opgeven van de naam van de gebeurtenistabel van de dubbeleigenschap (als deze waarde niet is opgegeven, krijgt deze tabel standaard de naam AdtPropertyEvents ). Als u geen andere naam wilt opgeven, verwijdert u de --adx-property-events-table parameter uit de opdracht voordat u deze uitvoert.
  • De optionele parameter --adx-record-removals voor het inschakelen van historisatie voor verwijderingen van dubbele eigenschappen (gebeurtenissen die eigenschappen volledig verwijderen)
az dt data-history connection create adx --dt-name $dtname --cn $connectionname --adx-cluster-name $clustername --adx-database-name $databasename --eventhub $eventhub --eventhub-namespace $eventhubnamespace --adx-property-events-table $twinpropertytablename --adx-twin-events-table $twinlifecycletablename --adx-relationship-events-table $relationshiplifecycletablename --adx-record-removals true

Wanneer u de bovenstaande opdracht uitvoert, krijgt u de mogelijkheid om de benodigde machtigingen toe te wijzen die nodig zijn voor het instellen van uw gegevensgeschiedenisverbinding namens u (als u de benodigde machtigingen al hebt toegewezen, kunt u deze prompts overslaan). Deze machtigingen worden verleend aan de beheerde identiteit van uw Azure Digital Twins-exemplaar. De minimaal vereiste rollen zijn:

  • Azure Event Hubs-gegevenseigenaar op de Event Hub
  • Inzender die ten minste is gericht op de opgegeven database (deze kan ook worden beperkt tot het cluster)
  • Toewijzing van database-principal met rol Beheer (voor het maken/beheren van tabellen) binnen het bereik van de opgegeven database

Voor normale gegevensvlakbewerkingen kunnen deze rollen, indien gewenst, worden beperkt tot één Azure Event Hubs-gegevenszenderrol.

Nadat u de verbinding met de gegevensgeschiedenis hebt ingesteld, kunt u desgewenst de rollen verwijderen die zijn verleend aan uw Azure Digital Twins-exemplaar voor toegang tot de Event Hubs- en Azure Data Explorer-resources. Als u gegevensgeschiedenis wilt gebruiken, is de enige rol die het exemplaar nodig heeft, Azure Event Hubs-gegevenszender (of een hogere rol die deze machtigingen bevat, zoals Azure Event Hubs-gegevenseigenaar) in de Event Hubs-resource.

Notitie

Zodra de verbinding is ingesteld, leiden de standaardinstellingen in uw Azure Data Explorer-cluster tot een opnamelatentie van ongeveer 10 minuten of minder. U kunt deze latentie verminderen door streamingopname (minder dan 10 seconden latentie) of een opnamebatchbeleid in te schakelen. Zie De latentie van end-to-endopname van Azure Data Explorer voor meer informatie over de opnamelatentie van Azure Data Explorer.

Netwerktoegang tot gegevensgeschiedenisbronnen beperken

Als u de netwerktoegang wilt beperken tot de resources die betrokken zijn bij de gegevensgeschiedenis (uw Azure Digital Twins-exemplaar, Event Hub of Azure Data Explorer-cluster), moet u deze beperkingen instellen nadat u de gegevensgeschiedenisverbinding hebt ingesteld. Dit omvat het uitschakelen van lokale toegang voor uw resources, onder andere metingen om de netwerktoegang te verminderen.

Als u ervoor wilt zorgen dat uw gegevensgeschiedenisbronnen met elkaar kunnen communiceren, moet u ook de gegevensverbinding voor de Azure Data Explorer-database wijzigen om een door het systeem toegewezen beheerde identiteit te gebruiken.

Volg de onderstaande volgorde om ervoor te zorgen dat uw gegevensgeschiedenisverbinding correct is ingesteld wanneer uw resources beperkte netwerktoegang nodig hebben.

  1. Zorg ervoor dat lokale autorisatie is ingeschakeld voor uw gegevensgeschiedenisbronnen (uw Azure Digital Twins-exemplaar, event hub en Azure Data Explorer-cluster)
  2. De gegevensgeschiedenisverbinding maken
  3. Werk de gegevensverbinding voor de Azure Data Explorer-database bij om een door het systeem toegewezen beheerde identiteit te gebruiken. In Azure Portal kunt u dit doen door naar het Azure Data Explorer-cluster te navigeren en databases in het menu te gebruiken om naar de gegevensgeschiedenisdatabase te navigeren. Selecteer Gegevensverbindingen in het databasemenu. In de tabelvermelding voor uw gegevensgeschiedenisverbinding ziet u de optie beheerde identiteit toewijzen, waar u door het systeem toegewezen kunt kiezen. Screenshot of the option to assign a managed identity to a data connection in the Azure portal.
  4. U kunt nu lokale autorisatie uitschakelen of andere netwerkbeperkingen instellen voor de gewenste resources door de toegangsinstellingen in uw Azure Digital Twins-exemplaar, event hub of Azure Data Explorer-cluster te wijzigen.

Problemen met verbinding instellen oplossen

Hier volgen enkele veelvoorkomende fouten die kunnen optreden bij het instellen van een gegevensgeschiedenisverbinding en hoe u deze kunt oplossen.

  • Als u openbare netwerktoegang hebt uitgeschakeld voor uw Azure Data Explorer-cluster, treedt er een fout op dat de service de gegevensgeschiedenisverbinding niet heeft gemaakt, met het bericht 'De resource kan niet ACT vanwege een interne serverfout'. Het instellen van gegevensgeschiedenis mislukt als het Azure Data Explorer-cluster openbare netwerktoegang heeft uitgeschakeld, omdat Azure Digital Twins de tabellen en andere vereiste artefacten niet kan configureren.
  • (CLI-gebruikers) Als u de fout 'Kan geen azure Digital Twins-exemplaarverbinding maken' wordt weergegeven. Kan geen tabel en toewijzingsregel maken in de database. Controleer uw machtigingen voor Azure Database Explorer en voer deze uit az login om uw referenties te vernieuwen.' Los de fout op door uzelf toe te voegen als alldatabases Beheer onder Machtigingen in uw Azure Data Explorer-cluster.
  • (Cloud Shell-gebruikers) Als u Cloud Shell gebruikt en de fout 'Kan geen verbinding maken met MSI' wordt weergegeven. Controleer of MSI juist is geconfigureerd. Voer in plaats daarvan de opdracht uit met een lokale Azure CLI-installatie.

Verifiëren met een voorbeelddubbelgrafiek

Nu uw gegevensgeschiedenisverbinding is ingesteld, kunt u deze testen met gegevens van uw digitale dubbels.

Als u al tweelingen hebt in uw Azure Digital Twins-exemplaar dat actief graafupdates ontvangt (inclusief updates van tweelingeigenschappen of updates van het wijzigen van de structuur van de grafiek door elementen te maken of te verwijderen), kunt u deze sectie overslaan en de resultaten visualiseren met behulp van uw eigen resources.

Als u dit niet doet, gaat u door met deze sectie om een voorbeeldgrafiek in te stellen die levenscyclusgebeurtenissen van tweelingen en relaties ondergaat en updates voor tweelingeigenschappen genereert.

U kunt een voorbeeldgrafiek voor dit scenario instellen met behulp van de Azure Digital Twins-gegevenssimulator. De Azure Digital Twins-gegevenssimulator maakt dubbels en relaties in uw Azure Digital Twins-exemplaar en pusht voortdurend updates van eigenschappen naar de tweelingen.

Een voorbeeldgrafiek maken

U kunt de Azure Digital Twins-gegevenssimulator gebruiken om een voorbeelddubbelgrafiek in te richten en updates van eigenschappen naar deze grafiek te pushen. De tweelinggrafiek die hier is gemaakt, modelliseerde processen voor een zuivelbedrijf.

Open eerst de Azure Digital Twins-gegevenssimulator in uw browser. Stel deze velden in:

  • Exemplaar-URL: Voer de hostnaam van uw Azure Digital Twins-exemplaar in. De hostnaam vindt u op de portalpagina voor uw exemplaar en heeft een indeling zoals <Azure-Digital-Twins-instance-name>.api.<region-code>.digitaltwins.azure.net.
  • Simulatietype: Selecteer Zuivelfaciliteit in de vervolgkeuzelijst.

Selecteer Omgeving genereren.

Screenshot of the Azure Digital Twins Data simulator.

U ziet bevestigingsberichten op het scherm als modellen, tweelingen en relaties worden gemaakt in uw omgeving. Hiermee worden ook gebeurtenissen voor het maken van dubbels en relaties gegenereerd, die worden ge historiseerd naar Azure Data Explorer als gebeurtenissen voor de levenscyclus van dubbels en relaties.

Wanneer de simulatie gereed is, wordt de knop Simulatie starten ingeschakeld. Schuif omlaag en selecteer Simulatie starten om gesimuleerde gegevens naar uw Azure Digital Twins-exemplaar te pushen. Als u de tweelingen in uw Azure Digital Twins-exemplaar continu wilt bijwerken, houdt u dit browservenster op de voorgrond op uw bureaublad en voert u andere browseracties uit in een afzonderlijk venster. Hiermee worden doorlopend gebeurtenissen van dubbeleigenschappen gegenereerd die worden overgeslagen in Azure Data Explorer.

De historized updates weergeven in Azure Data Explorer

In deze sectie ziet u hoe u alle drie de typen historized updates kunt bekijken die zijn gegenereerd door de simulator en zijn opgeslagen in Azure Data Explorer-tabellen.

Begin in Azure Portal en navigeer naar het Azure Data Explorer-cluster dat u eerder hebt gemaakt. Kies het deelvenster Databases in het linkermenu om de databaseweergave te openen. Zoek de database die u voor dit artikel hebt gemaakt en schakel het selectievakje ernaast in en selecteer Query.

Screenshot of the Azure portal showing a database in an Azure Data Explorer cluster.

Vouw vervolgens het cluster en de database uit in het linkerdeelvenster om de naam van de gegevensgeschiedenistabellen weer te geven. Er moeten drie zijn: één voor levenscyclus-gebeurtenissen voor relaties, één voor levenscyclus-gebeurtenissen van dubbels en één voor update-gebeurtenissen voor eigenschappen van dubbels. U gebruikt deze tabelnamen om query's uit te voeren op de tabellen om de historized gegevens te controleren en weer te geven.

Screenshot of the Azure portal showing the query view for the database. The name of the data history table is highlighted.

Tabelvermeldingen verifiëren

Als u wilt controleren of gebeurtenissen worden ge historiseerd naar de database, begint u met het kopiëren van de volgende opdracht. Deze bevat een tijdelijke aanduiding voor de naam van de tabel met levenscyclusgebeurtenissen voor relaties. De opname voor de tabel wordt gewijzigd in de batchmodus , zodat deze elke 10 seconden gegevens uit de livesimulatie opneemt.

.alter table <relationship-lifecycle-events-table-name> policy ingestionbatching @'{"MaximumBatchingTimeSpan":"00:00:10", "MaximumNumberOfItems": 500, "MaximumRawDataSizeMB": 1024}'

Plak de opdracht in het queryvenster en vervang de tijdelijke aanduiding door de naam van de tabel met relatiegebeurtenissen. Selecteer de knop Uitvoeren om de opdracht uit te voeren.

Screenshot of the Azure portal showing the query view for the database. The Run button is highlighted.

Herhaal de opdracht nog twee keer met behulp van de naam van de tabel met levenscyclusgebeurtenissen van dubbels en vervolgens de tabel voor het bijwerken van eigenschappen om ook de opnamemodus van de andere tabellen bij te werken.

Voeg vervolgens de volgende opdrachten toe aan het queryvenster en voer ze uit. Elke opdracht bevat een tijdelijke aanduiding voor de naam van een van de tabellen en de opdrachten voeren het aantal items in de tabellen uit.

Notitie

Het kan tot vijf minuten duren voordat de eerste batch opgenomen gegevens wordt weergegeven.

<relationship-lifecycle-events-table-name>
| count

<twin-lifecycle-events-table-name>
| count

<twin-property-updates-table-name>
| count

U ziet in de resultaten dat het aantal items in elke tabel iets groter is dan 0, wat aangeeft dat de levenscyclus van relaties, de levenscyclus van dubbels en updategebeurtenissen van eigenschappen worden overgezet naar hun respectieve tabellen.

Tabel met updates van dubbeleigenschappen verkennen

In deze sectie gaat u meer verkennen met de gegevens van de eigenschap Twin bijwerken die zich in de tabel bevinden.

Voer eerst de volgende opdracht uit om 100 records in de tabel weer te geven:

<twin-property-updates-table-name>
| limit 100

Voer vervolgens een query uit op basis van de gegevens van uw tweelingen om de contextuele tijdreeksgegevens weer te geven.

Gebruik de onderstaande query om de uitstroom van alle zoutmachinedubbels in de melkfabriek van Oslo in kaart te brengen. Deze Kusto-query maakt gebruik van de Azure Digital Twins-invoegtoepassing om de interessedubbels te selecteren, deze tweelingen samen te voegen aan de tijdreeks voor de gegevensgeschiedenis in Azure Data Explorer en de resultaten vervolgens weer te geven. Zorg ervoor dat u de <ADT-instance-host-name> tijdelijke aanduiding vervangt door de hostnaam van uw exemplaar en de <table-name> tijdelijke aanduiding door de naam van de tabel met gebeurtenissen van de tweelingeigenschap.

let ADTendpoint = "https://<ADT-instance-host-name>";
let ADTquery = ```SELECT SALT_MACHINE.$dtId as tid
FROM DIGITALTWINS FACTORY 
JOIN SALT_MACHINE RELATED FACTORY.contains 
WHERE FACTORY.$dtId = 'OsloFactory'
AND IS_OF_MODEL(SALT_MACHINE , 'dtmi:assetGen:SaltMachine;1')```;
evaluate azure_digital_twins_query_request(ADTendpoint, ADTquery)
| extend Id = tostring(tid)
| join kind=inner (<table-name>) on Id
| extend val_double = todouble(Value)
| where Key == "OutFlow"
| render timechart with (ycolumns = val_double)

In de resultaten moeten de uitloopnummers in de loop van de tijd worden gewijzigd.

Screenshot of the Azure portal showing the query view for the database.

Problemen met de verbinding oplossen

Als u geen gegevens in Azure Data Explorer ziet, werkt de historisatiegegevensstroom niet goed. U kunt het probleem onderzoeken door uw Event Hubs-naamruimte te bekijken in Azure Portal, waarin grafieken worden weergegeven met de stroom berichten naar en uit de naamruimte. Hiermee kunt u zowel de stroom van binnenkomende berichten van Azure Digital Twins als de uitgaande berichten naar Azure Data Explorer controleren, zodat u kunt bepalen welk deel van de stroom niet werkt.

Screenshot of the Azure portal showing an Event Hubs namespace for the simulated environment.

Volgende stappen

Als u het zuivelscenario wilt blijven verkennen, kunt u meer voorbeeldquery's bekijken op GitHub die laten zien hoe u de prestaties van de zuivelbewerking kunt bewaken op basis van machinetype, fabriek, onderhoudstechnicus en verschillende combinaties van deze parameters.

Als u Grafana-dashboards wilt bouwen die de prestaties van de zuivelbewerking visualiseren, leest u Dashboards maken met Azure Digital Twins, Azure Data Explorer en Grafana.

Zie Query's uitvoeren met de Azure Data Explorer-invoegtoepassing en dit blogbericht voor meer informatie over het gebruik van de Azure Digital Twins-queryinvoegtoepassing voor Azure Data Explorer. U kunt hier ook meer lezen over de invoegtoepassing: Query's uitvoeren met de Azure Data Explorer-invoegtoepassing.