Migrace Time Series Insights Gen1 na inteligentní funkce v reálném čase 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. Další informace o vyřazení a migraci najdete v naší dokumentaci.
Přehled
Eventhouse je databáze časových řad ve inteligentním čase v reálném čase. Slouží jako cíl pro migraci dat mimo Time Series Insights.
Požadavky
- Pracovní prostor s kapacitou s podporou Microsoft Fabric
- Dům událostí v pracovním prostoru
Ingestování nových dat
Pomocí následujících kroků začněte ingestovat nová data do vašeho eventhouse:
Nakonfigurujte centrum událostí s novou skupinou příjemců.
Spotřebovávejte data ze zdroje dat a ingestujte je do vašeho eventhouse. Informace o příjmu dat z centra událostí najdete v dokumentaci.
Migrace historických dat z Time Series Insights
Pokud potřebujete exportovat data z prostředí Time Series Insights, můžete pomocí rozhraní API pro dotazy Time Series Insights stáhnout události v dávkách a serializovat je v požadovaném formátu. V závislosti na tom, kam jste exportovaná data uložili, můžete ingestovat data ze služby Azure Storage, místních souborů nebo OneLake.
Migrace referenčních dat
K migraci referenčních dat použijte následující postup:
Ke stažení referenční sady dat použijte Průzkumník služby Time Series Insights nebo rozhraní API referenčních dat.
Jakmile budete mít referenční sadu dat, nahrajte ji do eventhouse jako jinou tabulku. Nahráním referenční sady dat můžete získat přístup a využít ji v prostředí Eventhouse.
Překlad dotazů Time Series Insights do dotazovací jazyk Kusto
U dotazů doporučujeme použít dotazovací jazyk Kusto v Eventhouse.
Události
{
"searchSpan": {
"from": "2021-11-29T22:09:32.551Z",
"to": "2021-12-06T22:09:32.551Z"
},
"predicate": {
"predicateString": "([device_id] = 'device_0') AND ([has_error] != null OR [error_code] != null)"
},
"top": {
"sort": [
{
"input": {
"builtInProperty": "$ts"
},
"order": "Desc"
}
],
"count": 100
}
}
events
| where _timestamp >= datetime("2021-11-29T22:09:32.551Z") and _timestamp < datetime("2021-12-06T22:09:32.551Z") and deviceid == "device_0" and (not(isnull(haserror)) or not(isempty(errorcode)))
| top 100 by _timestamp desc
Souhrny
{
"searchSpan": {
"from": "2021-12-04T22:30:00Z",
"to": "2021-12-06T22:30:00Z"
},
"predicate": {
"eq": {
"left": {
"property": "DeviceId",
"type": "string"
},
"right": "device_0"
}
},
"aggregates": [
{
"dimension": {
"uniqueValues": {
"input": {
"property": "DeviceId",
"type": "String"
},
"take": 1
}
},
"aggregate": {
"dimension": {
"dateHistogram": {
"input": {
"builtInProperty": "$ts"
},
"breaks": {
"size": "2d"
}
}
},
"measures": [
{
"count": {}
},
{
"sum": {
"input": {
"property": "DataValue",
"type": "Double"
}
}
},
{
"min": {
"input": {
"property": "DataValue",
"type": "Double"
}
}
},
{
"max": {
"input": {
"property": "DataValue",
"type": "Double"
}
}
}
]
}
}
]
}
let _q = events | where _timestamp >= datetime("2021-12-04T22:30:00Z") and _timestamp < datetime("2021-12-06T22:30:00Z") and deviceid == "device_0";
let _dimValues0 = _q | project deviceId | sample-distinct 1 of deviceId;
_q
| where deviceid in (_dimValues0) or isnull(deviceid)
| summarize
_meas0 = count(),
_meas1 = iff(isnotnull(any(datavalue)), sum(datavalue), any(datavalue)),
_meas2 = min(datavalue),
_meas3 = max(datavalue),
by _dim0 = deviceid, _dim1 = bin(_timestamp, 2d)
| project
_dim0,
_dim1,
_meas0,
_meas1,
_meas2,
_meas3,
| sort by _dim0 nulls last, _dim1 nulls last