Migrace Time Series Insights Gen2 na Real-Time Intelligence v Microsoft Fabric
Poznámka
Služba Time Series Insights bude vyřazena 7. července 2024. Zvažte migraci stávajících prostředí na alternativní řešení co nejdříve. Pro více informací o vyřazení a migraci navštivte naši dokumentaci .
Přehled
Eventhouse je databáze časových řad v Real-Time Intelligence. Slouží jako cíl pro migraci dat mimo Time Series Insights.
Doporučení pro migraci na vysoké úrovni
Vlastnost | Doporučená migrace |
---|---|
Ingestování JSON z centra s transformací a escapováním | získání dat ze služby Azure Event Hubs |
Otevřít studené úložiště | Dostupnost Eventhouse OneLake |
Konektor Power BI | Použijte konektor Eventhouse Power BI. Přepište TSQ na KQL ručně. |
Konektor Sparku | Migrujte data do Eventhouse. Použití poznámkového bloku s Apache Sparkem k dotazování v eventhousu nebo Prozkoumání dat ve vašem datovém jezeře pomocí poznámkového bloku |
Hromadné nahrání | Získání dat ze služby Azure Storage |
Model časové řady | Dá se exportovat jako soubor JSON. Do Eventhouse je možné importovat. Sémantika grafů Kusto umožňuje modelování, procházení a analýzu hierarchie modelu časové řady jako grafu |
Průzkumník časových řad | Real-Time řídicího panelu, sestavy Power BI nebo vytvoření vlastního řídicího panelu pomocí KustoTrender |
Dotazovací jazyk | Přepište dotazy v KQL. |
Migrace telemetrie
Pokud chcete načíst kopii všech dat v prostředí, použijte PT=Time
složku v účtu úložiště. Další informace naleznete v tématu Datové úložiště.
Migrace – krok 1 – získání statistik o telemetrických datech
Údaje
- Přehled prostředí
- Zapište ID prostředí z první části plně kvalifikovaného názvu domény Data Access (například d390b0b0-1445-4c0c-8365-68d6382c1c2a z .env.crystal-dev.windows-int.net)
- Přehled prostředí – konfigurace úložiště> – účet úložiště>
- Získání statistik složek pomocí Průzkumníka služby Storage
- Velikost záznamu a počet blobů ve složce
PT=Time
.
- Velikost záznamu a počet blobů ve složce
Migrace – krok 2 – migrace dat do eventhouse
Vytvořit prostor pro akce
Pokud chcete pro proces migrace nastavit událostní dům, postupujte podle kroků v části jak vytvořit událostní dům.
Příjem dat
Pokud chcete načíst data pro účet úložiště odpovídající vaší instanci Time Series Insights, postupujte podle kroků v získávání dat ze služby Azure Storage.
Ujistěte se, že:
Vyberte příslušný kontejner a zadejte jeho identifikátor URI spolu s potřebným tokenem SAS nebo klíčem účtu.
Nakonfigurujte cestu ke složce filtrů souborů jako
V=1/PT=Time
pro filtrování příslušných objektů blob.Ověřte odvozené schéma a odeberte všechny zřídka dotazované sloupce a zachovejte alespoň časové razítko, sloupce TSID a hodnoty. Aby se všechna vaše data zkopírovala do Eventhouse, přidejte další sloupec a použijte DropMappedFields mapovací transformaci.
Dokončete proces příjmu dat.
Dotazování na data
Teď, když jste data úspěšně ingestovali, můžete začít je zkoumat pomocí sady dotazů KQL. Pokud potřebujete získat přístup k datům z vlastní klientské aplikace, eventhouse poskytuje sady SDK pro hlavní programovací jazyky, jako je C# (link), Java (link) a Node.js (link).
Migrace modelu time series do Azure Data Exploreru
Model si můžete stáhnout ve formátu JSON z prostředí TSI pomocí uživatelského rozhraní PRŮZKUMNÍKa TSI nebo rozhraní API služby TSM Batch. Model je pak možné importovat do eventhouse.
Stáhněte si TSM z uživatelského prostředí TSI.
Odstraňte první tři řádky pomocí editoru Visual Studio Code nebo jiného editoru.
Pomocí editoru Visual Studio Code nebo jiného editoru vyhledejte a nahraďte výraz regex
\},\n \{
}{
Importovat jako JSON do ADX jako samostatnou tabulku pomocí Získání dat z jednoho souboru.
Po migraci dat časových řad do Eventhouse v Prostředcích Infrastruktury Real-Time Intelligence můžete využít sílu sémantiky grafů Kusto ke kontextualizaci a analýze dat. Sémantika grafu Kusto umožňuje modelovat, procházet a analyzovat hierarchii modelu časové řady jako graf. Pomocí sémantiky grafů Kusto můžete získat přehled o vztazích mezi různými entitami v datech časových řad, jako jsou prostředky, weby a datové body. Tyto přehledy vám pomůžou porozumět závislostem a interakcím mezi různými součástmi systému.
Překlad dotazů časových řad (TSQ) do KQL
ZískatUdálosti
{
"getEvents": {
"timeSeriesId": [
"assest1",
"siteId1",
"dataId1"
],
"searchSpan": {
"from": "2021-11-01T00:00:0.0000000Z",
"to": "2021-11-05T00:00:00.000000Z"
},
"inlineVariables": {},
}
}
events
| where timestamp >= datetime(2021-11-01T00:00:0.0000000Z) and timestamp < datetime(2021-11-05T00:00:00.000000Z)
| where assetId_string == "assest1" and siteId_string == "siteId1" and dataid_string == "dataId1"
| take 10000
Získat události s filtrem
{
"getEvents": {
"timeSeriesId": [
"deviceId1",
"siteId1",
"dataId1"
],
"searchSpan": {
"from": "2021-11-01T00:00:0.0000000Z",
"to": "2021-11-05T00:00:00.000000Z"
},
"filter": {
"tsx": "$event.sensors.sensor.String = 'status' AND $event.sensors.unit.String = 'ONLINE"
}
}
}
events
| where timestamp >= datetime(2021-11-01T00:00:0.0000000Z) and timestamp < datetime(2021-11-05T00:00:00.000000Z)
| where deviceId_string== "deviceId1" and siteId_string == "siteId1" and dataId_string == "dataId1"
| where ['sensors.sensor_string'] == "status" and ['sensors.unit_string'] == "ONLINE"
| take 10000
GetEvents s projektovanou proměnnou
{
"getEvents": {
"timeSeriesId": [
"deviceId1",
"siteId1",
"dataId1"
],
"searchSpan": {
"from": "2021-11-01T00:00:0.0000000Z",
"to": "2021-11-05T00:00:00.000000Z"
},
"inlineVariables": {},
"projectedVariables": [],
"projectedProperties": [
{
"name": "sensors.value",
"type": "String"
},
{
"name": "sensors.value",
"type": "bool"
},
{
"name": "sensors.value",
"type": "Double"
}
]
}
}
events
| where timestamp >= datetime(2021-11-01T00:00:0.0000000Z) and timestamp < datetime(2021-11-05T00:00:00.000000Z)
| where deviceId_string== "deviceId1" and siteId_string == "siteId1" and dataId_string == "dataId1"
| take 10000
| project timestamp, sensorStringValue= ['sensors.value_string'], sensorBoolValue= ['sensors.value_bool'], sensorDoublelValue= ['sensors.value_double']
AggregateSeries
{
"aggregateSeries": {
"timeSeriesId": [
"deviceId1"
],
"searchSpan": {
"from": "2021-11-01T00:00:00.0000000Z",
"to": "2021-11-05T00:00:00.0000000Z"
},
"interval": "PT1M",
"inlineVariables": {
"sensor": {
"kind": "numeric",
"value": {
"tsx": "coalesce($event.sensors.value.Double, todouble($event.sensors.value.Long))"
},
"aggregation": {
"tsx": "avg($value)"
}
}
},
"projectedVariables": [
"sensor"
]
}
events
| where timestamp >= datetime(2021-11-01T00:00:00.0000000Z) and timestamp < datetime(2021-11-05T00:00:00.0000000Z)
| where deviceId_string == "deviceId1"
| summarize avgSensorValue= avg(coalesce(['sensors.value_double'], todouble(['sensors.value_long']))) by bin(IntervalTs = timestamp, 1m)
| project IntervalTs, avgSensorValue
AggregateSeries s filtrem
{
"aggregateSeries": {
"timeSeriesId": [
"deviceId1"
],
"searchSpan": {
"from": "2021-11-01T00:00:00.0000000Z",
"to": "2021-11-05T00:00:00.0000000Z"
},
"filter": {
"tsx": "$event.sensors.sensor.String = 'heater' AND $event.sensors.location.String = 'floor1room12'"
},
"interval": "PT1M",
"inlineVariables": {
"sensor": {
"kind": "numeric",
"value": {
"tsx": "coalesce($event.sensors.value.Double, todouble($event.sensors.value.Long))"
},
"aggregation": {
"tsx": "avg($value)"
}
}
},
"projectedVariables": [
"sensor"
]
}
}
events
| where timestamp >= datetime(2021-11-01T00:00:00.0000000Z) and timestamp < datetime(2021-11-05T00:00:00.0000000Z)
| where deviceId_string == "deviceId1"
| where ['sensors.sensor_string'] == "heater" and ['sensors.location_string'] == "floor1room12"
| summarize avgSensorValue= avg(coalesce(['sensors.value_double'], todouble(['sensors.value_long']))) by bin(IntervalTs = timestamp, 1m)
| project IntervalTs, avgSensorValue
Power BI
Neexistuje žádný automatizovaný proces migrace sestav Power BI založených na Time Series Insights. Všechny dotazy, které spoléhají na data uložená v Time Series Insights, musí být migrovány do eventhouse.
Pokud chcete vytvářet efektivní sestavy časových řad v Power BI, doporučujeme odkazovat na následující informativní blogové články:
- Funkce časových řad Eventhouse v Power BI
- Jak používat dynamické parametry M bez většiny omezení
- hodnoty časového úseku a doby trvání v KQL, Power Query a Power BI
- nastavení dotazů KQL v Power BI
- Filtrování a vizualizace dat Kusto v místním čase
- sestav téměř v reálném čase v PBI + Kusto
- modelování Power BI pomocí ADX – tahák
Pokyny k vytváření efektivních sestav časových řad v Power BI najdete v těchto zdrojích informací.
řídicí panel Real-Time
Řídicí panel Real-Time ve Fabric je kolekce dlaždic, které jsou volitelně uspořádány na stránkách, kde má každá dlaždice podkladový dotaz a vizuální reprezentaci. Dotazy Jazyka KQL (Kusto Query Language) můžete nativně exportovat do řídicího panelu jako vizuály a později podle potřeby upravit jejich podkladové dotazy a formátování vizuálů. Kromě snadného zkoumání dat poskytuje toto plně integrované prostředí řídicího panelu lepší výkon dotazů a vizualizací.
Začněte vytvořením nového řídicího panelu ve Fabric Real-Time Intelligence. Tato výkonná funkce umožňuje zkoumat data, přizpůsobovat vizuály, používat podmíněné formátování a využívat parametry. Kromě toho můžete vytvářet výstrahy přímo z řídicích panelů Real-Time a vylepšit tak možnosti monitorování. Podrobné pokyny k vytvoření řídicího panelu najdete v oficiální dokumentaci.