Skip to content

Commit 9ac22bc

Browse files
docs: Bibliography page + nav, linked For-deeper-coverage, consistent wording (#18)
* docs: add Bibliography page + nav, link For-deeper-coverage, consistent chapter wording Match the API-patterns sites' structure. - Top nav: "Start here" -> "Contents"; add "Bibliography" (Summary and Demos unchanged). - New bibliography.md (/bibliography/): linked tables of the reference books (verified publisher URLs from the hub reading list) and the primary docs the build uses. Nothing reproduced from them. - For deeper coverage: every book citation across all 13 chapters now links to its publisher page (docs were already linked). 43 links added. - 00-index: the chapters were called "pages", inconsistent with the prose that says "chapter" throughout; normalized to "chapter" and "## The chapters". Verified: 0 em-dashes, jekyll build clean, bibliography renders with links, forbidden-syntax + cross-references clean. * docs: remove internal tracking codes (DRA-*) and _plans references from reader-facing chapters
1 parent 31d171d commit 9ac22bc

15 files changed

Lines changed: 116 additions & 69 deletions

‎_docs/00-index.md‎

Lines changed: 19 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1,53 +1,53 @@
11
---
22
title: "The data mesh: start here"
33
order: 0
4-
description: "The map: what this reference builds, the reading order, and a link to each page in the set. Start here."
4+
description: "The map: what this reference builds, the reading order, and a link to each chapter in the set. Start here."
55
duration: 5 min
66
---
77

88
## Learning objectives
99

1010
By the end of this chapter you can:
1111

12-
- Name the four movements the reference set is organized into and which pages fall
12+
- Name the four movements the reference set is organized into and which chapters fall
1313
into each one.
1414
- Pick the reading order that matches how you want to use the set: straight through,
1515
or jumping to one topic.
16-
- Identify the three pages that cover the pattern's shape if you only have time for a
16+
- Identify the three chapters that cover the pattern's shape if you only have time for a
1717
few.
18-
- Locate the page that answers a specific question without re-reading the whole set.
18+
- Locate the chapter that answers a specific question without re-reading the whole set.
1919

2020
## Why this matters
2121

22-
Page 2 names Dehghani's four principles. Page 3 takes the same four and maps each one
22+
Chapter 2 names Dehghani's four principles. Chapter 3 takes the same four and maps each one
2323
to a Kubernetes primitive: namespaces, operators, RBAC. That's the shape of this whole
2424
set. A concept gets introduced, then you watch it land in a running piece of the
25-
system a few pages later. This page is the map, nothing more: what the reference
26-
covers, the order to read it in, and a link to each page.
25+
system a few chapters later. This chapter is the map, nothing more: what the reference
26+
covers, the order to read it in, and a link to each chapter.
2727

2828
The reference builds one working system end to end. A data mesh of services that own
2929
their data as products, that talk over a deliberate mix of protocols, that evolve their
3030
contracts safely, that scale to demand, and that stay observable throughout.
3131

32-
Read it straight through the first time if you can. Each page picks up where the last
32+
Read it straight through the first time if you can. Each chapter picks up where the last
3333
left off, and the cross-references assume you've seen the earlier material. If you're
3434
back here looking for one specific thing, the descriptions below point at the right
35-
page.
35+
chapter.
3636

3737
## How the set is organized
3838

39-
The eleven pages fall into four movements. **Conceptual grounding** (pages 1 to 3)
39+
The eleven chapters fall into four movements. **Conceptual grounding** (chapters 1 to 3)
4040
covers the landscape of data architectures, what a data mesh actually is, and why
41-
Kubernetes turns out to be a natural substrate for one. **Implementation** (pages 4 to
41+
Kubernetes turns out to be a natural substrate for one. **Implementation** (chapters 4 to
4242
9) builds the system: the services and their data products, the contracts and catalog
4343
that make them discoverable, the data planes they talk over, progressive delivery with
4444
mutual TLS, elastic scaling and recovery, and the observability to see all of it.
45-
**Failure modes** (page 10) steps back to the conceptual and organizational
45+
**Failure modes** (chapter 10) steps back to the conceptual and organizational
4646
anti-patterns that derail data-mesh efforts even when the technology is sound. The
47-
**summary** (page 11) closes by reorganizing the same material by principle: for each
47+
**summary** (chapter 11) closes by reorganizing the same material by principle: for each
4848
of the four, the value it delivers and the implementation pieces that realize it.
4949

50-
## The pages
50+
## The chapters
5151

5252
- [**1 · Data architectures**]({{ '/docs/01-data-architectures/' | relative_url }}):
5353
the landscape from pipelines to lakes to mesh, what each pattern is, the problem
@@ -96,12 +96,12 @@ Start with [concepts & principles]({{ '/docs/01-concepts/' | relative_url }}).
9696

9797
## For deeper coverage
9898

99-
- *Data Mesh* by Zhamak Dehghani: the full argument this reference implements, including
99+
- [*Data Mesh*](https://www.oreilly.com/library/view/data-mesh/9781492092384/) by Zhamak Dehghani: the full argument this reference implements, including
100100
the history and the operating-model shifts this set only summarizes.
101-
- *Designing Data-Intensive Applications, 2nd ed.* by Martin Kleppmann & Chris
101+
- [*Designing Data-Intensive Applications, 2nd ed.*](https://www.oreilly.com/library/view/designing-data-intensive-applications/9781098119058/) by Martin Kleppmann & Chris
102102
Riccomini: the data-systems foundations (storage, replication, consistency) that sit
103103
underneath every data product in this build.
104-
- *Cloud Native Patterns* by Cornelia Davis: the platform patterns this reference's
104+
- [*Cloud Native Patterns*](https://www.manning.com/books/cloud-native-patterns) by Cornelia Davis: the platform patterns this reference's
105105
self-serve tier draws on.
106-
- *Kubernetes Patterns* by Bilgin Ibryam & Roland Huß: the Kubernetes-native building
107-
blocks the implementation pages rely on throughout.
106+
- [*Kubernetes Patterns*](https://www.oreilly.com/library/view/-/9781098131678/) by Bilgin Ibryam & Roland Huß: the Kubernetes-native building
107+
blocks the implementation chapters rely on throughout.

‎_docs/01-concepts.md‎

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -138,14 +138,14 @@ Kubernetes primitives.
138138

139139
## For deeper coverage
140140

141-
- *Data Mesh* by Zhamak Dehghani: the primary source for the four principles and the
141+
- [*Data Mesh*](https://www.oreilly.com/library/view/data-mesh/9781492092384/) by Zhamak Dehghani: the primary source for the four principles and the
142142
domain-ownership argument this page summarizes.
143-
- *Learning Domain-Driven Design* by Vlad Khononov: the bounded-context thinking
143+
- [*Learning Domain-Driven Design*](https://www.oreilly.com/library/view/learning-domain-driven-design/9781098100124/) by Vlad Khononov: the bounded-context thinking
144144
behind domain ownership and why a data product maps to a domain, not a table.
145-
- *Implementing Domain-Driven Design* by Vaughn Vernon: a deeper, implementation-level
145+
- [*Implementing Domain-Driven Design*](https://www.informit.com/store/implementing-domain-driven-design-9780133039894) by Vaughn Vernon: a deeper, implementation-level
146146
treatment of the same domain boundaries.
147-
- *Designing Data-Intensive Applications, 2nd ed.* by Martin Kleppmann & Chris
147+
- [*Designing Data-Intensive Applications, 2nd ed.*](https://www.oreilly.com/library/view/designing-data-intensive-applications/9781098119058/) by Martin Kleppmann & Chris
148148
Riccomini: the operational-versus-analytical data distinction from the systems
149149
side.
150-
- *Cloud Native Patterns* by Cornelia Davis: the self-serve platform principle made
150+
- [*Cloud Native Patterns*](https://www.manning.com/books/cloud-native-patterns) by Cornelia Davis: the self-serve platform principle made
151151
concrete in cloud-native infrastructure terms.

‎_docs/01-data-architectures.md‎

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -237,13 +237,13 @@ the others produces a distributed mess rather than a mesh.
237237

238238
## For deeper coverage
239239

240-
- *Data Mesh* by Zhamak Dehghani: the full argument for why pipelines, warehouses,
240+
- [*Data Mesh*](https://www.oreilly.com/library/view/data-mesh/9781492092384/) by Zhamak Dehghani: the full argument for why pipelines, warehouses,
241241
and lakes hit an organizational ceiling, and what the mesh changes.
242-
- *Designing Data-Intensive Applications, 2nd ed.* by Martin Kleppmann & Chris
242+
- [*Designing Data-Intensive Applications, 2nd ed.*](https://www.oreilly.com/library/view/designing-data-intensive-applications/9781098119058/) by Martin Kleppmann & Chris
243243
Riccomini: the systems-level treatment of batch and stream processing, ETL/ELT,
244244
and the storage engines behind warehouses and lakes.
245-
- *Cloud Native Anti-Patterns* by Gerald Bachlmayr et al.: common organizational and
245+
- [*Cloud Native Anti-Patterns*](https://www.packtpub.com/en-us/product/cloud-native-anti-patterns-9781836200581) by Gerald Bachlmayr et al.: common organizational and
246246
architectural failure modes, including the centralized-ownership trap this chapter
247247
describes.
248-
- *Cloud Native Patterns* by Cornelia Davis: the platform-level patterns a self-serve
248+
- [*Cloud Native Patterns*](https://www.manning.com/books/cloud-native-patterns) by Cornelia Davis: the platform-level patterns a self-serve
249249
data platform draws on once the organizational shift is underway.

‎_docs/02-kubernetes-substrate.md‎

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -146,11 +146,11 @@ is published and reachable.
146146

147147
## For deeper coverage
148148

149-
- *Kubernetes Patterns* by Bilgin Ibryam & Roland Huß: the primitive-by-primitive
149+
- [*Kubernetes Patterns*](https://www.oreilly.com/library/view/-/9781098131678/) by Bilgin Ibryam & Roland Huß: the primitive-by-primitive
150150
treatment (namespaces, operators, CRDs) this chapter's mapping draws on.
151-
- *Platform Engineering on Kubernetes* by Mauricio Salatino: the self-serve platform
151+
- [*Platform Engineering on Kubernetes*](https://www.manning.com/books/platform-engineering-on-kubernetes) by Mauricio Salatino: the self-serve platform
152152
principle built out as an operating model, not just a set of operators.
153-
- *Cloud Native Patterns* by Cornelia Davis: the broader cloud-native platform
153+
- [*Cloud Native Patterns*](https://www.manning.com/books/cloud-native-patterns) by Cornelia Davis: the broader cloud-native platform
154154
patterns this final project's shared infrastructure tier follows.
155155
- [Kubernetes documentation](https://kubernetes.io/docs/): namespaces, RBAC, CRDs,
156156
and admission control, straight from the source.

‎_docs/03-services-and-data-products.md‎

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -218,8 +218,8 @@ themselves so others can find and trust them: contracts and the catalog.
218218

219219
## For deeper coverage
220220

221-
- *Data Mesh* by Zhamak Dehghani: the architectural quantum and why a data product's boundary should match a service's boundary.
222-
- *Cloud Native Patterns* by Cornelia Davis: packaging and runtime patterns for services that double as data products.
223-
- *Kubernetes Patterns* by Bilgin Ibryam & Roland Huß: container image and workload patterns behind the build-load-deploy sequence.
221+
- [*Data Mesh*](https://www.oreilly.com/library/view/data-mesh/9781492092384/) by Zhamak Dehghani: the architectural quantum and why a data product's boundary should match a service's boundary.
222+
- [*Cloud Native Patterns*](https://www.manning.com/books/cloud-native-patterns) by Cornelia Davis: packaging and runtime patterns for services that double as data products.
223+
- [*Kubernetes Patterns*](https://www.oreilly.com/library/view/-/9781098131678/) by Bilgin Ibryam & Roland Huß: container image and workload patterns behind the build-load-deploy sequence.
224224
- [Kubernetes documentation](https://kubernetes.io/docs/): image pull policies and the kubelet's image lifecycle.
225225
- [FastAPI](https://fastapi.tiangolo.com/): the framework order-service and its siblings are built on.

‎_docs/04-contracts-and-catalog.md‎

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -129,7 +129,7 @@ and the asynchronous event backbone.
129129

130130
## For deeper coverage
131131

132-
- *Data Mesh* by Zhamak Dehghani: data-as-a-product and federated computational governance, the two principles this chapter makes operational.
133-
- *Designing Data-Intensive Applications, 2nd ed.* by Martin Kleppmann & Chris Riccomini: schema evolution and the compatibility guarantees a registry enforces.
134-
- *Cloud Native Anti-Patterns* by Gerald Bachlmayr et al.: the proxy anti-pattern a mesh degrades into without a usable catalog.
132+
- [*Data Mesh*](https://www.oreilly.com/library/view/data-mesh/9781492092384/) by Zhamak Dehghani: data-as-a-product and federated computational governance, the two principles this chapter makes operational.
133+
- [*Designing Data-Intensive Applications, 2nd ed.*](https://www.oreilly.com/library/view/designing-data-intensive-applications/9781098119058/) by Martin Kleppmann & Chris Riccomini: schema evolution and the compatibility guarantees a registry enforces.
134+
- [*Cloud Native Anti-Patterns*](https://www.packtpub.com/en-us/product/cloud-native-anti-patterns-9781836200581) by Gerald Bachlmayr et al.: the proxy anti-pattern a mesh degrades into without a usable catalog.
135135
- Apicurio Registry documentation: contract versioning and compatibility rules across schemas, Protobuf, OpenAPI, and GraphQL SDL.

‎_docs/05-data-planes.md‎

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -134,8 +134,8 @@ the consumers depending on it.
134134

135135
## For deeper coverage
136136

137-
- *Data Mesh* by Zhamak Dehghani: polyglot access and the synchronous/asynchronous planes a mesh runs on.
138-
- *Designing Data-Intensive Applications, 2nd ed.* by Martin Kleppmann & Chris Riccomini: event-driven architecture and the derived-data reasoning behind the backbone.
139-
- *Cloud Native Patterns* by Cornelia Davis: composing services at the edge versus internally.
137+
- [*Data Mesh*](https://www.oreilly.com/library/view/data-mesh/9781492092384/) by Zhamak Dehghani: polyglot access and the synchronous/asynchronous planes a mesh runs on.
138+
- [*Designing Data-Intensive Applications, 2nd ed.*](https://www.oreilly.com/library/view/designing-data-intensive-applications/9781098119058/) by Martin Kleppmann & Chris Riccomini: event-driven architecture and the derived-data reasoning behind the backbone.
139+
- [*Cloud Native Patterns*](https://www.manning.com/books/cloud-native-patterns) by Cornelia Davis: composing services at the edge versus internally.
140140
- [grpc.io documentation](https://grpc.io/docs/): gRPC for internal, low-latency service-to-service calls.
141141
- [Strawberry GraphQL](https://strawberry.rocks/): the library behind the gateway's composed graph.

‎_docs/06-progressive-delivery-mtls.md‎

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ environment toggle and a different `version` label, rather than two images from
5050
commits. That keeps the demo focused on the traffic-management mechanism rather than
5151
an image pipeline, and the Istio mechanics are identical either way. And traffic
5252
enters through the ingress gateway (reached on its NodePort, published to
53-
127.0.0.1:8088 when the profile is created, DRA-017) rather than from a meshed client,
53+
127.0.0.1:8088 when the profile is created) rather than from a meshed client,
5454
so no client needs to join the mesh for the canary to work.
5555

5656
This was verified end to end: with the split set to 90/10, a run of 100 requests
@@ -138,7 +138,7 @@ match demand, including down to zero, and recovering when things fail.
138138
## For deeper coverage
139139

140140
- [Istio documentation](https://istio.io/latest/docs/): `DestinationRule`, `VirtualService`, `Gateway`, and automatic mutual TLS between sidecars.
141-
- *Kubernetes Patterns* by Bilgin Ibryam & Roland Huß: the Sidecar pattern and the trade-offs of attaching one to every workload.
142-
- *Platform Engineering on Kubernetes* by Mauricio Salatino: treating mesh injection as a platform policy decision rather than a blanket default.
143-
- *GitOps and Kubernetes* by Billy Yuen et al.: progressive delivery workflows for shifting traffic between versions.
144-
- *Cloud Native Anti-Patterns* by Gerald Bachlmayr et al.: the failure modes of meshing workloads that don't belong in the mesh.
141+
- [*Kubernetes Patterns*](https://www.oreilly.com/library/view/-/9781098131678/) by Bilgin Ibryam & Roland Huß: the Sidecar pattern and the trade-offs of attaching one to every workload.
142+
- [*Platform Engineering on Kubernetes*](https://www.manning.com/books/platform-engineering-on-kubernetes) by Mauricio Salatino: treating mesh injection as a platform policy decision rather than a blanket default.
143+
- [*GitOps and Kubernetes*](https://www.manning.com/books/gitops-and-kubernetes) by Billy Yuen et al.: progressive delivery workflows for shifting traffic between versions.
144+
- [*Cloud Native Anti-Patterns*](https://www.packtpub.com/en-us/product/cloud-native-anti-patterns-9781836200581) by Gerald Bachlmayr et al.: the failure modes of meshing workloads that don't belong in the mesh.

‎_docs/07-elastic-and-resilient.md‎

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -130,7 +130,7 @@ products.
130130

131131
## For deeper coverage
132132

133-
- *Kubernetes Patterns* by Bilgin Ibryam & Roland Huß: autoscaling and self-healing patterns on Kubernetes.
134-
- *Cloud Native Patterns* by Cornelia Davis: elasticity and recoverability as platform-provided properties.
135-
- *Platform Engineering on Kubernetes* by Mauricio Salatino: self-serve platform capabilities and what domains should and shouldn't operate themselves.
133+
- [*Kubernetes Patterns*](https://www.oreilly.com/library/view/-/9781098131678/) by Bilgin Ibryam & Roland Huß: autoscaling and self-healing patterns on Kubernetes.
134+
- [*Cloud Native Patterns*](https://www.manning.com/books/cloud-native-patterns) by Cornelia Davis: elasticity and recoverability as platform-provided properties.
135+
- [*Platform Engineering on Kubernetes*](https://www.manning.com/books/platform-engineering-on-kubernetes) by Mauricio Salatino: self-serve platform capabilities and what domains should and shouldn't operate themselves.
136136
- [KEDA documentation](https://keda.sh/docs/): scalers, `ScaledObject`s, and the HTTP add-on used in this chapter.

‎_docs/08-observability.md‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -136,7 +136,7 @@ sound.
136136

137137
## For deeper coverage
138138

139-
- *Designing Data-Intensive Applications, 2nd ed.* by Martin Kleppmann & Chris Riccomini: reasoning about the behavior of distributed systems built from independently-owned parts.
139+
- [*Designing Data-Intensive Applications, 2nd ed.*](https://www.oreilly.com/library/view/designing-data-intensive-applications/9781098119058/) by Martin Kleppmann & Chris Riccomini: reasoning about the behavior of distributed systems built from independently-owned parts.
140140
- [OpenTelemetry documentation](https://opentelemetry.io/docs/): the metrics/traces/logs signal model this chapter applies to a mesh.
141141
- [Grafana documentation](https://grafana.com/docs/): Tempo for traces, Mimir/Prometheus for metrics, and correlating the two.
142-
- *Cloud Native Patterns* by Cornelia Davis: observability as a platform-provided concern rather than a per-service add-on.
142+
- [*Cloud Native Patterns*](https://www.manning.com/books/cloud-native-patterns) by Cornelia Davis: observability as a platform-provided concern rather than a per-service add-on.

0 commit comments

Comments
 (0)