Condividi tramite


Output degli argomenti del 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 forniscono una forma di comunicazione uno-a-molti.

Nella tabella seguente sono elencati i nomi delle proprietà e le relative descrizioni per la creazione di un output dell'argomento del bus di servizio.

Nome della proprietà Descrizione
Alias di output Nome descrittivo usato nelle query per indirizzare l'output della query a questo argomento del bus di servizio.
Spazio dei nomi bus di servizio: Contenitore per un set di entità di messaggistica. Quando è stato creato un nuovo hub eventi, è stato creato anche uno spazio dei nomi del bus di servizio.
Nome argomento Gli argomenti sono entità di messaggistica, simili a hub eventi e code. Sono progettati per raccogliere flussi di eventi da dispositivi e servizi. Quando viene creato un argomento, viene assegnato anche un nome specifico. I messaggi inviati a un argomento non sono disponibili a meno che non venga creata una sottoscrizione, quindi assicurarsi che nell'argomento siano presenti una o più sottoscrizioni.
Nome dei criteri dell'argomento Quando si crea un argomento del 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 dei criteri dell'argomento Chiave di accesso condiviso usata per autenticare l'accesso allo spazio dei nomi del bus di servizio.
Formato di serializzazione degli eventi Formato di serializzazione per i dati di output. Sono supportati JSON, CSV e Avro.
Codifica Se si usa il formato CSV o JSON, è necessario specificare una codifica. UTF-8 è l'unico formato di codifica supportato in questo momento.
Delimitatore Applicabile solo per la serializzazione CSV. Analisi di flusso supporta diversi delimitatori comuni per la serializzazione dei dati in formato CSV. I valori supportati sono virgole, punto e virgola, spazio, tabulazioni e barre verticali.
Colonne delle proprietà Optional. Colonne delimitate da virgole che devono essere associate come proprietà utente del messaggio in uscita anziché come payload. Altre informazioni su questa funzionalità sono disponibili nella sezione Proprietà dei metadati personalizzate per l'output.
Colonne delle proprietà di sistema Optional. Coppie chiave valore di Proprietà di sistema e nomi di colonna corrispondenti che devono essere collegati 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.

Partitioning

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 del bus di servizio. Per ottimizzare, usare un singolo evento per messaggio.

Proprietà dei metadati personalizzate per l'output

È possibile collegare 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. La chiave è il nome della colonna e il valore è il valore della colonna nel dizionario delle proprietà. Tutti i tipi di dati di Analisi di flusso sono supportati, ad eccezione di Record e Array.

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

  1. Usare la query seguente:

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

    Colonne delle proprietà

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

Proprietà personalizzate dell'evento

Proprietà del sistema

È possibile collegare colonne di query come proprietà di sistema ai messaggi della coda o dell'argomento del bus di servizio in uscita. Queste colonne non vengono inserite nel payload, ma la proprietà di sistema ServiceBusMessage corrispondente viene popolata con i valori della colonna di query. Queste proprietà di sistema sono supportate: 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 di oggetto JSON. I dettagli su questo formato sono i seguenti:

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

In questo modo viene illustrato come usare questa proprietà:

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

In questo modo i messaggi della coda del MessageId bus di servizio con column1i valori di PartitionKey vengono impostati con column2i valori di .

Passaggi successivi