Aracılığıyla paylaş


Azure IoT Veri İşlemcisi Önizleme işlem hattından Azure Veri Gezgini'a veri gönderme

Önemli

Azure Arc tarafından etkinleştirilen Azure IoT İşlemleri Önizlemesi şu anda ÖNİzLEME aşamasındadır. Bu önizleme yazılımını üretim ortamlarında kullanmamalısınız.

Beta veya önizleme aşamasında olan ya da başka bir şekilde henüz genel kullanıma sunulmamış olan Azure özelliklerinde geçerli olan yasal koşullar için bkz. Microsoft Azure Önizlemeleri için Ek Kullanım Koşulları.

Azure IoT Veri İşlemcisi Önizleme işlem hattından Azure Veri Gezgini bir tabloya veri yazmak için Azure Veri Gezgini hedefini kullanın. Hedef aşama, iletileri Azure Veri Gezgini'a göndermeden önce toplu işler.

Önkoşullar

Azure Veri Gezgini hedef işlem hattı aşamasını yapılandırmak ve kullanmak için şunları yapmanız gerekir:

Azure Veri Gezgini ayarlama

Veri işlem hattından Azure Veri Gezgini'a yazabilmeniz için önce işlem hattından veritabanına erişim vermeniz gerekir. İşlem hattının kimliğini veritabanında doğrulamak için bir hizmet sorumlusu veya yönetilen kimlik kullanabilirsiniz. Yönetilen kimlik kullanmanın avantajı, hizmet sorumlusunun yaşam döngüsünü yönetmeniz gerekmemektir. Yönetilen kimlik Azure tarafından otomatik olarak yönetilir ve atandığı kaynağın yaşam döngüsüne bağlıdır.

İstemci gizli dizisiyle hizmet sorumlusu oluşturmak için:

  1. Hizmet sorumlusu oluşturmak için aşağıdaki Azure CLI komutunu kullanın.

    az ad sp create-for-rbac --name <YOUR_SP_NAME> 
    
  2. Bu komutun çıktısı bir appId, displayName, passwordve tenantiçerir. Microsoft Fabric gibi bulut kaynağınıza erişimi yapılandırırken, gizli dizi oluştururken ve işlem hattı hedefi yapılandırırken kullanılacak bu değerleri not edin:

    {
        "appId": "<app-id>",
        "displayName": "<name>",
        "password": "<client-secret>",
        "tenant": "<tenant-id>"
    }
    

Azure Veri Gezgini veritabanınıza yönetici erişimi vermek için veritabanı sorgu sekmenizde aşağıdaki komutu çalıştırın:

.add database <DatabaseName> admins (<ApplicationId>) <Notes>

Hedef aşamanın Azure Veri Gezgini'a bağlanması için kimlik doğrulama ayrıntılarını içeren bir gizli diziye erişmesi gerekir. Gizli dizi oluşturmak için:

  1. Azure Key Vault'unuza hizmet sorumlusunu oluştururken not ettiğiniz istemci gizli dizisini içeren bir gizli dizi eklemek için aşağıdaki komutu kullanın:

    az keyvault secret set --vault-name <your-key-vault-name> --name AccessADXSecret --value <client-secret>
    
  2. Azure IoT İşlemleri Önizleme dağıtımınız için gizli dizileri yönetme makalesindeki adımları izleyerek Kubernetes kümenize gizli dizi başvurunuzu ekleyin.

İşlem grubu oluşturma

Veri İşlemcisi, Toplu olarak Azure Veri Gezgini yazar. Verileri göndermeden önce veri işlemcisinde toplu iş yaparken Azure Veri Gezgini kendi varsayılan alma toplu işlem ilkesine sahiptir. Bu nedenle, Veri İşlemcisi azure Veri Gezgini hedefine yazdıktan hemen sonra Verilerinizi Azure Veri Gezgini'da göremeyebilirsiniz.

İşlem hattı gönderir göndermez Azure Veri Gezgini'da verileri görüntülemek için alma toplu işlem ilkesi sayısını olarak 1ayarlayabilirsiniz. Alma toplu işlemi ilkesini düzenlemek için veritabanı sorgu sekmenizde aşağıdaki komutu çalıştırın:

.alter database <your-database-name> policy ingestionbatching
```
{
    "MaximumBatchingTimeSpan" : "00:00:30",
    "MaximumNumberOfItems" : 1,
    "MaximumRawDataSizeMB": 1024
}
```

Hedef aşamayı yapılandırma

Azure Veri Gezgini hedef aşama JSON yapılandırması aşamanın ayrıntılarını tanımlar. Aşamayı yazmak için form tabanlı kullanıcı arabirimiyle etkileşimde bulunabilir veya Gelişmiş sekmesinde JSON yapılandırmasını sağlayabilirsiniz:

