Migration de Time Series Insights Gen1 vers Real-Time Intelligence dans Microsoft Fabric
Remarque
Le service Time Series Insights va être mis hors service le 7 juillet 2024. Prévoyez de migrer les environnements existants vers des solutions alternatives dès que possible. Pour plus d’informations sur la dépréciation et la migration, consultez notre documentation.
Vue d’ensemble
Eventhouse est la base de données de série chronologique dans Real-Time Intelligence. Elle sert de cible pour migrer les données de Time Series Insights.
Prérequis
- Un espace de travail avec une capacité compatible Microsoft Fabric
- Un event house dans votre espace de travail
Ingérer de nouvelles données
Pour commencer à ingérer de nouvelles données dans votre Eventhouse, effectuez les étapes suivantes :
Configurez votre Event Hub avec un nouveau groupe de consommateurs.
Consommez des données à partir de la source de données et ingérez-les dans votre Eventhouse. Reportez-vous à la documentation sur la façon d’ingérer des données à partir de votre Event Hub.
Migrer des données historiques depuis Time Series Insights
Si vous avez besoin d’exporter des données depuis votre environnement Time Series Insights, vous pouvez utiliser l’API de requête Time Series Insights pour télécharger les événements par lots et les sérialiser au format requis. Selon l’emplacement où vous avez stocké les données exportées, vous pouvez ingérer les données à partir du Stockage Azure, de fichiers locaux ou de OneLake.
Migrer des données de référence
Effectuez les étapes suivantes pour migrer des données de référence :
Utilisez l’Explorateur Time Series Insights ou l’API Données de référence pour télécharger le jeu de données de référence.
Une fois que vous avez le jeu de données de référence, chargez-le dans votre Eventhouse comme autre table. En chargeant le jeu de données de référence, vous pouvez y accéder et l’utiliser dans votre environnement Eventhouse.
Traduire des requêtes Time Series Insights en Langage de requête Kusto
Pour les requêtes, il est recommandé d’utiliser le Langage de requête Kusto dans Eventhouse.
Événements
{
"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
Agrégats
{
"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