Dela via


Service Bus Topics-utdata från Azure Stream Analytics

Service Bus-köer tillhandahåller en en-till-en-kommunikationsmetod från avsändare till mottagare. Service Bus-ämnen ger en en-till-många-form av kommunikation.

I följande tabell visas egenskapsnamnen och deras beskrivningar för att skapa ett Service Bus-ämnesutdata.

Egenskapsnamn Description
Utdataalias Ett eget namn som används i frågor för att dirigera frågeutdata till det här Service Bus-ämnet.
Service Bus namnrymd En container för en uppsättning meddelandeentiteter. När du skapade en ny händelsehubb skapade du även ett Service Bus-namnområde.
Ämnesnamn Ämnen är meddelandeentiteter som liknar händelsehubbar och köer. De är utformade för att samla in händelseströmmar från enheter och tjänster. När ett ämne skapas får det också ett specifikt namn. Meddelanden som skickas till ett ämne är inte tillgängliga om inte en prenumeration har skapats, så se till att det finns en eller flera prenumerationer under ämnet.
Namn på ämnesprincip När du skapar ett Service Bus-ämne kan du också skapa principer för delad åtkomst på avsnittets fliken Konfigurera . Varje princip för delad åtkomst har ett namn, behörigheter som du anger och åtkomstnycklar.
Ämnesprincipnyckel Den delade åtkomstnyckel som används för att autentisera åtkomst till Service Bus-namnområdet.
Format för serialisering av händelser Serialiseringsformatet för utdata. JSON, CSV och Avro stöds.
Encoding Om du använder CSV- eller JSON-format måste en kodning anges. UTF-8 är det enda kodningsformat som stöds just nu.
Delimiter Gäller endast för CSV-serialisering. Stream Analytics stöder ett antal vanliga avgränsare för serialisering av data i CSV-format. Värden som stöds är kommatecken, semikolon, blanksteg, flik och lodrät stapel.
Egenskapskolumner Valfritt. Kommaavgränsade kolumner som måste kopplas som användaregenskaper för det utgående meddelandet i stället för nyttolasten. Mer information om den här funktionen finns i avsnittet Anpassade metadataegenskaper för utdata.
Kolumner för systemegenskap Valfritt. Nyckelvärdepar med systemegenskaper och motsvarande kolumnnamn som måste kopplas till det utgående meddelandet i stället för nyttolasten.

Antalet partitioner baseras på Service Bus SKU och storlek. Partitionsnyckeln är ett unikt heltalsvärde för varje partition.

Partitionering

Partitionering väljs automatiskt. Antalet partitioner baseras på Service Bus SKU och storlek. Partitionsnyckeln är ett unikt heltalsvärde för varje partition. Antalet utdataskrivare är detsamma som antalet partitioner i utdataavsnittet.

Batchstorlek för utdata

Den maximala meddelandestorleken är 256 KB per meddelande för Standard-nivån och 1 MB för Premium-nivån. Mer information finns i Service Bus-gränser. Om du vill optimera använder du en enskild händelse per meddelande.

Anpassade metadataegenskaper för utdata

Du kan bifoga frågekolumner som användaregenskaper till dina utgående meddelanden. Dessa kolumner hamnar inte i nyttolasten. Egenskaperna finns i form av en ordlista i utdatameddelandet. Nyckeln är kolumnnamnet och värdet är kolumnvärdet i egenskapsordlistan. Alla Datatyper för Stream Analytics stöds förutom Post och Matris.

I följande exempel läggs fälten DeviceId och DeviceStatus till i metadata.

  1. Använd följande fråga:

    select *, DeviceId, DeviceStatus from iotHubInput
    
  2. Konfigurera DeviceId,DeviceStatus som egenskapskolumner i utdata.

    Property columns

Följande bild är av de förväntade utdatameddelandeegenskaperna som inspekteras i EventHub med Service Bus Explorer.

Event custom properties

Systemegenskaper

Du kan koppla frågekolumner som systemegenskaper till din utgående service bus-kö eller ämnesmeddelanden. De här kolumnerna hamnar inte i nyttolasten i stället så fylls motsvarande ServiceBusMessage-systemegenskap i med frågekolumnvärdena. Dessa systemegenskaper stöds – MessageId, ContentType, Label, PartitionKey, ReplyTo, SessionId, CorrelationId, To, ForcePersistence, TimeToLive, ScheduledEnqueueTimeUtc.

Strängvärden för dessa kolumner parsas som motsvarande värdetyp för systemegenskap och eventuella parsningsfel behandlas som datafel. Det här fältet anges som ett JSON-objektformat. Information om det här formatet är följande:

  • Omgiven av klammerparenteser {}.
  • Skrivet i nyckel/värde-par.
  • Nycklar och värden måste vara strängar.
  • Nyckeln är systemegenskapens namn och värdet är frågekolumnnamnet.
  • Nycklar och värden avgränsas med ett kolon.
  • Varje nyckel/värde-par avgränsas med ett kommatecken.

Detta visar hur du använder den här egenskapen –

  • Fråga: select *, column1, column2 INTO queueOutput FROM iotHubInput
  • Systemegenskapskolumner: { "MessageId": "column1", "PartitionKey": "column2"}

Detta anger MessageId service bus-kömeddelandena med column1värden och PartitionKey anges med column2värden.

Nästa steg