Azure IoT İşlemleri'nde veri akışı grafı oluşturma

Veri akışı grafiği, kaynaklar ve hedefler arasında hareket ettikçe verileri dönüştüren birleştirilebilir işlem hattıdır. Standart veri akışı sabit zenginleştirme, filtre ve harita dizisini izler. Veri akışı grafiği, dönüşümleri herhangi bir sırada zincirlemenize, paralel yollara dallanmanıza ve zaman içinde verileri toplamanıza olanak tanır.

Bu makalede, adım adım veri akışı grafı oluşturma adımları gösterilir. Veri akışı graflarına ve kullanılabilir dönüşümlere genel bakış için bkz. Veri akışı graflarına genel bakış.

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 Local Storage gibi diğer uç nokta türlerini desteklemiyorlar.

Dönüşümler, değerleri, test koşullarını ve referans alanlarını hesaplamak için bir ifade dili kullanır. İfadeler, girdilere isimle değil, konuma göre atıfta bulunur: listedeki inputs ilk girdi $1, ikinci girdi $2, ve benzeri. cToF gibi yerleşik işlevler, bu değerleri dönüştürür ve işler.

Operatörler, fonksiyonlar, veri tipleri ve metaveri alanlarının tam listesi için İfadeler referansına bakınız.

Önkoşullar

  • Geliştirme makinenizde yüklü Azure CLI. Kullanılabilir Azure CLI uzantıları sayfasında, azure-iot-ops uzantısını kullanmak için gereken en düşük sürüme bakın. Sürümünüzü denetlemek ve az --version gerekirse güncelleştirmek için kullanınaz upgrade. Daha fazla bilgi için bkz. Azure CLI yükleme.

  • Azure CLI için Azure IoT İşlemleri uzantısı. Uzantıyı eklemek veya en son sürüme güncelleştirmek için aşağıdaki komutu kullanın:

    az extension add --upgrade --name azure-iot-ops
    

Bu makaledeki Azure CLI örnek, her değeri bir kez ayarlayabilmeniz ve ardından komutları kopyalayıp yapıştırmanız için ortam değişkenlerini kullanır as-is. Eğer hızlı başlangıçta Azure IoT İşlemleri Codespaces ortamını kullanıyorsanız, bu değişkenler zaten sizin için ayarlanmış ve bu adımı atlayabilirsiniz. Aksi takdirde, komutları çalıştırmadan önce shell'inizde aşağıdaki ortam değişkenlerini ayarlayın.

Aşağıdaki betikler en sık kullanılan ortam değişkenlerini ayarlar:

Ortam değişkeni Açıklama
SUBSCRIPTION_ID Azure IoT İşlemleri örneğini içeren aboneliğin kimliği.
RESOURCE_GROUP Azure IoT İşlemleri örneğini içeren kaynak grubunun adı.
AIO_INSTANCE_NAME Azure IoT İşlemleri örneğinizin adı. Örneklerinizi listelemek için çalıştırın az iot ops list -o table.
CLUSTER_NAME Azure Arc özellikli Kubernetes kümesinin adı, örneğini barındırıyor.
LOCATION Yeni kaynaklar için kullanılacak Azure bölgesi, örneğin eastus.
SUBSCRIPTION_ID=<subscription-id>
RESOURCE_GROUP=<resource-group-name>
AIO_INSTANCE_NAME=<instance-name>
CLUSTER_NAME=<cluster-name>
LOCATION=<region>

Sadece bu makalenin kullandığı değişkenleri ayarlamanız yeterlidir. Bu makale, seçtiğiniz kaynak adları için ek ortam değişkenleri kullanabilir. Makale, tanıtıldıkları yere nasıl yerleştirileceğini açıklıyor.

Bu makale ayrıca veri akışı grafiği ve profil adları için ve GRAPH_NAME ortam değişkenlerini kullanırPROFILE. İlgili komutları çalıştırmadan önce her birini ayarlayın.

Veri akışı grafı oluşturma

