Sdílet prostřednictvím


Migrace Time Series Insights Gen1 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. Další informace o vyřazení a migraci najdete v naší 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.

Požadavky

  • Pracovní prostor s kapacitou, ve které je povolena Microsoft Fabric
  • Dům událostí ve vašem pracovním prostoru

Ingestování nových dat

Pomocí následujících kroků začněte ingestovat nová data do vašeho eventhouse:

  1. Nakonfigurujte událostní centrum s novou skupinou příjemců.

  2. Spotřebovávejte data ze zdroje dat a ingestujte je do vašeho eventhouse. Podívejte se do dokumentace, jak ingestovat data z centra událostí.

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, kde jste exportovaná data uložili, můžete ingestovat data z 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:

  1. Ke stažení referenční sady dat použijte Průzkumník služby Time Series Insights nebo rozhraní API referenčních dat.

  2. Jakmile budete mít referenční sadu dat, nahrajte ji do Eventhouse jako další 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ího jazyka Kusto

Pro dotazy doporučujeme použít dotazovací jazyk Kusto v Eventhouse.

Dění

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

Agregáty

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