python - Erfahrungen mit Protokollpuffern?

Translate

Ich habe gerade einige Informationen über Google durchgesehenProtokollpufferDatenaustauschformat. Hat jemand mit dem Code herumgespielt oder sogar ein Projekt darum herum erstellt?

Ich verwende derzeit XML in einem Python-Projekt für strukturierte Inhalte, die von Hand in einem Texteditor erstellt wurden, und habe mich gefragt, wie die allgemeine Meinung zu Protokollpuffern als benutzerbezogenem Eingabeformat lautet. Die Vorteile für Geschwindigkeit und Kürze scheinen definitiv vorhanden zu sein, aber es gibt so viele Faktoren, wenn es darum geht, die Daten tatsächlich zu generieren und zu verarbeiten.

This question and all comments follow the "Attribution Required."

Alle Antworten

Translate

Wenn Sie nach einer Interaktion mit dem Benutzer suchen, bleiben Sie bei XML. Es hat derzeit mehr Unterstützung, Verständnis und allgemeine Akzeptanz. Wenn es intern ist, würde ich sagen, dass Protokollpuffer eine großartige Idee sind.

Vielleicht in ein paar Jahren, wenn mehr Tools zur Unterstützung von Protokollpuffern herauskommen, dann suchen Sie danach nach einer öffentlich zugänglichen API. Bis dann...JSON?

Quelle
Translate

Protokollpuffer sollen die Kommunikation zwischen Maschinen optimieren. Sie sind wirklich nicht für die menschliche Interaktion gedacht. Außerdem ist das Format binär, sodass XML in diesem Anwendungsfall nicht ersetzt werden kann.

Ich würde es auch empfehlenJSONals das kompakteste textbasierte Format.

Quelle
Translate

Aus Ihrer kurzen Beschreibung geht hervor, dass Protokollpuffer nicht richtig passen. Der Ausdruck "strukturierter Inhalt, der in einem Texteditor von Hand erstellt wurde" schreit so ziemlich nach XML.

Wenn Sie jedoch eine effiziente Kommunikation mit geringer Latenz mit Datenstrukturen wünschen, die nicht außerhalb Ihres Unternehmens gemeinsam genutzt werden, kann die binäre Serialisierung wie Protokollpuffer einen enormen Gewinn bringen.

Quelle
Jesse Lee
Translate

Ein weiterer Nachteil des Binärformats wie PB besteht darin, dass bei einem einzelnen Fehlerbit die gesamte Datendatei nicht analysiert werden kann. Mit JSON oder XML können Sie den Fehler jedoch als letzten Ausweg manuell beheben, da er für Menschen lesbar ist und vorhanden ist Redundanz eingebaut ..

Quelle