Veri akışı grafı üç tür öğe içerir: verileri getiren kaynaklar , işleyen dönüşümler ve bunları gönderen hedefler . Bunları verilerin akmasını istediğiniz sırayla bağlayın.

  1. Operasyon deneyiminde, Azure IoT İşlemleri örneğinize gidin.

  2. Veri akışı grafiği>Veri akışı grafiği oluşturu seçin.

    Veri akışı grafiğini gösteren işlem deneyiminin ekran görüntüsü.

  3. Veri akışı grafiği için bir ad girin ve bir veri akışı profili seçin. Varsayılan profil varsayılan olarak seçilidir.

    Ad alanı ve profil açılan listesini gösteren operasyon deneyimi oluşturma iletişim kutusunun ekran görüntüsü.

  4. Tuvale öğeler ekleyerek işlem hattınızı oluşturun.

    1. Kaynak ekleme: Kaynak uç noktasını seçin ve gelen iletiler için abone olunacak konuları yapılandırın.

      İşlem yönetimi kaynak yapılandırma panelinin ekran görüntüsü, uç nokta açılır menüsünü ve konu girişini gösteriyor.

    2. Dönüşüm ekleme: Verileri işlemek için bir veya daha fazla dönüşüm seçin. Mevcut dönüşümler arasında map, filter, branch, concatenate, window ve throttle bulunur. Her dönüştürme türüyle ilgili ayrıntılar için bkz. Veri akışı graflarına genel bakış.

      Kullanılabilir dönüştürme türlerini gösteren işlem deneyimi dönüştürme seçim menüsünün ekran görüntüsü.

      Dal dönüştürme yapılandırma örneğini gösteren işlem deneyiminin ekran görüntüsü.

    3. Hedef ekleme: Hedef uç noktayı seçin ve işlenen verileri göndermek için konuyu veya yolu yapılandırın.

      Hedef örneği gösteren işlem deneyiminin ekran görüntüsü.

  5. Öğeleri verilerin akmasını istediğiniz sırayla bağlayın.

    Bağlı kaynak, dönüşüm ve hedef işlem hattını gösteren işlem deneyimi tuvalinin ekran görüntüsü.

  6. Veri akışı grafiğini dağıtmak için Kaydet'i seçin.

Kaynağı yapılandırma

Kaynak, verilerin işlem hattına nereye girdiğini tanımlar. Bir uç nokta referansını ve bir veya daha fazla konuyu belirtin.

Veri akışı grafı düzenleyicisinde kaynak öğesini seçin ve yapılandırın:

Setting Açıklama
Bitiş noktası Kullanılacak veri akışı uç noktası. Yerel MQTT aracısı için varsayılan'ı seçin.
Konular Gelen iletiler için abone olunacak bir veya daha fazla konu.

Dönüşümleri ekle

Kaynak ve hedef arasında işlem verilerini dönüştürür. Her dönüşüm, yerleşik bir artefakta referans verir ve yapılandırma kurallarına sahiptir.

Kullanılabilir yerleşik dönüşümler şunlardır:

Dönüşüm Yapıt Açıklama
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.
Dal 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 Belirli bir zaman aralığındaki iletileri toplayın, ardından bunları birleştirin.
Kısıtlama azureiotoperations/graph-dataflow-throttle:1.0.0 MQTT konu desenine göre mesaj hızını sınırlayın.

İletileri dış verilerle zenginleştirme hakkında daha fazla bilgi için bkz. Dış verilerle zenginleştirme.

Veri akışı grafı düzenleyicisinde Dönüşüm ekle'yi seçin ve dönüştürme türünü seçin. Görsel düzenleyicisinde kuralları yapılandırın.

Birden çok dönüşümü zincirleme

İstersiz sayıda dönüşümü zincirleyin. Bunları nodeConnections bölümde verilerin akmasını istediğiniz sırayla bağlayın:

İşlem sırasını tanımlamak için tuvaldeki dönüşümler arasında bağlantıları sürükleyin.

Hedefi yapılandırma

Hedef, işlenen verinin nereye gideceğini tanımlar. Uç nokta referansı ve konu veya yol belirtin.

Hedef öğeyi seçin ve yapılandırın:

Setting Açıklama
Bitiş noktası Veri göndermek için veri akışı uç noktası.
Topic İşlenen verilerin yayımlandığı konu veya yol.

İleti içeriğine dayalı dinamik konu yönlendirmesi için bkz. İletileri farklı konulara yönlendirme.

Veri akışı grafiğinin çalıştığını doğrulama

Bir veri akış grafiğini dağıttıktan sonra çalıştığını doğrulayın:

Operasyon deneyiminde, durumunu görmek için veri akış grafiğinizi seçin. İyi durumdaki bir grafik çalışıyor durumunu gösterir.