Tworzenie połączenia historii danych dla usługi Azure Digital Twins
Historia danych to funkcja usługi Azure Digital Twins umożliwiająca automatyczne historizowanie aktualizacji grafu w usłudze Azure Data Explorer. Te dane można wykonywać przy użyciu wtyczki zapytań usługi Azure Digital Twins dla usługi Azure Data Explorer , aby uzyskać szczegółowe informacje na temat środowiska w czasie.
W tym artykule pokazano, jak skonfigurować działające połączenie historii danych między usługą Azure Digital Twins i usługą Azure Data Explorer. Używa interfejsu wiersza polecenia platformy Azure i witryny Azure Portal do konfigurowania i łączenia wymaganych zasobów historii danych, w tym:
- wystąpienie usługi Azure Digital Twins
- Przestrzeń nazw usługi Event Hubs zawierająca centrum zdarzeń
- klaster usługi Azure Data Explorer zawierający bazę danych
Zawiera również przykładowy graf bliźniaczej reprezentacji, którego można użyć do wyświetlenia aktualizacji wykresu historii w usłudze Azure Data Explorer.
Napiwek
Mimo że w tym artykule jest używana witryna Azure Portal, możesz również pracować z historią danych przy użyciu interfejsów API rest w wersji 2022-05-31 .
Wymagania wstępne
Przygotowywanie środowiska dla interfejsu wiersza polecenia platformy Azure
Użyj środowiska powłoki Bash w usłudze Azure Cloud Shell. Aby uzyskać więcej informacji, zobacz Szybki start dotyczący powłoki Bash w usłudze Azure Cloud Shell.
Jeśli wolisz uruchamiać polecenia referencyjne interfejsu wiersza polecenia lokalnie, zainstaluj interfejs wiersza polecenia platformy Azure. Jeśli korzystasz z systemu Windows lub macOS, rozważ uruchomienie interfejsu wiersza polecenia platformy Azure w kontenerze Docker. Aby uzyskać więcej informacji, zobacz Jak uruchomić interfejs wiersza polecenia platformy Azure w kontenerze platformy Docker.
Jeśli korzystasz z instalacji lokalnej, zaloguj się do interfejsu wiersza polecenia platformy Azure za pomocą polecenia az login. Aby ukończyć proces uwierzytelniania, wykonaj kroki wyświetlane w terminalu. Aby uzyskać inne opcje logowania, zobacz Logowanie się przy użyciu interfejsu wiersza polecenia platformy Azure.
Po wyświetleniu monitu zainstaluj rozszerzenie interfejsu wiersza polecenia platformy Azure podczas pierwszego użycia. Aby uzyskać więcej informacji na temat rozszerzeń, zobacz Korzystanie z rozszerzeń w interfejsie wiersza polecenia platformy Azure.
Uruchom polecenie az version, aby znaleźć zainstalowane wersje i biblioteki zależne. Aby uaktualnić do najnowszej wersji, uruchom polecenie az upgrade.
Uwaga
Możesz również użyć usługi Azure Cloud Shell w środowisku programu PowerShell zamiast środowiska powłoki Bash, jeśli wolisz. Polecenia na tej stronie są napisane dla środowiska powłoki Bash, więc mogą wymagać pewnych niewielkich korekt do uruchomienia w programie PowerShell.
Konfigurowanie sesji interfejsu wiersza polecenia
Aby rozpocząć pracę z usługą Azure Digital Twins w interfejsie wiersza polecenia, najpierw należy się zalogować i ustawić kontekst interfejsu wiersza polecenia na subskrypcję dla tej sesji. Uruchom następujące polecenia w oknie interfejsu wiersza polecenia:
az login
az account set --subscription "<your-Azure-subscription-ID>"
Napiwek
Możesz również użyć nazwy subskrypcji zamiast identyfikatora w powyższym poleceniu.
Jeśli po raz pierwszy użyto tej subskrypcji z usługą Azure Digital Twins, uruchom to polecenie, aby zarejestrować się w przestrzeni nazw usługi Azure Digital Twins. (Jeśli nie masz pewności, możesz uruchomić go ponownie, nawet jeśli zrobiłeś to kiedyś w przeszłości).
az provider register --namespace 'Microsoft.DigitalTwins'
Następnie dodasz rozszerzenie Microsoft Azure IoT dla interfejsu wiersza polecenia platformy Azure, aby umożliwić interakcję z usługą Azure Digital Twins i innymi usługami IoT. Uruchom to polecenie, aby upewnić się, że masz najnowszą wersję rozszerzenia:
az extension add --upgrade --name azure-iot
Teraz możesz przystąpić do pracy z usługą Azure Digital Twins w interfejsie wiersza polecenia platformy Azure.
Możesz to sprawdzić, uruchamiając polecenie az dt --help
w dowolnym momencie, aby wyświetlić listę dostępnych poleceń usługi Azure Digital Twins najwyższego poziomu.
Konfigurowanie zmiennych lokalnych dla sesji interfejsu wiersza polecenia
Ten artykuł zawiera polecenia interfejsu wiersza polecenia, których można użyć do tworzenia zasobów historii danych. Aby ułatwić kopiowanie i uruchamianie tych poleceń później, możesz skonfigurować zmienne lokalne w sesji interfejsu wiersza polecenia teraz, a następnie odwołać się do tych zmiennych w kolejnych poleceniach interfejsu wiersza polecenia podczas tworzenia zasobów. Zaktualizuj symbole zastępcze (zidentyfikowane z <...>
nawiasami kwadratowymi) w poniższych poleceniach i uruchom te polecenia, aby utworzyć zmienne. Pamiętaj, aby postępować zgodnie z regułami nazewnictwa opisanymi w komentarzach. Te wartości będą używane później podczas tworzenia nowych zasobów.
Uwaga
Te polecenia są napisane dla środowiska powłoki Bash. Można je dostosować dla programu PowerShell, jeśli wolisz używać środowiska interfejsu wiersza polecenia programu PowerShell.
## 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>"
Tworzenie wystąpienia usługi Azure Digital Twins przy użyciu tożsamości zarządzanej
Jeśli masz już wystąpienie usługi Azure Digital Twins, upewnij się, że włączono dla niego tożsamość zarządzaną przypisaną przez system.
Jeśli nie masz wystąpienia usługi Azure Digital Twins, postępuj zgodnie z instrukcjami w temacie Tworzenie wystąpienia z tożsamością zarządzaną, aby utworzyć wystąpienie usługi Azure Digital Twins z tożsamością zarządzaną przypisaną przez system po raz pierwszy.
Następnie upewnij się, że masz rolę właściciela danych usługi Azure Digital Twins w wystąpieniu. Instrukcje można znaleźć w temacie Konfigurowanie uprawnień dostępu użytkowników.
Jeśli chcesz dodać nazwę wystąpienia do lokalnych zmiennych interfejsu wiersza polecenia, aby automatycznie zostały podłączone do późniejszych poleceń skopiowanych z tego artykułu, zapisz je w zmiennej dtname
w następujący sposób:
dtname="<name-of-your-instance>"
Tworzenie przestrzeni nazw i centrum zdarzeń usługi Event Hubs
Następnym krokiem jest utworzenie przestrzeni nazw usługi Event Hubs i centrum zdarzeń. To centrum otrzyma powiadomienia o cyklu życia grafu i aktualizacji właściwości z wystąpienia usługi Azure Digital Twins, a następnie przekaże komunikaty do docelowego klastra usługi Azure Data Explorer.
W ramach konfiguracji połączenia historii danych później przyznasz wystąpieniu usługi Azure Digital Twins rolę Właściciel danych usługi Azure Event Hubs w zasobie centrum zdarzeń.
Aby uzyskać więcej informacji na temat usługi Event Hubs i ich możliwości, zobacz dokumentację usługi Event Hubs.
Uwaga
Podczas konfigurowania historii danych lokalna autoryzacja musi być włączona w centrum zdarzeń. Jeśli ostatecznie chcesz wyłączyć autoryzację lokalną w centrum zdarzeń, wyłącz autoryzację po skonfigurowaniu połączenia. Musisz również dostosować niektóre uprawnienia opisane w temacie Ograniczanie dostępu sieciowego do zasobów historii danych w dalszej części tego artykułu.
Użyj następujących poleceń interfejsu wiersza polecenia, aby utworzyć wymagane zasoby. Polecenia używają kilku zmiennych lokalnych (, , i $eventhub
), które zostały utworzone wcześniej w temacie Konfigurowanie zmiennych lokalnych dla sesji interfejsu wiersza $eventhubnamespace
polecenia. $resourcegroup
$location
Utwórz przestrzeń nazw usługi Event Hubs:
az eventhubs namespace create --name $eventhubnamespace --resource-group $resourcegroup --location $location
Utwórz centrum zdarzeń w przestrzeni nazw:
az eventhubs eventhub create --name $eventhub --resource-group $resourcegroup --namespace-name $eventhubnamespace
Tworzenie klastra i bazy danych kusto (Azure Data Explorer)
Następnie utwórz klaster Kusto (Azure Data Explorer) i bazę danych, aby odbierać dane z usługi Azure Digital Twins.
W ramach konfiguracji połączenia historii danych później przyznasz wystąpieniu usługi Azure Digital Twins rolę Współautor co najmniej w bazie danych (może ona być również ograniczona do klastra) oraz rolę Administracja w bazie danych.
Ważne
Upewnij się, że klaster ma włączony dostęp do sieci publicznej. Jeśli klaster usługi Azure Data Explorer ma wyłączony dostęp do sieci publicznej, usługa Azure Digital Twins nie będzie mogła skonfigurować tabel i innych wymaganych artefaktów, a konfiguracja historii danych zakończy się niepowodzeniem.
Użyj następujących poleceń interfejsu wiersza polecenia, aby utworzyć wymagane zasoby. Polecenia używają kilku zmiennych lokalnych (, , i $databasename
), które zostały utworzone wcześniej w temacie Konfigurowanie zmiennych lokalnych dla sesji interfejsu wiersza $clustername
polecenia. $resourcegroup
$location
Zacznij od dodania rozszerzenia Kusto do sesji interfejsu wiersza polecenia, jeśli jeszcze go nie masz.
az extension add --name kusto
Następnie utwórz klaster Kusto. Poniższe polecenie wymaga wykonania 5–10 minut i utworzy klaster E2a v4 w warstwie dewelopera. Ten typ klastra ma jeden węzeł dla aparatu i klastra zarządzania danymi i ma zastosowanie do scenariuszy programowania i testowania. Aby uzyskać więcej informacji na temat warstw w usłudze Azure Data Explorer i sposobu wybierania odpowiednich opcji dla obciążenia produkcyjnego, zobacz Wybieranie odpowiedniej jednostki SKU obliczeniowej dla klastra usługi Azure Data Explorer i cennika usługi Azure Data Explorer.
az kusto cluster create --cluster-name $clustername --sku name="Dev(No SLA)_Standard_E2a_v4" tier="Basic" --resource-group $resourcegroup --location $location --type SystemAssigned
Utwórz bazę danych w nowym klastrze Kusto (przy użyciu nazwy klastra z powyższej i w tej samej lokalizacji). Ta baza danych będzie używana do przechowywania kontekstowych danych usługi Azure Digital Twins. Poniższe polecenie tworzy bazę danych z okresem usuwania nietrwałego 365 dni i okresem gorącej pamięci podręcznej 31 dni. Aby uzyskać więcej informacji na temat opcji dostępnych dla tego polecenia, zobacz az kusto database create.
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
Konfigurowanie połączenia historii danych
Po utworzeniu wymaganych zasobów użyj polecenia w tej sekcji, aby utworzyć połączenie historii danych między wystąpieniem usługi Azure Digital Twins, centrum zdarzeń i klastrem usługi Azure Data Explorer.
To polecenie spowoduje również utworzenie trzech tabel w bazie danych usługi Azure Data Explorer w celu przechowywania aktualizacji właściwości bliźniaczej reprezentacji, zdarzeń cyklu życia bliźniaczej reprezentacji i zdarzeń cyklu życia relacji odpowiednio. Aby uzyskać więcej informacji o tych typach danych z historizowanych i odpowiadających im tabelach usługi Azure Data Explorer, zobacz Typy danych i schematy.
Użyj polecenia w tej sekcji, aby utworzyć połączenie historii danych i tabele w usłudze Azure Data Explorer. Polecenie zawsze tworzy tabelę dla zdarzeń właściwości bliźniaczej reprezentacji historii i zawiera parametry służące do tworzenia tabel dla cyklu życia relacji i zdarzeń cyklu życia bliźniaczej reprezentacji.
Uwaga
Domyślnie to polecenie zakłada, że wszystkie zasoby znajdują się w tej samej grupie zasobów co wystąpienie usługi Azure Digital Twins. Zasoby, które znajdują się w różnych grupach zasobów, można określić przy użyciu opcji parametrów dla tego polecenia.
Poniższe polecenie używa zmiennych lokalnych utworzonych wcześniej w temacie Konfigurowanie zmiennych lokalnych dla sesji interfejsu wiersza polecenia i zawiera kilka parametrów, w tym...
- Nazwy tabel cyklu życia relacji i cyklu życia reprezentacji bliźniaczej w usłudze Azure Data Explorer (te parametry są opcjonalne, jeśli nie chcesz historiizować tych typów zdarzeń, ale są wymagane, jeśli chcesz historiizować te typy zdarzeń)
- Opcjonalny parametr określający nazwę tabeli zdarzeń właściwości bliźniaczej (jeśli ta wartość nie jest podana, ta tabela będzie domyślnie nosiła nazwę AdtPropertyEvents ). Jeśli nie chcesz określić innej nazwy, usuń
--adx-property-events-table
parametr z polecenia przed jego uruchomieniem. - Opcjonalny parametr
--adx-record-removals
umożliwiający włączenie historyzacji dla usuwania właściwości bliźniaczej reprezentacji (zdarzenia, które całkowicie usuwają właściwości)
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
Podczas wykonywania powyższego polecenia będziesz mieć możliwość przypisania niezbędnych uprawnień wymaganych do skonfigurowania połączenia historii danych w Twoim imieniu (jeśli masz już przypisane niezbędne uprawnienia, możesz pominąć te monity). Te uprawnienia są przyznawane tożsamości zarządzanej wystąpienia usługi Azure Digital Twins. Minimalne wymagane role to:
- Właściciel danych usługi Azure Event Hubs w centrum zdarzeń
- Współautor w zakresie co najmniej do określonej bazy danych (może być również o określonym zakresie w klastrze)
- Przypisanie jednostki bazy danych z rolą Administracja (na potrzeby tworzenia tabel/ zarządzania) w zakresie określonej bazy danych
W przypadku regularnej operacji płaszczyzny danych te role można zmniejszyć do pojedynczej roli nadawcy danych usługi Azure Event Hubs, jeśli jest to konieczne.
Po skonfigurowaniu połączenia historii danych możesz opcjonalnie usunąć role przyznane wystąpieniu usługi Azure Digital Twins w celu uzyskania dostępu do zasobów usługi Event Hubs i usługi Azure Data Explorer. Aby można było używać historii danych, jedyną rolą, jaką wymaga wystąpienie, jest nadawca danych usługi Azure Event Hubs (lub wyższa rola obejmująca te uprawnienia, takie jak właściciel danych usługi Azure Event Hubs) w zasobie usługi Event Hubs.
Uwaga
Po skonfigurowaniu połączenia domyślne ustawienia w klastrze usługi Azure Data Explorer spowodują opóźnienie pozyskiwania około 10 minut lub mniej. To opóźnienie można zmniejszyć, włączając pozyskiwanie przesyłania strumieniowego (mniej niż 10 sekund opóźnienia) lub zasady dzielenia na partie pozyskiwania. Aby uzyskać więcej informacji na temat opóźnienia pozyskiwania w usłudze Azure Data Explorer, zobacz Kompleksowe opóźnienie pozyskiwania.
Ograniczanie dostępu sieciowego do zasobów historii danych
Jeśli chcesz ograniczyć dostęp sieciowy do zasobów zaangażowanych w historię danych (wystąpienie usługi Azure Digital Twins, centrum zdarzeń lub klaster usługi Azure Data Explorer), należy ustawić te ograniczenia po skonfigurowaniu połączenia historii danych. Obejmuje to wyłączenie dostępu lokalnego dla zasobów, między innymi w celu zmniejszenia dostępu do sieci.
Aby upewnić się, że zasoby historii danych mogą komunikować się ze sobą, należy również zmodyfikować połączenie danych dla bazy danych usługi Azure Data Explorer w celu używania tożsamości zarządzanej przypisanej przez system.
Postępuj zgodnie z poniższą kolejnością kroków, aby upewnić się, że połączenie historii danych jest skonfigurowane prawidłowo, gdy zasoby potrzebują ograniczonego dostępu do sieci.
- Upewnij się, że w zasobach historii danych włączono autoryzację lokalną (wystąpienie usługi Azure Digital Twins, centrum zdarzeń i klaster usługi Azure Data Explorer)
- Tworzenie połączenia historii danych
- Zaktualizuj połączenie danych dla bazy danych usługi Azure Data Explorer, aby użyć przypisanej przez system tożsamości zarządzanej. W witrynie Azure Portal możesz to zrobić, przechodząc do klastra usługi Azure Data Explorer i korzystając z pozycji Bazy danych w menu, aby przejść do bazy danych historii danych. W menu bazy danych wybierz pozycję Połączenia danych. W wpisie tabeli dla połączenia historii danych powinna zostać wyświetlona opcja Przypisywanie tożsamości zarządzanej, w której można wybrać opcję Przypisanie systemu.
- Teraz możesz wyłączyć autoryzację lokalną lub ustawić inne ograniczenia sieci dla żądanych zasobów, zmieniając ustawienia dostępu w wystąpieniu usługi Azure Digital Twins, centrum zdarzeń lub klastrze usługi Azure Data Explorer.
Rozwiązywanie problemów z konfiguracją połączenia
Poniżej przedstawiono kilka typowych błędów, które mogą wystąpić podczas konfigurowania połączenia historii danych i sposobu ich rozwiązywania.
- Jeśli masz wyłączony dostęp do sieci publicznej dla klastra usługi Azure Data Explorer, wystąpi błąd informujący, że usługa nie może utworzyć połączenia historii danych z komunikatem "Zasób nie może działać z powodu wewnętrznego błędu serwera". Konfiguracja historii danych zakończy się niepowodzeniem, jeśli klaster usługi Azure Data Explorer ma wyłączony dostęp do sieci publicznej, ponieważ usługa Azure Digital Twins nie będzie mogła skonfigurować tabel i innych wymaganych artefaktów.
- (użytkownicy interfejsu wiersza polecenia) Jeśli wystąpi błąd "Nie można utworzyć połączenia wystąpienia usługi Azure Digital Twins. Nie można utworzyć tabeli i reguły mapowania w bazie danych. Sprawdź swoje uprawnienia dla Eksploratora usługi Azure Database i uruchom
az login
polecenie , aby odświeżyć poświadczenia" — rozwiąż ten błąd, dodając siebie jako bazę danych AllDatabases Administracja w obszarze Uprawnienia w klastrze usługi Azure Data Explorer. - (Użytkownicy usługi Cloud Shell) Jeśli używasz usługi Cloud Shell i występuje błąd "Nie można nawiązać połączenia z tożsamością usługi zarządzanej. Upewnij się, że tożsamość usługi zarządzanej jest skonfigurowana poprawnie" — spróbuj zamiast tego uruchomić polecenie z lokalną instalacją interfejsu wiersza polecenia platformy Azure.
Weryfikowanie przy użyciu przykładowego grafu bliźniaczej reprezentacji
Po skonfigurowaniu połączenia historii danych możesz przetestować je przy użyciu danych z cyfrowych reprezentacji bliźniaczych.
Jeśli masz już reprezentacje bliźniacze w wystąpieniu usługi Azure Digital Twins, które aktywnie otrzymują aktualizacje grafu (w tym aktualizacje właściwości bliźniaczej lub aktualizacje ze zmiany struktury grafu przez utworzenie lub usunięcie elementów), możesz pominąć tę sekcję i zwizualizować wyniki przy użyciu własnych zasobów.
W przeciwnym razie przejdź do tej sekcji, aby skonfigurować przykładowy graf, który będzie przechodzić zdarzenia cyklu życia bliźniaczej reprezentacji i relacji oraz generować aktualizacje właściwości bliźniaczej reprezentacji.
Przykładowy graf dla tego scenariusza można skonfigurować przy użyciu symulatora danych usługi Azure Digital Twins. Symulator danych usługi Azure Digital Twins tworzy reprezentacje bliźniacze i relacje w wystąpieniu usługi Azure Digital Twins i stale wypycha aktualizacje właściwości do bliźniaczych reprezentacji.
Tworzenie przykładowego grafu
Możesz użyć symulatora danych usługi Azure Digital Twins, aby aprowizować przykładowy graf bliźniaczej reprezentacji i wypychać do niego aktualizacje właściwości. Wykres bliźniaczy utworzony tutaj modeluje procesy wklejania dla firmy mlecznej.
Zacznij od otwarcia symulatora danych usługi Azure Digital Twins w przeglądarce. Ustaw następujące pola:
- Adres URL wystąpienia: wprowadź nazwę hosta wystąpienia usługi Azure Digital Twins. Nazwa hosta można znaleźć na stronie portalu dla twojego wystąpienia i ma format taki jak
<Azure-Digital-Twins-instance-name>.api.<region-code>.digitaltwins.azure.net
. - Typ symulacji: wybierz pozycję Mleczarnia z menu rozwijanego.
Wybierz pozycję Generuj środowisko.
Na ekranie będą wyświetlane komunikaty potwierdzające, gdy w środowisku są tworzone modele, reprezentacje bliźniacze i relacje. Spowoduje to również wygenerowanie zdarzeń tworzenia reprezentacji bliźniaczej i relacji, które zostaną odpowiednio wygenerowane w usłudze Azure Data Explorer jako zdarzenia cyklu życia reprezentacji bliźniaczej i relacji.
Gdy symulacja będzie gotowa, przycisk Rozpocznij symulację zostanie włączony. Przewiń w dół i wybierz pozycję Rozpocznij symulację , aby wypchnąć symulowane dane do wystąpienia usługi Azure Digital Twins. Aby stale aktualizować bliźniacze reprezentacje bliźniacze w wystąpieniu usługi Azure Digital Twins, zachowaj to okno przeglądarki na pierwszym planie na pulpicie i wykonaj inne akcje przeglądarki w osobnym oknie. Spowoduje to ciągłe generowanie zdarzeń aktualizacji właściwości bliźniaczej, które będą historizowane w usłudze Azure Data Explorer.
Wyświetlanie historii aktualizacji w usłudze Azure Data Explorer
W tej sekcji pokazano, jak wyświetlić wszystkie trzy typy historiizowanych aktualizacji, które zostały wygenerowane przez symulator i przechowywane w tabelach usługi Azure Data Explorer.
Rozpocznij pracę w witrynie Azure Portal i przejdź do utworzonego wcześniej klastra usługi Azure Data Explorer. Wybierz okienko Bazy danych z menu po lewej stronie, aby otworzyć widok bazy danych. Znajdź bazę danych utworzoną dla tego artykułu i zaznacz pole wyboru obok niej, a następnie wybierz pozycję Zapytanie.
Następnie rozwiń klaster i bazę danych w okienku po lewej stronie, aby wyświetlić nazwę tabel historii danych. Powinny istnieć trzy: jeden dla zdarzeń cyklu życia relacji, jeden dla zdarzeń cyklu życia bliźniaczej reprezentacji i jeden dla zdarzeń aktualizacji właściwości bliźniaczej. Użyjesz tych nazw tabel do uruchamiania zapytań w tabelach w celu zweryfikowania i wyświetlenia danych z historizowanych.
Weryfikowanie wpisów tabeli
Aby sprawdzić, czy zdarzenia są historizowane w bazie danych, zacznij od skopiowania następującego polecenia. Zawiera symbol zastępczy nazwy tabeli zdarzeń cyklu życia relacji i zmieni pozyskiwanie tabeli na tryb wsadowy, aby pozyskiwać dane z symulacji na żywo co 10 sekund.
.alter table <relationship-lifecycle-events-table-name> policy ingestionbatching @'{"MaximumBatchingTimeSpan":"00:00:10", "MaximumNumberOfItems": 500, "MaximumRawDataSizeMB": 1024}'
Wklej polecenie w oknie zapytania, zastępując symbol zastępczy nazwą tabeli zdarzeń relacji. Wybierz przycisk Uruchom, aby uruchomić polecenie.
Powtórz to polecenie jeszcze dwa razy, używając nazwy tabeli zdarzeń cyklu życia bliźniaczej reprezentacji bliźniaczej, a następnie tabeli aktualizacji właściwości w celu zaktualizowania trybu pozyskiwania innych tabel.
Następnie dodaj następujące polecenia do okna zapytania i uruchom je. Każde polecenie zawiera symbol zastępczy nazwy jednej z tabel, a polecenia będą zwracać liczbę elementów w tabelach.
Uwaga
Wyświetlenie pierwszej partii pozyskanych danych może potrwać do 5 minut.
<relationship-lifecycle-events-table-name>
| count
<twin-lifecycle-events-table-name>
| count
<twin-property-updates-table-name>
| count
W wynikach powinny zostać wyświetlone informacje o tym, że liczba elementów w każdej tabeli jest większa niż 0, co wskazuje, że cykl życia relacji, cykl życia bliźniaczej reprezentacji i zdarzenia aktualizacji właściwości są historizowane do odpowiednich tabel.
Eksplorowanie tabeli aktualizacji właściwości bliźniaczej reprezentacji
W tej sekcji wykonasz więcej eksploracji przy użyciu danych aktualizacji właściwości bliźniaczej, które są w tabeli.
Najpierw uruchom następujące polecenie, aby wyświetlić 100 rekordów w tabeli:
<twin-property-updates-table-name>
| limit 100
Następnie uruchom zapytanie na podstawie danych bliźniaczych reprezentacji, aby wyświetlić kontekstowe dane szeregów czasowych.
Użyj poniższego zapytania, aby wykres odpływu wszystkich bliźniaczych reprezentacji maszyny solnej w przykładowej fabryce mlecznej Oslo. To zapytanie Kusto używa wtyczki Azure Digital Twins do wybierania interesujących bliźniaczych reprezentacji bliźniaczych, łączy te bliźniacze z szeregami czasowymi historii danych w usłudze Azure Data Explorer, a następnie tworzy wykresy wyników. Pamiętaj, aby zastąpić <ADT-instance-host-name>
symbol zastępczy nazwą hosta wystąpienia, a <table-name>
symbol zastępczy nazwą tabeli zdarzeń właściwości bliźniaczej reprezentacji.
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)
Wyniki powinny pokazywać liczby odpływów zmieniające się w czasie.
Rozwiązywanie problemów z połączeniem
Jeśli nie widzisz danych w usłudze Azure Data Explorer, przepływ danych historyzacji nie działa prawidłowo. Problem można zbadać, wyświetlając przestrzeń nazw usługi Event Hubs w witrynie Azure Portal, która wyświetla wykresy przedstawiające przepływ komunikatów do i z przestrzeni nazw. Pozwoli to zweryfikować zarówno przepływ przychodzących komunikatów z usługi Azure Digital Twins, jak i wychodzących komunikatów do usługi Azure Data Explorer, aby ułatwić określenie, która część przepływu nie działa.
Następne kroki
Aby kontynuować eksplorowanie scenariusza mlecznego, możesz wyświetlić więcej przykładowych zapytań w usłudze GitHub , które pokazują, jak można monitorować wydajność operacji mlecznej na podstawie typu maszyny, fabryki, technik konserwacji i różnych kombinacji tych parametrów.
Aby utworzyć pulpity nawigacyjne narzędzia Grafana, które wizualizują wydajność operacji nabiału, przeczytaj Tworzenie pulpitów nawigacyjnych za pomocą usługi Azure Digital Twins, Usługi Azure Data Explorer i narzędzia Grafana.
Aby uzyskać więcej informacji na temat korzystania z wtyczki zapytań usługi Azure Digital Twins dla usługi Azure Data Explorer, zobacz Wykonywanie zapytań za pomocą wtyczki usługi Azure Data Explorer i ten wpis w blogu. Więcej informacji na temat wtyczki można znaleźć tutaj: Wykonywanie zapytań za pomocą wtyczki usługi Azure Data Explorer.