2016-04-21 12 views
1

Ich schreibe ein PHP-Skript mit AVRO, um Daten zu deserialisieren. Ich erhalte die Daten als Puffer von avro binären Stream. Im Avro-PHP-Beispiel sehe ich nur ein Beispiel für das Lesen der Daten aus einer Datei. kein binärer Puffer.avro php - Lesen aus dem Puffer

Wie kann ich die Daten deserialisieren? Was ich suche ist ein binäres Decoder für Avro

Antwort

0
$binaryBuffer = <get_avro_serialized_record> 

$writersSchema = '{ 
    "type" : "record", 
    "name" : "Example", 
    "namespace" : "com.example.record", 
    "fields" : [ { 
    "name" : "userId", 
    "type" : "int" 
    ............. 
}' 

$reader = new AvroIODatumReader($writersSchema); 
$io = new AvroStringIO($binaryBuffer) 
$deserializedRecord = $reader->read(new AvroIOBinaryDecoder($io)) 

vorausgesetzt, Sie jeden Datensatz einzeln deserialisiert werden soll, und die Autoren Schema haben.

Verwandte Themen