In DocumentDB sind wir auf 512 KB JSON-Dokument beschränkt.DocumentDB, verwenden Sie kleine Feldnamen für JSON-Dokumente, um die Länge zu minimieren
Mit Blick auf die Antwort here, um die Größe des gesendeten Dokuments zu schätzen, wird empfohlen, die folgende Methode JsonConvert.SerializeObject
und Encoding.UTF8.GetBytes(s)
zu verwenden. Es gibt keine Vorstellung von Komprimierung, selbst mit dem .NET SDK.
Wenn Sie ein Array von benutzerdefinierten Objekten verwenden, können die Feldnamen häufig wiederholt werden.
Meine Frage ist: sollte ich versuchen, kurze Namen für JSON-Felder verwenden, um die Größe über die Lesbarkeit zu reduzieren? Empfehlen Sie, den Namen der serialisierten Eigenschaft mit dem von JSON.NET bereitgestellten Attribut [JsonProperty]
zu überschreiben? Hier
Es liegt wirklich an Ihnen - viele Möglichkeiten zum Komprimieren/Minimieren von JSON (mehrere Bibliotheken existieren, die dies tun), einschließlich Ihres Vorschlags, kürzere Eigenschaftsnamen zu verwenden. Keine einzige richtige Antwort auf dieses Problem (und Fragen zu Tool/Framework-Empfehlungen sind nicht Thema). Nur neugierig (und nicht direkt mit der Frage verbunden) - haben Sie bestätigt, dass Ihre Dokumente> 512K erfordern? –
Stimmen Sie mit David überein. Und ich habe festgestellt, dass jede Datenmodellierung, die Sie nahe an 512 K bringt, wahrscheinlich zu stark denormalisiert ist. Es ist wichtig, dass Sie sich nie für ein Datenmodell entscheiden, bei dem ein Array-Element oder Unterobjekt unbegrenzt wachsen kann. Wenn Sie daran denken, die Anzahl der Elemente in einem Array-Feld oder Unterobjekt zu begrenzen, und es gibt keine natürliche Grenze (ein Auto hat nur 4 Reifen), ist das ein Warnsignal. –
@DavidMakogon ja Ich hatte eine Situation, vor allem mit Arrays, wo die Anzahl der Elemente die Dokumentgröße größer als 512 KB macht –