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.
Veri akışı grafikleri, Azure IoT İşlemleri'ne geçerken verileri işlemek için esnek bir yol sağlar. Standart veri akışı sabit zenginleştirme, filtre ve harita dizisini izler. Veri akışı grafiği, dönüşümleri herhangi bir sırada oluşturmanıza, paralel yollara dallanmanıza ve zaman içinde verileri toplamanıza olanak tanır.
Veri akışı grafiği Kubernetes özel kaynağı tarafından DataflowGraph tanımlanır. İçinde, senaryonuzla eşleşen işleme işlem hatları oluşturmak için kaynakları, dönüşümleri ve hedefleri birbirine bağlamış olursunuz.
Önemli
Veri akışı grafikleri şu anda yalnızca MQTT, Kafka ve OpenTelemetry uç noktalarını desteklemektedir. Veri Gölü, Microsoft Fabric OneLake, Azure Veri Gezgini ve Yerel Depolama gibi diğer uç nokta türleri desteklenmez. Daha fazla bilgi için bkz. Bilinen sorunlar.
Veri akışları ile veri akışı grafları karşılaştırması
Azure IoT İşlemleri, işlem hattındaki verileri işlemek için iki yol sağlar:
| Kapasite | Veri akışları | Veri akışı grafikleri |
|---|---|---|
| Boru hattı şekli | Düzeltildi: zenginleştirme, filtreleme, eşleme | Esnek: herhangi bir sipariş, dallanma, birleştirme |
| Dönüştürme türleri | Harita, filtre, zenginleştirme | Harita, filtre, dal, birleştirme, pencere, zenginleştirme |
| Zamana dayalı toplama | Mevcut değil | Kaydırmalı pencereler ile pencere dönüşümleri |
| Koşullu yönlendirme | Mevcut değil | Dönüştürmeleri dallandır ve birleştir |
| Uç nokta desteği | Tüm uç nokta türleri | Yalnızca MQTT, Kafka ve OpenTelemetry |
Desteklenen uç nokta türlerini kullanan yeni projeler için veri akışı grafiklerini öneririz. Veri akışları tüm senaryolar için tam olarak desteklenmektedir ve tüm uç nokta türlerini destekler.
Kullanılabilir dönüşümler
Her dönüşüm, bir kaynağın içindeki diğer dönüşümlerle birlikte kurallar ve zincirle yapılandırdığınız önceden oluşturulmuş bir DataflowGraph işleme adımıdır.
| Dönüşüm | Artifact | Description |
|---|---|---|
| Harita | azureiotoperations/graph-dataflow-map:1.0.0 |
Alanları yeniden adlandırın, yeniden yapılandırın, hesaplayıp kopyalayın. |
| Filtre | azureiotoperations/graph-dataflow-filter:1.0.0 |
Bir koşulla eşleşen iletileri bırakın. |
| Şube | azureiotoperations/graph-dataflow-branch:1.0.0 |
Her iletiyi, bir koşula bağlı olarak true veya false yoluna yönlendirin. |
| Concatenate | azureiotoperations/graph-dataflow-concatenate:1.0.0 |
İki veya daha fazla yolu bir arada birleştirin. |
| Pencere | azureiotoperations/graph-dataflow-window:1.0.0 |
İletileri bir zaman aralığı boyunca toplayın, ardından bir araya getirin. |
Tüm dönüşümler işleçler, işlevler ve alan başvuruları için bir ifade dilini paylaşır. Ayrıca iletileri harita, filtre ve dal dönüşümlerindeki bir durum deposundaki dış verilerle zenginleştirebilirsiniz .
Dönüşümler nasıl oluşur?
Dönüşümler bir DataflowGraph kaynağın içinde sırayla bağlanır: Kaynak > Dönüşümü A > Dönüşümü B > ... > Hedef.
Dallanma dönüşümleri akışı paralel yollara böler ve art arda ekleme dönüşümleri onları geri birleştirir.
İstediğiniz sayıda dönüşümü istediğiniz sırayla zincirleyebilirsiniz. Tek bir haritalama dönüştürmesi olan bir işlem hattı, her yolu filtreleyen, dallayan, her yolu farklı şekilde haritalayan, bir araya getiren ve ardından bir zaman penceresi üzerinden toplayan işlem hattı kadar geçerlidir.
Yapılandırma nasıl çalışır?
Bir veri akışı grafiğindeki her dönüşüm, container kayıt defterinden çekilen önceden oluşturulmuş bir öğeye başvurur. Grafik kaynağının bölümünde kuralları JSON configuration olarak geçirerek dönüşümü yapılandırabilirsiniz.
Azure IoT İşlemlerini dağıttığınızda, default işaret eden mcr.microsoft.com adlı varsayılan bir kayıt defteri uç noktası otomatik olarak oluşturulur. Yerleşik dönüşümler, Microsoft Container Registry'den artifaktları çekmek için bu endpoint'i kullanır. Ek kayıt defteri kurulumu gerekmez.
Aşağıda bir MQTT konusundan sıcaklık verilerini okuyan, Santigrat'ı bir harita dönüşümüyle Fahrenheit'e dönüştüren ve sonucu yayımlayan eksiksiz bir örnek verilmiştir:
Operasyonlar deneyiminde:
- Veri akışı grafiği>Veri akışı grafiği oluşturu seçin.
- Varsayılan uç nokta ve konu başlığına sahip bir
telemetry/temperatureekleyin. -
Harita dönüşümü ekleyin. Giriş
temperature, çıkıştemperature_fve ifadecToF($1)ile bir kural yapılandırın. - Varsayılan uç nokta ve konu başlığına sahip bir
telemetry/convertedekleyin. - Bağlan: kaynak → eşleyin → hedef.
- Kaydetseçeneğini seçin.
İşlem hattı üç öğe tanımlar: bir kaynak, bir dönüşüm (ile nodeType: Graphgösterilir) ve bir hedef. Bağlantılar, aralarındaki verilerin nasıl aktığını açıklar. Dönüştürmenin configuration anahtarı altında kuralları JSON dizesi olarak geçirir.
Aşağıdaki yönergeler makalelerinde örnekler, dönüştürme kurallarının kendilerine odaklanır. Veri akışı grafı oluşturmaya yönelik adım adım kılavuz için bkz. Veri akışı grafı oluşturma.
Yerleşik dönüşümler ile WASM dönüşümleri karşılaştırması
Veri akışı grafikleri iki tür dönüşümü destekler:
- Yerleşik dönüşümler Microsoft tarafından önceden oluşturulmuş (harita, filtre, dal, birleştirme, pencere). Bunları kurallarla yapılandırabilirsiniz. Kodlama gerekmez.
- WASM dönüşümleri , geliştiricilerin derleyip dağıttığı özel WebAssembly modülleridir. Yerleşik dönüşümlerin kapsamadığını belirten bir mantığa ihtiyacınız olduğunda bunları kullanın.
Her iki dönüşüm türü de aynı DataflowGraph kaynak içinde çalışır ve tek bir işlem hattında karıştırılabilir. Özel dönüşümleri oluşturma ve dağıtma hakkında bilgi için bkz. Veri akışı grafiklerinde WASM dönüşümlerini kullanma.
Hata yönetimi
Bir dönüşüm bir iletiyi işlerken bir hatayla karşılaştığında (örneğin, eksik bir alan veya geçersiz bir ifade), ileti bırakılır ve bir hata günlüğe kaydedilir. İşlem hattı sonraki iletileri işlemeye devam eder.
İşleme hatalarının yaygın nedenleri:
- Bir kuralın
inputsiçinde başvuruda bulunılan alan iletide yok. - Filtre veya dal ifadesi boole olmayan bir değer döndürür.
- İfade uyumsuz bir veri türüne başvurur (örneğin, aritmetik olarak JSON nesnesi kullanma).
- Zenginleştirme için kullanılan bir durum deposuna ulaşılamıyor.
İşleme hatalarını izlemek için veri akışı grafiğinin pod günlüklerini denetleyin veya ölçüm uç noktalarını kullanın. Daha fazla bilgi için bkz . Gözlemlenebilirliği ve izlemeyi yapılandırma.
Durum bilgisi olan grafikler için ölçeklendirme sınırlaması
Pencere gibi durum bilgisi olan dönüşümler içeren veri akışı graflarının 1veri akışı profili örneği sayısıyla çalıştırılması gerekir. Örnek sayısı birden fazla olduğunda, gelen iletiler paylaşılan abonelikler aracılığıyla örnekler arasında dağıtılır. Her örnek kendi toplama durumunu koruduğundan ve örnekler birbirleriyle durum iletişiminde bulunmadığından, her örnek iletilerin yalnızca bir bölümünü görür. Bu, ortalamalar, toplamlar ve sayımlar gibi toplama sonuçlarının eksik veriler üzerinden hesaplanmasını sağlar.
Durum bilgisi olmayan veri akışı grafikleri (yalnızca eşleme, filtre, dal ve concat dönüşümlerini kullananlar), aktarım hızını artırmak için daha yüksek örnek sayılarını güvenle kullanabilir.
Performans kılavuzu
İşlem hattındaki her dönüşüm işlem yükü ekler. Şu yönergeleri göz önünde bulundurun:
- Daha fazla kuralla daha az dönüşüm tercih edin. Aynı yapı üzerinde çalışan birçok dönüştürme kuralınız varsa, bunları her kural için ayrı dönüşümler oluşturmak yerine tek bir harita dönüşümüne yerleştirin.
- Mantık ayrı olduğunda birden çok dönüşüm kullanın. Farklı işleme adımları temelden farklı olduğunda ayrı dönüştürmeler anlamlı olur (filtreleme ve eşleme ile toplama karşılaştırması).
- İlgili kuralları bir arada tutun. Tek bir eşleme dönüşümü, alan yeniden adlandırma, yeniden yapılandırma, hesaplanan alanlar ve meta veri dönüştürme işlemlerini tek seferde işleyebilir.
Sonraki Adımlar
- Veri akışları ile veri akışı grafları karşılaştırması
- Veri akışı grafı oluşturma
- Harita ile verileri dönüştürme
- Verileri filtreleme ve yönlendirme
- Zaman içinde verileri toplama
- Dış verilerle zenginleştirme
- İfadeler Referansı
- İletileri farklı konulara yönlendirme
- İfadeler Referansı
- Veri akışı grafiklerinde WASM dönüşümlerini kullanma