Подключаемый модуль sequence_detect
Область применения: ✅Microsoft Fabric✅Azure Data Explorer
Обнаруживает вхождения последовательности на основе предоставленных предикатов. Подключаемый модуль вызывается оператором evaluate
.
Синтаксис
T (
| evaluate
sequence_detect
TimelineColumn,
MaxSequenceStepWindow,
MaxSequenceSpan,
Expr1,
,
..., Dim1,
Dim2 ...,
)
Дополнительные сведения о соглашениях синтаксиса.
Параметры
Имя (название) | Type | Обязательно | Описание |
---|---|---|---|
T | string |
✔️ | Входное табличное выражение. |
TimelineColumn | string |
✔️ | Ссылка на столбец, представляющая временную шкалу, должна присутствовать в исходном выражении. |
MaxSequenceStepWindow | timespan |
✔️ | Значение максимального допустимого интервала времени между 2 последовательными шагами в последовательности. |
MaxSequenceSpan | timespan |
✔️ | Максимальное интервал времени для последовательности для выполнения всех шагов. |
Expr1, Expr2, ... | string |
✔️ | Логические выражения предиката, определяющие шаги последовательности. |
Dim1, Dim2, ... | string |
✔️ | Выражения измерения, используемые для сопоставления последовательностей. |
Возвраты
Возвращает одну таблицу, в которой каждая строка в таблице представляет собой одно вхождение последовательности:
- Dim1, Dim2, ...: столбцы измерения, используемые для сопоставления последовательностей.
- Expr1TimelineColumn, Expr2TimelineColumn, ...: столбцы со значениями времени, представляющие временную шкалу каждого шага последовательности.
- Длительность: общее окно времени последовательности
Примеры
Следующий запрос смотрит на таблицу T для поиска соответствующих данных из указанного периода времени.
T | evaluate sequence_detect(datetime_column, 10m, 1h, e1 = (Col1 == 'Val'), e2 = (Col2 == 'Val2'), Dim1, Dim2)
Изучение событий Storm
Следующий запрос выглядит на таблице StormEvents (статистика погоды за 2007 год) и показывает случаи, когда последовательность "Чрезмерная жара" последовала за "Лесным пожаром" в течение 5 дней.
StormEvents
| evaluate sequence_detect(
StartTime,
5d, // step max-time
5d, // sequence max-time
heat=(EventType == "Excessive Heat"),
wildfire=(EventType == 'Wildfire'),
State
)
Выходные данные
Штат | heat_StartTime | wildfire_StartTime | Duration |
---|---|---|---|
CALIFORNIA | 2007-05-08 00:00:00.0000000 | 2007-05-08 16:02:00.0000000 | 16:02:00 |
CALIFORNIA | 2007-05-08 00:00:00.0000000 | 2007-05-10 11:30:00.0000000 | 2.11:30:00 |
CALIFORNIA | 2007-07-04 09:00:00.0000000 | 2007-07-05 23:01:00.0000000 | 1.14:01:00 |
ЮЖНАЯ ДАКОТА | 2007-07-23 12:00:00.0000000 | 2007-07-27 09:00:00.0000000 | 3.21:00:00 |
TEXAS | 2007-08-10 08:00:00.0000000 | 2007-08-11 13:56:00.0000000 | 1.05:56:00 |
CALIFORNIA | 2007-08-31 08:00:00.0000000 | 2007-09-01 11:28:00.0000000 | 1.03:28:00 |
CALIFORNIA | 2007-08-31 08:00:00.0000000 | 2007-09-02 13:30:00.0000000 | 2.05:30:00 |
CALIFORNIA | 2007-09-02 12:00:00.0000000 | 2007-09-02 13:30:00.0000000 | 01:30:00 |