Designing Data-Intensive Applications - Chapter 2 - Data Models and Query Languages
Earlier this year the book club of our company has studied excellent book:
This is the best book I have read about building complex scalable software systems. 💪
As usually I prepared an overview and mind-map.
Chapter 2:
- What is data model.
- Different relations between the data.
- Relational, Document, Graph data models. Which one is better and when.
- Schema-on-write, schema-on-read (schemaless). Data locality.
- Query languages: imperative, declarative, MapReduce. Why NoSQL is reinventing SQL 😀
- Storing graphs. Query languages for graphs: Cypher, SPARQL, Datalog.
See also:
- Designing Data-Intensive Applications - Chapter 10 - Batch Processing
- Designing Data-Intensive Applications - Chapter 4 - Encoding and Evolution
- Designing Data-Intensive Applications - Chapter 3 - Storage and Retrieval
- Designing Data-Intensive Applications - Chapter 1 - Reliable, Scalable, and Maintainable Applications
- Designing Data-Intensive Applications - Chapter 12 - The Future of Data Systems