9
In python 2.7, utilizzando Avro, mi piacerebbe codificare un oggetto in un array di byte.Codifica un oggetto con Avro in un array di byte in Python
Tutti gli esempi che ho trovato scrivono in un file.
Ho provato con io.BytesIO(), ma questo dà:
AttributeError: '_io.BytesIO' object has no attribute 'write_long'
di esempio utilizzando io.BytesIO
def avro_encode(raw, schema):
writer = DatumWriter(schema)
avro_buffer = io.BytesIO()
writer.write(raw, avro_buffer)
return avro_buffer.getvalue()
Se si desidera eseguire questo sotto Python 3 cambiamento "dello schema = avro.schema.parse (test_schema)" a "schema = avro.schema. Parse (test_schema) " – JamesC
domanda veloce, quando provo a scrivere questi flussi di byte in file e poi li salviamo su hdf, il comando dfs-text di hdfs non è in grado di convertirli di nuovo in stringa, apparentemente mi manca qualsiasi passaggio precedente scrivere lo stream in file. – chandank