Designing Data-Intensive Applications - Chapter 4 - Encoding and Evolution

Designing Data-Intensive Applications - Chapter 4 - Encoding and Evolution

Earlier this year the book club of our company has studied excellent book:

Martin Kleppmann - Designing Data-Intensive Applications

This is the best book I have read about building complex scalable software systems. 💪

As usually I prepared an overview and mind-map.

Chapter 4:

  • What is evolvability. Backward and Forward compatibility
  • Approaches to encode data:
    • JSON, XML, and their binary variants
    • Thrift and Protobuf
    • Apache Avro
  • Models of data flow
    • Through databases
    • Through services: REST, SOAP, RPC and the future
    • Through message brokers - when they are better and when they are not

Much more details in the mind-map:

Download full mind map (PDF)

See also: