output degli argomenti bus di servizio da Analisi di flusso di Azure

Le code del bus di servizio forniscono un metodo di comunicazione uno-a-uno dal mittente al destinatario. Gli argomenti del bus di servizio offrono una forma di comunicazione uno-a-molti.

La tabella seguente elenca i nomi delle proprietà e la relativa descrizione per la creazione di un output dell'argomento del bus di servizio.

Nome proprietà Descrizione
Alias di output Nome descrittivo usato nelle query per indirizzare l'output delle query a questo argomento del bus di servizio.
Spazio dei nomi bus di servizio Contenitore per un set di entità di messaggistica. Quando si crea un nuovo hub eventi, viene anche creato uno spazio dei nomi del bus di servizio.
Nome argomento Gli argomenti sono entità di messaggistica, simili agli Hub eventi e alle code. Sono progettati per raccogliere i flussi di eventi da dispositivi e servizi. Quando un argomento viene creato, gli viene anche assegnato un nome specifico. Dal momento che i messaggi inviati a un argomento non sono disponibili se non viene creata una sottoscrizione, assicurarsi che esistano una o più sottoscrizioni per l'argomento.
Nome criteri argomento Quando si crea un argomento bus di servizio, è anche possibile creare criteri di accesso condiviso nella scheda Configura dell'argomento. Ogni criterio di accesso condiviso ha un nome, autorizzazioni impostate e chiavi di accesso.
Chiave criteri argomento Chiave di accesso condiviso usata per autenticare l'accesso allo spazio dei nomi del bus di servizio di Azure.
Formato di serializzazione eventi Formato di serializzazione per i dati di output. Sono supportati i formati JSON, CSV e Avro.
Codifica Se il formato è CSV o JSON, è necessario specificare un formato di codifica. Al momento UTF-8 è l'unico formato di codifica supportato.
Delimitatore Applicabile solo per la serializzazione CSV. Analisi di flusso supporta una serie di delimitatori comuni per la serializzazione dei dati in formato CSV. I valori supportati sono virgola, punto e virgola, spazio, tabulazione e barra verticale.
Colonne delle proprietà (Facoltativo). Colonne delimitate da virgole che devono essere associate come proprietà utente del messaggio in uscita anziché del payload. Altre informazioni su questa funzionalità sono illustrate nella sezione Proprietà dei metadati personalizzati per l'output.
Colonne delle proprietà di sistema (Facoltativo). Coppie chiave-valore delle proprietà di sistema e nomi di colonna corrispondenti che devono essere allegati al messaggio in uscita anziché al payload.

Il numero di partizioni è basato sullo SKU e sulle dimensioni del bus di servizio. La chiave di partizione è un valore intero univoco per ogni partizione.

Partizionamento

Il partizionamento viene scelto automaticamente. Il numero di partizioni è basato sullo SKU e sulle dimensioni del bus di servizio. La chiave di partizione è un valore intero univoco per ogni partizione. Il numero di writer di output corrisponde al numero di partizioni nell'argomento di output.

Dimensione del batch di output

La dimensione massima del messaggio è di 256 KB per messaggio per il livello Standard e 1 MB per il livello Premium. Per altre informazioni, vedere limiti bus di servizio. Per ottimizzare, usare un singolo evento per messaggio.

Proprietà dei metadati personalizzati per l'output

È possibile aggiungere colonne di query come proprietà utente ai messaggi in uscita. Queste colonne non vengono inserite nel payload. Le proprietà sono presenti sotto forma di dizionario nel messaggio di output. Key è il nome della colonna e value è il valore della colonna nel dizionario delle proprietà. Sono supportati tutti i tipi di dati di Analisi di flusso, ad eccezione di record e matrice.

Nell'esempio seguente i campi DeviceId e DeviceStatus vengono aggiunti ai metadati.

  1. Usa la query seguente:

    select *, DeviceId, DeviceStatus from iotHubInput
    
  2. Configurare DeviceId,DeviceStatus come colonne delle proprietà nell'output.

    Property columns

L'immagine seguente è costituita dalle proprietà del messaggio di output previste esaminate in EventHub usando bus di servizio Explorer.

Event custom properties

Proprietà di sistema

È possibile aggiungere colonne di query come proprietà di sistema ai messaggi in uscita di code o argomenti del bus di servizio. Queste colonne non vengono inserite nel payload, ma la proprietà di sistema ServiceBusMessage corrispondente viene popolata con i valori della colonna di query. Sono supportate le proprietà di sistema seguenti: MessageId, ContentType, Label, PartitionKey, ReplyTo, SessionId, CorrelationId, To, ForcePersistence, TimeToLive, ScheduledEnqueueTimeUtc.

I valori stringa di queste colonne vengono analizzati come tipo di valore della proprietà di sistema corrispondente e gli eventuali errori di analisi vengono considerati come errori di dati. Questo campo viene fornito come formato oggetto JSON. I dettagli su questo formato sono i seguenti:

  • Racchiuso tra parentesi graffe {}.
  • Scritto in coppie chiave/valore.
  • Chiavi e valori devono essere stringhe.
  • Key è il nome della proprietà di sistema e value è il nome della colonna della query.
  • Chiavi e valori sono separati da due punti.
  • Ogni coppia chiave/valore è separata da una virgola.

Di seguito, viene illustrato come usare questa proprietà:

  • Query: select *, column1, column2 INTO queueOutput FROM iotHubInput
  • Colonne delle proprietà di sistema: { "MessageId": "column1", "PartitionKey": "column2"}

Viene impostato MessageId nei messaggi della coda del bus di servizio con i valori di column1 e PartitionKey viene impostato con i valori di column2.

Passaggi successivi