Azure Time Series Insights 2. Nesil Zaman Serisi İfadesi söz dizimi
Genel Bakış
Time Series Expression (TSX), güçlü yazma özelliğine sahip dize tabanlı bir ifade dilidir. TSX, bir Zaman Serisi Sorgusunda aşağıdaki varlıkları temsil etmek için kullanılır.
- Filtre
- Değer
- Toplama
İfadeleri filtreleme
Filtre ifadeleri boole yan tümcelerini temsil etmek için kullanılır. Aşağıdaki tabloda filtre örnekleri listelenir:
TSX | Description |
---|---|
$event.PointValue.Double = 3.14 |
true çift PointValue değerine eşit olan olaylar için 3.14 |
$event.PointValue > 3.14 AND $event.Status.String = 'Good' |
true PointValue değerinden 3.14 büyük ve dize durumuna sahip olaylar içinGood |
$event.$ts > dt'2018-11-01T02:03:45Z' |
true daha büyük bir zaman damgasına sahip olaylar için 2018-11-01T02:03:45Z |
$event.PointEval.Bool = true |
true PointValue değerine eşit olaylar içintrue |
Değer ifadeleri
Değer ifadeleri , sayısal ve kategorik değişkenlerin değerini tanımlamak için kullanılır. Değer ifadesi , Çift veya Uzun türünde bir özellik başvuru ifadesi olabilir.
Örnek:
TSX | Notlar |
---|---|
$event.Temperature.Double |
Herhangi bir değer ifadesindeki son belirteç (bu örnekte Double ) özelliğin Türü olarak okunur. |
$event.Temperature |
Türün, tek bir belirteç tarafından erişilen bir özellik için Double olduğu varsayılır. |
$event['Temperature-Celsius'] |
Özel karakterler içeren kaçış belirteçleri için ve ] kullanın[ . Ayrıca, köşeli ayraçların içinde aşağıdaki karakterlerden kaçmak için kullanın \ : \ ve ' . |
$event.Temperature.Celsius.Double |
İç içe özelliklere erişmek için kullanın . . İç içe özelliklere erişirken Tür gereklidir. |
$event.Temperature['Celsius-C'].Double |
İç içe özelliklere erişirken özel karakterler içeren belirteçlerden kaçış için ve ] kullanın[ . Ayrıca, köşeli ayraçların içinde aşağıdaki karakterlerden kaçmak için kullanın \ : \ ve ' . İç içe özelliklere erişirken Tür gereklidir. |
$event['Temperature']['Celsius'].Double |
Herhangi bir belirteçte [ kaçış belirteçleri için ve ] kullanımına izin verilir. |
Sayısal değişken türü
Değer ifadesinin sonucu Çift veya Uzun türünde olmalıdır.
Değişken türünü toplama
Değer ifadesinin sonucu desteklenen herhangi bir türde olabilir.
Kategorik değişken türü
Değer ifadesinin sonucu yalnızca Dize veya Uzun türünde olabilir.
Toplama ifadeleri
Toplama ifadeleri , sorguda kullanılacak toplama işleminin gösterimi için kullanılır. Toplama ifadesi her aralık için tek bir değer elde edilir. Toplama ifadeleri sayısal ve toplama değişkenlerine uygulanabilir.
Toplama ifadeleri - sayısal değişken türü
Sayısal değişkenler öğesine $value
başvurmalıdır.
Desteklenen toplama işlevleri aşağıdadır.
Toplama İşlevi | Örnek | Description |
---|---|---|
min |
min($value) |
Aralık başına minimum değeri $value hesaplar. Değerlerden null kaçınıyor. İlişkilendirme ile kullanılamaz. |
max |
max($value) |
Aralık başına maksimum değeri $value hesaplar. Değerlerden null kaçınıyor. İlişkilendirme ile kullanılamaz. |
sum |
sum($value) |
Aralıktaki tüm olayların toplamını $value hesaplar. Değerlerden null kaçınıyor. İlişkilendirme ile kullanılamaz. |
avg |
avg($value) |
Aralıktaki tüm olayların ortalamasını $value hesaplar. Değerlerden null kaçınıyor. İlişkilendirme ile kullanılamaz. |
first |
first($value) |
Olay zaman damgasına göre aralıktaki ilk gerçekleşen olayın döndürür $value . Değerlerden kaçınmaznull . İlişkilendirme ile kullanılamaz. |
last |
last($value) |
Olay zaman damgasına göre aralıktaki son gerçekleşen olayın döndürür $value . Değerlerden kaçınmaznull . İlişkilendirme ile kullanılamaz. |
median |
median($value) |
Olay zaman damgasına göre aralıktaki ortadaki olayın döndürür $value . Değerlerden kaçınmaznull . İlişkilendirme ile kullanılamaz. |
stdev |
stdev($value) |
Aralıktaki olayların standart sapması döndürür $value . Değerlerden null kaçınıyor. İlişkilendirme ile kullanılamaz. |
twsum |
twsum($value) |
Aralıktaki olayların zaman ağırlıklı toplamını döndürür $value . İlişkilendirme gerektirir. |
twavg |
twavg($value) |
Aralıktaki olayların zaman ağırlıklı ortalamasını verir $value . İlişkilendirme gerektirir. |
left |
left($value) |
$value Verilen aralığın sol kenarındaki değerini döndürür. İlişkilendirme gerektirir. |
right |
right($value) |
$value Verilen aralığın sağ kenarındaki değerini döndürür. İlişkilendirme gerektirir. |
Toplama ifadeleri - toplama değişkeni türü
Toplama değişkenleri , olay yükündeki bir Özelliğe başvurmalıdır.
Desteklenen toplama işlevleri aşağıdadır.
Toplama işlevi | Örnek | Description |
---|---|---|
count |
count() |
Aralık başına olay sayısını döndürür. |
min |
min($event.Temperature.Double) |
Aralık başına sıcaklık özelliğinin minimumunu hesaplar. Değerlerden null kaçınıyor. |
max |
max($event.Temperature.Long) |
Aralık başına en fazla Temperature özelliğini hesaplar. Değerlerden null kaçınıyor. |
sum |
sum($event.Temperature.Double) |
Aralıktaki tüm olaylar için Temperature özelliğinin toplamını hesaplar. Değerlerden null kaçınıyor. |
avg |
avg($event.Temperature.Long) |
Aralıktaki tüm olaylar için Temperature özelliğinin ortalamasını hesaplar. Değerlerden null kaçınıyor. |
first |
first($event.Temperature.String) |
Aralıktaki tüm olaylardan Temperature özelliğinin ilk oluşan (olay zaman damgasına göre) değerini döndürür. Değerlerden kaçınmaznull . |
last |
last($event.Temperature.String) |
Aralıktaki tüm olaylardan Temperature özelliğinin son oluşan (olay zaman damgasına göre) değerini döndürür. Değerlerden kaçınmaznull . |
median |
median($event.Temperature.String) |
Aralıktaki tüm olaylardan Temperature özelliğinin ortaya çıkan (olay zaman damgasına göre) değerini döndürür. Değerlerden kaçınmaznull . |
stdev |
stdev($event.Temperature.String) |
Aralık başına Sıcaklık özelliğinin standart sapması hesaplanır. null Değerleri önler. |
Toplama değişkeni türü için bu işlevler toplama ifadesinde birleştirilebilir. Örneğin: max($event.Temperature.Long) - min($event.Temperature.Long)
.
Syntax
Bu bölümde, form ifadeleriyle birleştirilmiş temel söz dizimi kavramları ve sorgu işleçleri açıklanmaktadır.
Desteklenen değişmez değerler
Not
Aşağıdaki değişmez değerler ifadeleri oluşturmak için kullanılır. Veri türlerinin tam listesi için Desteklenen veri türleri makalesine bakın.
Temel tür | Değişmez Değerler |
---|---|
Bool | TRUE , FALSE |
Tarih Saat | dt'2016-10-08T03:22:55.3031599Z' |
Çift | 1.23 , 1.0 |
Uzun | 1 , 6 |
Dize | 'abc' |
TimeSpan | ts'P1Y2M3DT4M5.67S' |
Null | NULL |
Desteklenen işlenen türleri
İşlem | Desteklenen türler | Notlar |
---|---|---|
<, >, <=, >= | Double, Long, DateTime, TimeSpan | |
=, !=, <> | Double, Long, String, Bool, DateTime, TimeSpan, NULL | <>!= ile eşdeğerdir |
+, -, *, / | Double, Long, DateTime, TimeSpan |
Karşılaştırma ifadeleri için (<, >, <=, >=, =, !=), işlenenler NULL veya aynı türde olabilir. Her koşul ifadesinde, sol taraftaki (LHS) ve sağ taraftaki (RHS) işlenenlerin türleri eşleşecek şekilde doğrulanır. LHS ve RHS türleri kabul edilmediğinde veya belirli türlerde işleme izin verilmediğinde hatalar oluşur.
Not
Warm Store'da dize türü null atanamaz:
- Dize ile NULL ve boş dize ('') karşılaştırması aynı şekilde davranır:
$event.p1.String = NULL
ile$event.p1.String = ''
eşdeğerdir. - Özgün olaylar boş dizeler içerse bile API NULL değerler döndürebilir.
Gelecekte aynı davranış Cold Store'da da olacaktır.
Dize sütunlarında NULL değerlere bağımlılık almayın ve bunları boş dizelerle aynı şekilde ele almayın.
- Bir tür denetimi uygulanır:
- Herhangi bir özellik türü değişmez
NULL
değere karşı kabul edilir. - LHS ve RHS türleri eşleşmelidir.
- Herhangi bir özellik türü değişmez
Dize türündep1 ve p2 özellikleri, Double türünde p3 özelliği ve Double türünde p4.p5 olarak depolanan iç içe özellik örnekleri aşağıda verilmiştir:
Filtre | Geçerli mi? | Notlar |
---|---|---|
$event.p1.String = 'abc' |
Yes | |
$event.p1.String = $event.p2.String |
Yes | |
$event.p1.String = NULL |
Yes | NULL herhangi bir sol taraftaki türle eşleşir. |
$event.p3.Double = 'abc' |
No | Tür uyuşmazlığı. |
$event.p3.Double = $event.p1.String |
No | Tür uyuşmazlığı. |
$event.p1 = 'abc' |
No | Tür uyuşmazlığı. |
$event.p1 = 1 |
No | Tür uyuşmazlığı. |
$event.p1 = true |
No | Tür uyuşmazlığı. |
$event.p1 = NULL |
Yes | p1 kullanılan tek belirteçtir. Olarak yorumlanır $event.p1.Double = NULL |
$event['p1'] != NULL |
Yes | ['p1'] kullanılan tek belirteçtir. Olarak yorumlanır $event['p1'].Double != NULL |
$event.p4.p5 = 0.0 |
No | Geçersiz özellik başvurusu söz dizimi. Karşılaştırma LHS'sinde bir tür belirtilmelidir. |
$event.p4.p5.Double = 0.0 |
Yes |
Desteklenen skaler işlevler
Kategorilere göre skaler işlevlerin listesi aşağıdadır:
Dönüşüm işlevleri
İşlev adı | İmza | Örnek | Notlar |
---|---|---|---|
toDouble |
Double toDouble (value: String, Double, Long) |
toDouble($event.value.Long) |
Bağımsız değişkenleri Double'a dönüştürür. |
toLong |
Long toLong (value: String, Double, Long) |
toLong($event.value.Double + 1.0) |
Bağımsız değişkenleri Long'a dönüştürür. |
toString |
String toString (value: String, Double, Long) |
toString($event.value.Double) |
Bağımsız değişkenleri Dizeye dönüştürür. |
Matematik işlevleri
İşlev adı | İmza | Örnek | Notlar |
---|---|---|---|
round |
Double round(value:Double) |
round($event.value.Double) |
Çift duyarlıklı kayan bir sayıyı en yakın tam sayıya yuvarlar. |
ceiling |
Double ceiling(value:Double) |
ceiling($event.value.Double) |
Çift duyarlıklı kayan nokta sayısından büyük veya buna eşit en küçük tamsayı değerini döndürür. |
floor |
Double floor(value:Double) |
floor($event.value.Double) |
Çift duyarlıklı kayan nokta sayısından küçük veya buna eşit olan en büyük tam sayı değerini döndürür. |
Trigonometrik işlevler
İşlev adı | İmza | Örnek | Notlar |
---|---|---|---|
cos |
Double cos(value:Double) |
cos($event.value.Double) |
Radyan cinsinden belirtilen açının Kosinüsünü döndürür. |
sin |
Double sin(value:Double) |
sin($event.value.Double) |
Radyan cinsinden belirtilen açının Sinüsünü döndürür. |
tan |
Double tan(value:Double) |
tan($event.value.Double) |
Radyan cinsinden belirtilen açının Tanjant değerini döndürür. |
acos |
Double acos(value:Double) |
acos($event.value.Double) |
Kosinüsü belirtilen sayı olan radyan cinsinden açıyı döndürür. |
asin |
Double asin(value:Double) |
asin($event.value.Double) |
Sinüsü belirtilen sayı olan radyan cinsinden açıyı döndürür. |
atan |
Double atan(value:Double) |
atan($event.value.Double) |
Tanjant değeri belirtilen sayı olan radyan cinsinden açıyı döndürür. |
atan2 |
Double atan2(value1:Double, value2:Double) |
atan2($event.value1.Double, $event.value2.Double) |
Tanjant değeri belirtilen iki sayının çekirdeği olan radyan cinsinden açıyı döndürür. |
Logaritmik işlevler
İşlev adı | İmza | Örnek | Notlar |
---|---|---|---|
log |
Double log(value:Double) |
log($event.value.Double) |
Belirtilen sayının doğal logaritması döndürür. |
log2 |
Double log2(value:Double) |
log2($event.value.Double) |
Belirtilen sayının 2 tabanındaki logaritması döndürür. |
log10 |
Double log10(value:Double) |
log10($event.value.Double) |
Belirtilen sayının 10 tabanındaki logaritması döndürür. |
DateTime İşlevleri
İşlev adı | İmza | Örnek | Notlar |
---|---|---|---|
monthOfYear |
Long monthOfYear(value:DateTime) |
monthOfYear($event.$ts) |
Sağlanan DateTime için yılın ayını sayısal olarak döndürür. |
dayOfMonth |
Long dayOfMonth(value:DateTime) |
dayOfMonth($event.$ts) |
Sağlanan DateTime için ayın gününü sayısal olarak döndürür. |
hourOfDay |
Long hourOfDay(value:DateTime) |
hourOfDay($event.$ts) |
Sağlanan DateTime için günün saatini sayısal olarak döndürür. |
utcNow |
DateTime utcNow() |
utcNow() |
Geçerli saati UTC biçiminde döndürür. |
Dize işlevleri
İşlev adı | İmza | Örnek | Notlar |
---|---|---|---|
toUpper |
String toUpper(value:String) |
toUpper($event.value.String) |
Büyük harfe dönüştürülmüş giriş dizesini döndürür. |
toLower |
String toLower(value:String) |
toLower($event.value.String) |
Küçük harfe dönüştürülmüş giriş dizesini döndürür. |
strLen |
Long strLen(value:String) |
strLen($event.value.String) |
Dize bağımsız değişkenindeki karakterlerin sayısını döndürür. |
strCat |
Long strCat(value1:String, value2:String) |
strCat($event.value1.String, $event.value2.String) |
Belirtilen iki giriş dizesini birleştirir. |
subString |
String subString(value:String, startIndex:Double, length:Double) |
subString($event.value.String, 2.0, 4.0) |
Bu örnekten bir alt dize alır. |
trim |
String trim(value:String) |
trim($event.value.String) |
Giriş dizesinden baştaki ve sondaki tüm boşluk karakterlerini kaldırarak yeni bir dize döndürür. |
indexOf |
Long indexOf(value:String, subString:String) |
indexOf($event.value.String, 'abc') |
Belirtilen dizenin özgün dize içinde sıfır dizine dayalı ilk oluşumunu döndürür. |
replace |
String replace(value:String, searchString:String, replaceString:String) |
replace($event.value.String, 'abc', 'xyz') |
Arama dizesinin tüm oluşumlarının değiştirme dizesiyle değiştirildiği bir dize döndürür. |
Diğer İşlevler
İşlev adı | İmza | Örnek | Notlar |
---|---|---|---|
coalesce |
String, Long, Double, Bool coalesce (value: String, Long, Double, Bool) |
coalesce(toLong($event.value.Double), $event.value.Long) |
Bağımsız değişken listesindeki ilk null olmayan değeri döndürür. En az 2 ve en fazla 64 bağımsız değişken kabul eder, ancak bunların tümü aynı veri türünde olmalıdır. |
iff |
String, Long, Double, Bool iff (predicate: bool, ifTrue: String, Long, Double, Bool, ifFalse: String, Long, Double, Bool) |
iff ($event.value.Double > 100, 'Good', 'Bad') |
Koşulun true (ikinci bağımsız değişken döndürür) veya false (üçüncü bağımsız değişken döndürür) olarak çözümlenip çözümlenmediğine bağlı olarak ikinci veya üçüncü bağımsız değişkeni döndürür. Koşul bir Boole ifadesi olmalı ve ikinci ve üçüncü bağımsız değişkenler aynı türde olmalıdır. |
Ayrıca bkz.
Uygulama kaydı ve Azure Active Directory programlama modeli hakkında daha fazla bilgi için bkz. Geliştiriciler için Azure Active Directory.
İstek ve kimlik doğrulama parametreleri hakkında bilgi edinmek için Kimlik doğrulaması ve yetkilendirme'yi okuyun.
HTTP isteklerini ve yanıtlarını test etme konusunda yardımcı olan araçlar şunlardır:
Fiddler. Bu ücretsiz web hata ayıklama proxy'si REST isteklerinizi kesebilir, böylece HTTP isteğini ve yanıt iletilerini tanılayabilirsiniz.
JWT.io. Bu aracı kullanarak talepleri taşıyıcı belirtecinize hızla atabilir ve ardından içeriklerini doğrulayabilirsiniz.
Postacı. Bu, REST API'lerinde hata ayıklamaya yönelik ücretsiz bir HTTP isteği ve yanıt testi aracıdır.
2. Nesil belgelerini gözden geçirerek Azure Time Series Insights 2. Nesil hakkında daha fazla bilgi edinin.