Yeni ortamlar için JSON düzleştirme ve kaçış kurallarında yaklaşan değişiklikler

Not

Time Series Insights hizmeti 7 Temmuz 2024'te kullanımdan kaldırılacaktır. Mevcut ortamları mümkün olan en kısa sürede alternatif çözümlere geçirmeyi göz önünde bulundurun. Kullanımdan kaldırma ve geçiş hakkında daha fazla bilgi için belgelerimizi ziyaret edin.

Önemli

Bu değişiklikler yalnızca yeni oluşturulan Microsoft Azure Time Series Insights 2. Nesil ortamlarına uygulanır. Değişiklikler 1. Nesil ortamlarına uygulanmaz.

Azure Time Series Insights 2. Nesil ortamınız, belirli bir adlandırma kurallarını izleyerek depolama sütunlarınızı dinamik olarak oluşturur. Bir olay alındığında Time Series Insights, JSON yüküne ve özellik adlarına bir dizi kural uygular. JSON verilerinin düzleştirme ve depolanma şeklindeki değişiklikler, Temmuz 2020'de yeni Azure Time Series Insights 2. Nesil ortamları için geçerli oldu. Bu değişiklik, sizi şu durumlarda etkiler:

  • JSON yükünüz iç içe nesneler içeriyor.
  • JSON yükünüz diziler içeriyor.
  • JSON özellik adında aşağıdaki dört özel karakterden herhangi birini kullanırsınız: [ \ . '
  • Zaman Serisi (TS) kimliği özelliklerinizden biri veya daha fazlası iç içe nesnenin içindedir.

Yeni bir ortam oluşturursanız ve bu durumlardan biri veya daha fazlası olay yükünüz için geçerliyse verileriniz düzleştirilebilir ve farklı şekilde depolanır. Aşağıdaki tabloda değişiklikler özetlemektedir:

Geçerli kural Yeni kural Örnek JSON Önceki sütun adı Yeni sütun adı
İç içe JSON, çizgileyici olarak bir alt çizgi kullanılarak düzleştirilmiştir. İç içe JSON, çizgileyici olarak nokta kullanılarak düzleştirilmiştir. {"series" : { "value" : 19.338 }} series_value_double series.value_double
Özel karakterler kaçılmaz. Özel karakterleri . [\ içeren ve ' ve ']kullanılarak [' kaçışı yapılan JSON özellik adları. [' ve ']içinde, tek tırnak işaretleri ve ters eğik çizgilerden daha fazla kaçış vardır. Tek tırnak olarak \' , ters eğik çizgi olarak \\yazılır. "Foo's Law Value": "17.139999389648" Foo's Law Value_double ['Foo\'s Law Value']_double
İlkel diziler dize olarak depolanır. İlkel tür dizileri dinamik bir tür olarak depolanır. "values": [154, 149, 147] values_string values_dynamic
Nesne dizileri her zaman düzleştirilmiştir ve birden çok olay oluşturur. Bir dizideki nesneler TS kimliğine veya zaman damgası özelliklerine sahip değilse, nesne dizisi dinamik bir tür olarak tam olarak depolanır. "values": [{"foo" : 140}, {"bar" : 149}] values_foo_long | values_bar_long values_dynamic

TS kimliğiniz ve/veya zaman damgası özelliğiniz bir nesnenin içinde iç içe yerleştirilmişse

Tüm yeni dağıtımların yeni alım kurallarıyla eşleşmesi gerekir. Örneğin, TS kimliğiniz ise telemetry_tagId, ortam TS kimliği olarak yapılandırmak telemetry.tagId için tüm Azure Resource Manager şablonlarını güncelleştirmeniz veya otomatik dağıtım betikleri yapmanız gerekir. İç içe JSON'daki olay kaynağı zaman damgaları için de bu değişikliğe ihtiyacınız vardır.

Yükünüz iç içe JSON veya özel karakterler içeriyorsa ve Time Series Model değişken ifadeleri yazmayı otomatikleştirirseniz

TypesBatchPut yürüten istemci kodunuzu yeni alma kurallarıyla eşleşecek şekilde güncelleştirin. Örneğin, önceki bir Time Series İfadesini "value": {"tsx": "$event.series_value.Double"} aşağıdaki seçeneklerden biriyle güncelleştirmeniz gerekir:

  • "value": {"tsx": "$event.series.value.Double"}
  • "value": {"tsx": "$event['series']['value'].Double"}

Sonraki adımlar