Delta Encoding

A complete solution to deliver optimized the size of the data, is use delta encoding based in data deduplication and data compression which provides a version control.

This provides a simple method to handle version control. Each blob has to represent its content and a reference of its source.

Also specify the encoding used when the blob was create in order to reconize which stragety take to decode.

Why not store the raw

/Pure text files generate a pure text delta. Binary files generate a delta that may contain some binary data. The delta encoding does not attempt to compress the content. It was considered to be much more sensible to do compression using a separate general-purpose compression library, like zlib./

Data Model

syntax = "proto3";

package delta.pb;

message Delta {
  // Parent reference if null the delta is considered as new
  bytes Parent = 1;
  // Compressed delta data
  bytes Data = 2;
  // Allows to definine the strategy of encoding/decoding data
  uint8 Codec = 3
}

Codecs

Last updated

Was this helpful?