Ich bin derzeit Schnittstelle zu einem Server, der Protokollpuffer bereitstellt. Ich kann möglicherweise eine sehr große Anzahl von Nachrichten erhalten. Derzeit ist mein Prozess die Protokollpuffer und wandeln sie in einem Pandas Datenrahmen zu lesen (nicht ein notwendiger Schritt im Allgemeinen, aber Pandas bietet schöne Werkzeuge zur Analyse von Datensätzen) ist:Erstellen eines Python-Wörterbuchs wie Objekt aus Protokollpuffern zur Verwendung in Pandas
- lesen Protokollpuffer, wird es eine Google protobuf sein
- Convert Protokollpuffer Objekt
pandas.DataFrame.from_records
mit protobuf_to_dict - Gebrauch Wörterbuch a Dataframe
Dies funktioniert gut, aber angesichts der großen Anzahl von Nachrichten, die ich aus dem protobuf lesen zu bekommen, ist es ziemlich ineffizient c wandle zum Wörterbuch und dann zu Pandas. Meine Frage ist: Ist es möglich, eine Klasse zu erstellen, die ein Python-Protobuf-Objekt wie ein Wörterbuch aussehen lässt? Das heißt, entfernen Sie Schritt 2. Alle Referenzen oder Pseudocode wäre hilfreich.
Aber 'Protokollpuffer Konvertieren in dictionary' macht einen Python protobuf Objekt wie ein Wörterbuch aussehen;) Sie lieber etwas' pandas.DataFrame.from_protbuf' brauchen, aber ich weiß nicht, Antwort für dieses Problem. – furas
Ich habe mir den Code angeschaut, er sieht definitiv nicht so aus, als würde er das protobuf-Objekt umhüllen, sondern erzeugt ein wirklich neues Wörterbuch. Ich glaube @Justin sucht nach etwas, das nur umschließt, ohne Daten zu kopieren. – user3820547
Ja, ich möchte das google protobuf-Objekt wie ein Wörterbuch aussehen lassen, anstatt die Daten zuerst nach python dict zu kopieren. – Justin