title: Can I append Avro serialized data to an existing Azure blob?
body: <p>I am asking if I <em>can</em>, but I would also like to know if I <em>should</em>.</p>
  
  <p>Here's my scenario: 
  I am receiving Avro serialized messages in small batches. I want to store them for later analysis using a Hive table with the Avro SerDe. I'm running in Azure, and I am storing the messages in a blob.
  I am trying to avoid having lots of small blobs (because I believe this will have a negative impact on Hive). If I have the Avro header already written to the blob, I believe that can append Avro data blocks with <code>CloudBlockBlob.PutBlockAsync()</code>. (As long, as I know the sync marker.)</p>
  
  <p>However, I've examined two .NET libraries and that don't seem to support my approach. (I have to write the entire Avro container file at once).</p>
  
  <ul>
  <li><a href="http://www.nuget.org/packages/Apache.Avro/" rel="nofollow noreferrer">http://www.nuget.org/packages/Apache.Avro/</a></li>
  <li><a href="http://www.nuget.org/packages/Microsoft.Hadoop.Avro/" rel="nofollow noreferrer">http://www.nuget.org/packages/Microsoft.Hadoop.Avro/</a></li>
  </ul>
  
  <p><strong>Am I taking the correct approach?</strong>
  <strong>Am I missing something in the libraries?</strong> </p>
  
  <p>My question is similiar (but different) to this one:
  <a href="https://stackoverflow.com/questions/8806689/can-you-append-data-to-an-existing-avro-data-file">Can you append data to an existing Avro data file?</a></p>