既存のAvroシリアル化ファイルにデータを追加する方法がないようです。複数のプロセスで1つのavroファイルに書き込みたいのですが、開くたびに最初からやり直すようです。すべてのデータを読み込んでから、もう一度書き戻したくありません。
ルビーのサンプルコードを使用して、さまざまな設定として「ab」と「ab +」を試しましたが、喜びはありませんでした。
file = File.open('data.avr', 'wb')
schema = Avro::Schema.parse(SCHEMA)
writer = Avro::IO::DatumWriter.new(schema)
dw = Avro::DataFile::Writer.new(file, writer, schema)
dw << {"username" => "john", "age" => 25, "verified" => true}
dw << {"username" => "ryan", "age" => 23, "verified" => false}
dw.close