diff --git a/docs/Architecture/LargeScale.md b/docs/Architecture/LargeScale.md index d6419f225..80063bebd 100644 --- a/docs/Architecture/LargeScale.md +++ b/docs/Architecture/LargeScale.md @@ -33,7 +33,16 @@ layout: doc_page * The C++ Core is extended using the python binding library [pybind11](https://github.com/pybind/pybind11) enabling high performance operation from Python. ### Cross Language Binary Compatibility -* Sketches serialized from C++ or Python can be interpreted by compatible Java sketches and visa versa. +* Sketches serialized from C++ or Python can be interpreted by compatible Java sketches and visa versa. + +* A current library version can read serialized images of sketches from older _or_ newer library +versions within a language. In the serialized form, sketches contain a version number which allows +the library to deserialize sketches produced by older versions of the library. + +* The current version of a serialized sketch is compatible across languages +with the caveat that a new sketch may be introduced in one language before being ported to others. +Sketches requiring user-written custom serialize/deserialize code rely on users to port that custom +code themselves for cross-language compatibility. ### Speed * These single-pass, "one-touch" algorithms are fast ([see example](https://datasketches.apache.org/docs/Theta/ThetaUpdateSpeed.html)) to enable real-time processing capability.