2016-11-09 2 views
0

Ich verwende Azure Stream Analytics zum Streamen von Ereignissen von Event Hubs zu DocumentDB. Ich habe den Eingang, Abfrage und Ausgang wie dokumentiert konfiguriert, getestet es mit Beispieldaten und es geschafft, Ergebnisse wie erwartet zurückzugeben.Fehler in Azure Stream Analytics mit DocumentDB als Senke erhalten

Aber wenn ich die Streaming-Auftrag und schicken die gleiche Nutzlast wie die Beispieldaten früher beginnen, bekam ich diese Fehlermeldung:

es ein Problem, das Dokument [id] Spalte nach DocumentDB Einschränkungen Formatierung war für DocumentDB db: [Mein-Datenbankname] und Sammlung: [Mein-Sammlungsname].

My Abtastdaten ist ein Array von JSON:

[ 
{ "Sequence": 1, "Tenant": "T1", "Status": "Started" }, 
{ "Sequence": 2, "Tenant": "T1", "Status": "Ended" } 
] 

I die Eingabe konfiguriert haben, wie folgt:

  • Eingangs alias: eventhubs-Ereignisse
  • Herkunftsart : Datenstrom
  • Quelle: Event Hub
  • Abonnement: gleiches Abonnement wie, wo ich den Analytics Job
  • Service-Bus-Namespace erstellen: ein vorhandener Ereignis Hub-Namespace
  • Ereignis Hub Name: Ereignisse (bestehende Ereignis-Hub im Namensraum)
  • Event-Hub Richtlinienname: eine Politik mit Lesezugriff
  • Ereignis Hub Verbrauchergruppe: blank
  • Ereignis Serialisierungsformat: JSON
  • Encoding: UTF-8

Und die Ausgabe wie folgt:

  • Output alias: documentdb-Ereignisse
  • Sink: DocumentDB
  • Abonnement: gleichen Abonnement als ich den Analytics-Job erstellen
  • Konto-ID: ein vorhandene DocumentDB Konto
  • Datenbank: Aufzeichnungen (eine vorhandene Datenbank auf dem Konto)
  • Sammlung Namensmuster: Sammlung (eine bestehende Sammlung in der Datenbank)
  • Dokument-ID: id

Meine Frage ist so einfach wie:

SELECT 
    event.Sequence AS id, 
    event.Tenant, 
    event.Status 
INTO [documentdb-events] 
FROM [eventhubs-events] AS event 

Antwort

3

Es stellt sich heraus, dass alle Feldnamen in der Ausgabe automatisch mit einem niedrigeren Gehäuse versehen sind.

In meiner DocumentDB Sammlung, ich habe Modus die Sammlungen in partitionierten konfiguriert, mit "/ Tenant" als Partition Key.

Da der Fall nicht mit dem der Ausgabe übereinstimmt, ist die Einschränkung fehlgeschlagen.

Durch das Ändern des Partitionsschlüssels in "/ mandant" wurde das Problem behoben.

Hoffnung durch das Teilen der Ergebnisse meiner Ergebnisse könnte einige Probleme für Menschen, die darauf stoßen, zu retten.

Verwandte Themen