Alan Tür Açıklama Zorunlu Varsayılan Örnek
Görünen ad String Veri İşlemcisi kullanıcı arabiriminde gösterilecek ad. Yes - Azure IoT MQ output
Açıklama String Aşamanın ne yaptığının kullanıcı dostu açıklaması. Hayır Write to topic default/topic1
Küme URL'si String URI (Bu değer veri alımı URI'si değildir). Yes -
Veritabanı String Veritabanı adı. Yes -
Tablo String Yazacak tablonun adı. Yes -
Batch Batch Verileri toplu iş olarak kullanma. Hayır 60s 10s
Yeniden Dene Yeniden dene Kullanılacak yeniden deneme ilkesi. Hayır default fixed
Kimlik Doğrulaması1 String Azure Veri Gezgini'a bağlanmak için kimlik doğrulama ayrıntıları. Service principal veya Managed identity Hizmet sorumlusu Yes -
Sütun > Adı Dize Sütunun adı. Yes temperature
Sütunlar > Yolu Yol Her veri kaydının içinde, sütunun değerinin okunması gereken konum. Hayır .{{name}} .temperature

1Kimlik Doğrulaması: Hedef aşama şu anda Azure Veri Gezgini'a bağlandığında hizmet sorumlusu tabanlı kimlik doğrulamasını veya yönetilen kimliği destekler.

Hizmet sorumlusu tabanlı kimlik doğrulamasını yapılandırmak için aşağıdaki değerleri sağlayın. Hizmet sorumlusunu oluşturduğunuzda ve kümenize gizli dizi başvurusunu eklediğinizde bu değerleri not edindiniz.

Alan Açıklama Gerekli
TenantId Kiracı kimliği. Yes
ClientId Veritabanına erişimi olan hizmet sorumlusunu oluşturduğunuzda not ettiğiniz uygulama kimliği. Yes
Gizli dizi Kümenizde oluşturduğunuz gizli dizi başvurusu. Yes

Örnek yapılandırma

Aşağıdaki JSON örneği, iletinin tamamını veritabanındaki tabloya quickstart yazan eksiksiz bir Azure Veri Gezgini hedef aşaması yapılandırmasını gösterir:

{
    "displayName": "Azure data explorer - 71c308",
    "type": "output/dataexplorer@v1",
    "viewOptions": {
        "position": {
            "x": 0,
            "y": 784
        }
    },
    "clusterUrl": "https://clusterurl.region.kusto.windows.net",
    "database": "databaseName",
    "table": "quickstart",
    "authentication": {
        "type": "servicePrincipal",
        "tenantId": "tenantId",
        "clientId": "clientId",
        "clientSecret": "secretReference"
    },
    "batch": {
        "time": "5s",
        "path": ".payload"
    },
    "columns": [
        {
            "name": "Timestamp",
            "path": ".Timestamp"
        },
        {
            "name": "AssetName",
            "path": ".assetName"
        },
        {
            "name": "Customer",
            "path": ".Customer"
        },
        {
            "name": "Batch",
            "path": ".Batch"
        },
        {
            "name": "CurrentTemperature",
            "path": ".CurrentTemperature"
        },
        {
            "name": "LastKnownTemperature",
            "path": ".LastKnownTemperature"
        },
        {
            "name": "Pressure",
            "path": ".Pressure"
        },
        {
            "name": "IsSpare",
            "path": ".IsSpare"
        }
    ],
    "retry": {
        "type": "fixed",
        "interval": "20s",
        "maxRetries": 4
    }
}

Yapılandırma şunları tanımlar:

  • İletiler 5 saniye boyunca toplu olarak oluşturulur.
  • Sütunların verilerini bulmak için toplu iş yolunu .payload kullanır.

Örnek

Aşağıdaki örnekte Azure Veri Gezgini hedef aşamasına örnek bir giriş iletisi gösterilmektedir:

{
  "payload": {
    "Batch": 102,
    "CurrentTemperature": 7109,
    "Customer": "Contoso",
    "Equipment": "Boiler",
    "IsSpare": true,
    "LastKnownTemperature": 7109,
    "Location": "Seattle",
    "Pressure": 7109,
    "Timestamp": "2023-08-10T00:54:58.6572007Z",
    "assetName": "oven"
  },
  "qos": 0,
  "systemProperties": {
    "partitionId": 0,
    "partitionKey": "quickstart",
    "timestamp": "2023-11-06T23:42:51.004Z"
  },
  "topic": "quickstart"
}