liveBook · Manning

Data layer

As explained in Effective Platform Engineering

A datastore layer is an architectural layer that encapsulates access to a database technology.

A data layer encapsulates access to database technology behind a stable interface. Services depend on repository functions rather than cloud- or vendor-specific database APIs, reducing rewrite effort when infrastructure changes. section 2.3.3

A practical data-layer design:

  • Provides datastore implementations for supported database technologies. section 2.3.3
  • Exposes a common datastore interface to the repository layer. section 2.3.3
  • Uses automated fitness functions to enforce permitted layer dependencies and assess architectural adherence. section 2.3.3

Cloud and database migration

A service can move between GCP and another cloud, or change from AWS RDS for PostgreSQL to Aurora Serverless for MySQL, by rebuilding with a different datastore library instead of rewriting service and repository code. section 2.3.3

How Effective Platform Engineering covers it

How deep it goes
Defines datastore interfaces, technology-specific implementations, repository integration, and automated architectural checks.
Examples
Uses GCP migration, AWS RDS for PostgreSQL, Aurora Serverless for MySQL, and relational or unstructured datastore implementations.
What you can do after
Build portable services that switch supported database implementations through datastore-library changes and verify layer adherence automatically.
How it connects
Connects database abstraction, repository pattern, architecture fitness functions, and cloud migration.

Also explained in

Compare how 6 books explain data layer →

Related concepts

This explainer was generated by Manning's knowledge graph from the text of Effective Platform Engineering. The section links point to the parts of the book it draws on.