Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
✅ Azure Stream Analytics ✅ Fabric Olay Akışı
Her kaydın bir ilgili veri türü vardır. Veri türü, bu türdeki bir kaydın tutabileceği veya bu türdeki bir ifadenin oluşturabileceği değer kümesini açıklar (ve kısıtlar).
Bunun sütun değil türü olan kayıtlar olduğunu lütfen unutmayın. Bir sütunun her kaydı farklı bir türe sahip olabilir. Çoğu uygulama için saydam olacaksa, şema kayma senaryolarının ve diğer olağan dışı yazma desenlerinin kolayca işlenmesine olanak tanır.
Desteklenen veri türleri
Desteklenen veri türlerinin listesi aşağıdadır.
| Veri türü | Açıklama |
|---|---|
| bigint | -2^63 (-9.223.372.036.854.775.808) ile 2^63-1 (9.223.372.036.854.775.807) aralığındaki tamsayılar. |
| yüzmek | Aralıktaki kayan nokta sayıları - 1,79E+308 - -2,23E-308, 0 ve 2,23E-308 - 1,79E+308. Kayan nokta ondalık değerleri genellikle tam ikili gösterime sahip değildir. Duyarlık kaybı yaşanabilir. Bu, Azure Stream Analytics'e özgü değildir ancak tüm kayan noktalı sayı uygulamalarında gerçekleşir. |
| nvarchar(max) | Unicode karakterlerinden oluşan metin değerleri. Not: Max dışında bir değer desteklenmez. |
| tarih/zaman | 24 saatlik bir saati temel alan ve UTC'ye göre (saat dilimi uzaklığı 0) kesirli saniyelerle (7 basamak, 100 nanosaniye duyarlığı) günün saatiyle birleştirilen tarihi tanımlar. |
| parça | 1, 0 veya NULL değerini alabilen bir tamsayı. Bu, uyumluluk düzeyi 1.2 ve üzerinde desteklenir. |
| kayıt | Ad/değer çiftleri kümesi. Değerler desteklenen veri türünde olmalıdır. |
| array | Sıralı değer koleksiyonu. Değerler desteklenen veri türünde olmalıdır. |
Bigint ve float veri türüne katılabilir (veya karşılaştırabilirsiniz). Temsil edilemeyen çok büyük bigint değerleri dışında her durumda düzgün çalışır.
Uyarı
Azure Stream Analytics, aralığın dışında bigint veri türlerini okurken şunları destekler: Stream Analytics işiniz şu hata iletisiyle olayları seri durumdan çıkaramaz: InputDeserializationError. Verileri önceden işleyebilir ve dizeye dönüştürebilirsiniz. Bir seçenek, verileri önceden işlemek ve bu büyük tamsayıları dizeye dönüştürmek için Azure işlevlerini kullanmaktır.
Tip dönüştürmeleri
Veri türü dönüştürmelerini yöneten kurallar şunlardır:
- Giriş okuma ve çıkış yazma işlemleri sırasında duyarlık kaybı olmadan dönüştürme örtük olur ve her zaman başarılı olur
- Çıktı yazma işlemlerinin içinde duyarlık kaybı ve taşması, yapılandırılmış hata ilkesi tarafından işlenir (Bırak veya Yeniden Dene olarak ayarlanır)
- Çıkış yazma işlemleri sırasında oluşan tür dönüştürme hataları hata ilkesi tarafından işlenir
- Giriş okuma işlemleri sırasında oluşan tür dönüştürme hataları işin olayı bırakmasına neden oluyor
Değerlerin kayan değere dönüştürülmesinde duyarlık kaybı oluşabilir. Azure Stream Analytics'e değil, genel olarak kayan veri türüne özgüdür. Bu nedenle hata olarak kabul edilmez. Her rakamın korunması gereken durumlarda, veriler dize olarak okunmalıdır.
Veri atama
Akış SQL dilinde verilerinizin veri türünü gözlemlemek ve ayarlamak için yararlı olan dört işlev vardır.
- CAST : Belirli bir türe tek bir sütun atama- dönüştürme hatası durumunda iş başarısız olur
-
TRY_CAST : Belirli bir türe tek bir sütun atama - hatalar NULL olarak geçirilir. En iyi kullanımın nasıl yapılacağını öğrenmek için giriş doğrulamaya bakın
TRY_CAST - CREATE TABLE : Bir giriş için tek bir açık şema tanımlayın. Dönüştürme hatası olan satırlar akıştan kaldırılır
- GetType : bir sütunun türünü döndürür
Çoğu kullanım örneğinde önerilen seçenek TRY_CAST kullanmaktır. Bu işlev çıkış türünü sağlayarak aşağı akış işlemeyi korurken hatadaki değeri NULL ile değiştirerek veri kaybını önler. Satır bırakılmaz ve bu özgün değer başka bir sütuna yansıtılabilir.
Güçlü garantiler için önerilen seçenek CREATE TABLE kullanmaktır. Bu yaklaşım, sapma riski olmadan belirli bir girişin şemasının işini bilgilendirmeye olanak tanır. Belirli bir girişte yalnızca tek bir şema tanımlanabilir ve uyumlu olmayan satırlar bırakılır.
Mümkünse, tüm atama işlemleri diğer işlevlerde örtük (sessizce) yerine bu işlevler aracılığıyla açıkça yapılmalıdır. Bu, SQL veritabanları gibi kesin olarak yazılan çıkışlar için tür uyuşmazlıklarını, beklenmeyen davranışları ve ekleme hatalarını önler. Ana sorgu mantığını bu tür hatalardan nasıl koruyacağınızı öğrenmek için bkz. giriş doğrulaması .
Bite dönüştürme
Değerler float ve bit arasında aşağıdaki kurallarla dönüştürülür:
| Kaynak | İçin |
|---|---|
| (BIT) 1 | (KAYAN) 1.0 |
| (BIT) 0 | (KAYAN) 0,0 |
| (BIT) SIFIR | (KAYAN) SIFIR |
| (KAYAN) 0,0 | (BIT) 0 |
| (KAYAN) başka bir değer | (BIT) 1 |
| (KAYAN) SIFIR | (BIT) SIFIR |
Tür eşlemeleri ve serileştirme biçimleri
| Veri türü | içindeki CSV | CSV çıktısı | JSON | JSON çıkışı | Avro in | Avro çıkışı |
|---|---|---|---|---|---|---|
| bigint | 64 bit işaretli tamsayıya dönüştürülen dize | İş kültürü kullanılarak dizeye dönüştürülen 64 bit imzalı tamsayı | sayı: 64 bit işaretli tamsayıya dönüştürülen tamsayı; Boole değeri: uyumluluk düzeyi 1.1'de ve altında "false" 0'a, "true" 1'e dönüştürülür |
sayı: tamsayı | long ve int 64 bit işaretli tamsayıya dönüştürülür; Boole değeri: Uyumluluk düzeyi 1.1'de ve false'un altında 0'a, true değeri 1'e dönüştürülür |
uzun |
| yüzmek | dize 64 bit işaretli kayan nokta numarasına dönüştürüldü | İş kültürü kullanılarak dizeye dönüştürülen 64 bit imzalı kayan nokta numarası | sayı: 64 bit işaretli kayan nokta numarasına dönüştürülen kesir | sayı: kesir | double ve float 64 bit işaretli kayan nokta numarasına dönüştürüldü | iki katı |
| nvarchar(max) | String | String | String | String | String | String |
| tarih ve saat | ISO 8601 standard'dan sonra tarih saatine dönüştürülen dize | ISO 8601 standardı kullanan dize | ISO 8601 standard'dan sonra tarih saatine dönüştürülen dize | DATETIME, ISO 8601 standardı kullanılarak dizeye dönüştürüldü | ISO 8601 standard'dan sonra tarih saatine dönüştürülen dize | DATETIME, ISO 8601 standardı kullanılarak dizeye dönüştürüldü |
| bit (uyumluluk düzeyi 1.2 ve üzeri) | "true", "false" veya "null" dizesi karşılık gelen 1, 0 veya null tamsayı değerine dönüştürülür | "true" veya "false" dizesine dönüştürüldü | Boole: "false" 0'a, "true" ise 1'e dönüştürülür | Boole değeri: boole değeri | Boole değeri: false 0'a, true değeri 1'e dönüştürülür | Boolean |
| kayıt | Mevcut Değil | Desteklenmez, "Kayıt" dizesi çıkarılır | JSON nesnesi | JSON nesnesi | Avro kayıt türü | Avro kayıt türü |
| dizisi | Mevcut Değil | Desteklenmez, "Dizi" dizesi çıkarılır | JSON nesnesi | JSON nesnesi | Avro kayıt türü | Avro kayıt türü |
Uyarı
Parquet için veri türü dönüştürmesi gerekmez.
Yapılandırılmış veri depolarına yazarken tür eşlemesi
| Veri türü | SQL | Power BI | Azure Cosmos DB veritabanı | PostgreSQL | Azure Veri Araştırıcısı |
|---|---|---|---|---|---|
| bigint | bigint, int, smallint, tinyint, tüm dize türleri (ntext, nvarchar, char, ...) | evet | sayısal: tamsayı | bigint Sütun türü smallint veya tamsayıysa, "yanlış ikili veri biçimi" hatası oluşur. |
dinamik, int, uzun |
| yüzmek | float, gerçek, ondalık, sayısal, tüm dize türleri (ntext, nvarchar, char, ...) | evet | sayı: kesir | çift duyarlık, sayısal. 1,78E+308 ile sınırlıdır Sütun türü gerçekse, "yanlış ikili veri biçimi" hatası oluşur. |
dinamik, gerçek, çift |
| nvarchar(max) | Tüm dize türleri (ntext, nvarchar, char, uniqueidentifier...) | evet | String | karakter değişen, metin | dinamik, dize |
| tarih ve saat | datetime, datetime2, datetimeoffset, tüm dize türleri (ntext, nvarchar, char, ...) | evet | DATETIME, ISO 8601 standardı kullanılarak dizeye dönüştürüldü | UTC zaman damgası için zaman damgası, aksi halde zaman damgası | dynamic, string, datetime |
| bit (uyumluluk düzeyi 1.2 ve üzeri) | bigint, int, smallint, tinyint, bit, tüm dize türleri (ntext, nvarchar, char, ...) | evet | boolean: 1 true, 0 false olarak dönüştürülür | parça | dinamik, bool |
| kayıt | Desteklenmez, "Kayıt" dizesi çıkarılır | Desteklenmez, "Kayıt" dizesi çıkarılır | JSON nesnesi | Desteklenmiyor | dynamic, bool, long, datetime, bayt dizisi, gerçek, çift, dize |
| dizisi | Desteklenmez, "Dizi" dizesi çıkarılır | Desteklenmez, "Dizi" dizesi çıkarılır | JSON nesnesi | Desteklenmiyor | dinamik, dize |