SlideShare uma empresa Scribd logo
1 de 26
Specification-Driven Data Mesh
Sion Smith CTO - oso.sh
Neil Avery CTO - liquidlabs.com
Introducing
The Enterprise Guide to
Building a Data Mesh
About us
2
Introduction
Sion Smith
CTO, OSO
15 years consulting experience solving
complex problems with various cloud and
programming technologies
Neil Avery
CTO, Liquidlabs
Distributed systems, previously
Confluent, Luxoft, startups and
others
Emerging Technology
Current State of Play The Spec Mesh Way
Agenda
3
Developer Tooling
● The Gartner Hype Cycle
● Foundations of Data Mesh
● Evolution of central
nervous system
● Domain mapping out of the
box
● Example specification
● Data Mesh lifecycle
management
● Features of Spec Mesh
● Screenshots
● Developer roadmap
Our Data Mesh Journey
Is the Hype Real?
5
State of Play
Gartner, Hype Cycle for Data Management, 2022, Donald Feinberg, Philip Russom, Nina Showell, 30 June 2022
https://www.denodo.com/en/document/analyst-report/2022-gartner-hype-cycle-data-management
Data Hub
Strategy
Data Integration
Tools
Data Lakes
Data
Engineering
Data Ops
Data
Mesh
Expectations
Time
Innovation trigger
Peak of
inflated
expectations
Trough of
disillusionment
Slope of
enlightenment
Plateau of
productivity
Gartner Hype Cycle for Data Management - 2022
Four pillars of Data Mesh
6
State of Play
Data as a Product
Self-serve data
infrastructure as a
platform
Federated computational
Governance
Domain-oriented
decentralised
data ownership &
architecture
https://martinfowler.com/articles/data-mesh-principles.html
Is Data Mesh really new?
7
State of Play
+ Data mesh incremental evolution of style of architecture we
have been building for several years for event streaming
+ A mature data streaming system adopts a central nervous
system
+ Can we build a data mesh around event streaming principles?
+ A central nervous system models topics with a domain structure
and federated computational governance
Introducing:
+ An agreement / contract for data mesh using a specification
Central
data team
Domain teams
Stakeholders
So where does Data Mesh fit?
8
State of Play
Investment & Time
Value
4
5
Early Interest
Central Nervous
System
Mission critical,
but disparate
LOBs
Identify a project
Mission-critical,
connected LOBs
Projects Platform
Single
solution
Scalable pipeline
Pub/Sub
Clusters of reuse,
real-time
analytics
Platform effect:
reuse of data,
efficiencies of
scale
Enterprise Data-as-a
Product. Event-driven
architecture
3
2
1
This is used
throughout large
enterprise in
production
Confluent maturity model for event driven architecture
https://www.confluent.io/resources/5-stages-streaming-platform-adoption/
Data Mesh should not boil the ocean
9
Introducing SpecMesh
Specification-Driven Data Mesh
CNS Patterns applied to Data Mesh
1. Events and storage comprise data platform fundamentals required to build
almost anything
2. Events and storage already exist and that won’t change
3. Organise data resources hierarchically
4. Enforcing a domain model is need to control complexity and cope with scale
5. Orgs have a data quality function
6. Orgs have a data catalogue function
7. Registry models are required to model data (and support data evolution etc)
8. Most organisations suffer from inconsistent mechanisms for data-as-an-api
11
12
Spec Mesh
Supporting the pillars of Data Mesh
Features
Domain
ownership
Self-serve
Data as a
Product
Federated
Computational
Governance
Spec driven (async-api spec) ✔ ✔
SDLC plugins (unit-test, integration-test) ✔
SDLC plugins (provision - terraform) ✔ ✔ ✔
3rd party data catalogue ✔ ✔ ✔
Big Data London is our data product
Spec Mesh
13
14
Data Model
Spec Mesh
/ london / borough / venue / event
/
retail /
/ transport /
/ accommodation /
/ services /
/ london / hammersmith / olympia / bigdatalondon / public / attendee
/ london / hammersmith / transport / public / tube
/ london / heathrow / transport / public / airport
/ london / hammersmith / olympia / bigdatalondon / vendor / terra / public / visitor
/ london / hammersmith / olympia / bigdatalondon / retailer / subway / public / purchase
asyncapi: '2.4.0'
id: 'urn:london:hammersmith:olympia:bigdatalondon'
Info:
title: BigDataLondon API
version: '1.0.0'
description: Simple model of BigDataLondon as a Data Product
Servers:
test:
url: test.mykafkacluster.org:8092
protocol: kafka-secure
channels:
public/attendee:
Publish:
summary: Humans arriving
Message:
name: Human
"tags": [
"name": "human",
"name": "big data london"]
Payload:
type: object
Properties:
Id:
type: integer
minimum: 0
description: Id of the human
Age:
type: integer
15
Spec Mesh
16
Spec Mesh
Data Mesh as Code: Spec Mesh
Capture Provision Serve
>> >>
17
Spec Mesh
Capture
● Create repo from git template
● Async-api spec
● Apply the domain model/structure
● Specify data event streams & storage
● Model the data entities (schemas)
● Apply tags to data entities
● Permission data as
public/protected/private
● Write tests and build your product
Provision
Spec
Data
Catalogue
Spec Mesh
Capture Provision Serve
What is Spec Mesh?
Provision
18
What is Spec Mesh?
Spec Mesh
Provision
Spec
Data
Catalogue
Spec Mesh
Capture Provision Serve
● Pipeline driven provisioning of data product
based on Specification
● Includes domain structure, governance and
permissions
● Data catalogue automatically updated
(including tags)
● Data schema’s published to registry
19
What is Spec Mesh?
Spec Mesh
Provision
Spec
Data
Catalogue
Spec Mesh
Capture Provision Serve
Public
Private
Restricted
Serve
● Governance integrated via underlying Data
Platform. I.e. Kafka ACLs
● Data catalogue supports discovery (via tags),
and access requests
● Data resources are structured using public,
private and protected scope
20
Spec Mesh conceptual
Spec Mesh
Data
Catalogue
Data
Product A
Spec
Data
Product B
Spec
Serve
Public
Private
Restricted
Developer Tooling
22
Why use Spec Mesh?
Developer Tooling
Developer focused tooling:. This is not some platform
Abstract away complexities: Leverage layers of abstraction to create
repeatable patterns
Unit testing specifications: Java based tooling supports development
lifecycle
Tooling support flexibility: Using configurable guardrails
Increased extensibility: Interoperate with existing Data Management
tooling and modules
Icons: www.streamlinehq.com
23
What do you get out of the box?
Developer Tooling
Spec
Specification as Code
[ ]
Data
Provider
Provisioning Workflow Data Mesh
Data
Product A
Data
Product B
Data
Product Y
Data
Product Z
Build Apply
JSON
Data Product
Owner
24
Demo
Developer Tooling
Provisioning summary
Specification
output (JSON)
Kafka Infrastructure
Add title
Beyond
Community driven
Help us shape the roadmap by
suggesting and contributing to
features!
Q1 - 2023
Extensions
● More Kafka extensions
supported (incl provisioning
support): Quotas, Storage &
ACLs for Public, Private,
Protected resources (basic
governance)
Data Catalogue
● Initial integration to existing
products to support discovery
and basic governance
Storage
● Storage resource mapping
Governance
● Delegation to a Governance API
where protected topics are
specified and requested
Proof of Value - Q4 22
Developer Experience
● Local testing support (Java &
Python) - Test containers via
gradle plugin
● SpecMesh gradle plugin to use
HCL Terraform & state mgmt
Domain model
● Domain modelling built into
Spec.Id field
Build Pipeline
● Executions pushes the
APISpec to apply orthogonal
resource allocation
Governance
● Manual governance of ‘public’
resources through Credential
creation (API Keys + ACLs)
Extensions
● Kafka support for Async API
Q2 - 2023
Data As A Product
● Data Product Open Registry;
simple Data Catalogue with
Discovery and tagging (Spec
resources contain tags - show
example)
Observability
● Topology view (derived from
specs showing
product/consume data flows
and ownership visualisation)
Bolt-ons
● Multi-region
● Cross resource
● SMT
● DQ integration + other simple
additions
25
Developer Tooling
Roadmap
Thank you
github.com/specmesh
@osodevops
@avery_neil

Mais conteúdo relacionado

Semelhante a The Enterprise Guide to Building a Data Mesh - Introducing SpecMesh

Microservices Patterns with GoldenGate
Microservices Patterns with GoldenGateMicroservices Patterns with GoldenGate
Microservices Patterns with GoldenGateJeffrey T. Pollock
 
DEVNET-1140 InterCloud Mapreduce and Spark Workload Migration and Sharing: Fi...
DEVNET-1140	InterCloud Mapreduce and Spark Workload Migration and Sharing: Fi...DEVNET-1140	InterCloud Mapreduce and Spark Workload Migration and Sharing: Fi...
DEVNET-1140 InterCloud Mapreduce and Spark Workload Migration and Sharing: Fi...Cisco DevNet
 
Advanced Analytics and Machine Learning with Data Virtualization
Advanced Analytics and Machine Learning with Data VirtualizationAdvanced Analytics and Machine Learning with Data Virtualization
Advanced Analytics and Machine Learning with Data VirtualizationDenodo
 
GDG Cloud Southlake #16: Priyanka Vergadia: Scalable Data Analytics in Google...
GDG Cloud Southlake #16: Priyanka Vergadia: Scalable Data Analytics in Google...GDG Cloud Southlake #16: Priyanka Vergadia: Scalable Data Analytics in Google...
GDG Cloud Southlake #16: Priyanka Vergadia: Scalable Data Analytics in Google...James Anderson
 
A Gen3 Perspective of Disparate Data
A Gen3 Perspective of Disparate DataA Gen3 Perspective of Disparate Data
A Gen3 Perspective of Disparate DataRobert Grossman
 
Data Engineer, Patterns & Architecture The future: Deep-dive into Microservic...
Data Engineer, Patterns & Architecture The future: Deep-dive into Microservic...Data Engineer, Patterns & Architecture The future: Deep-dive into Microservic...
Data Engineer, Patterns & Architecture The future: Deep-dive into Microservic...Igor De Souza
 
Big Data Fabric: A Necessity For Any Successful Big Data Initiative
Big Data Fabric: A Necessity For Any Successful Big Data InitiativeBig Data Fabric: A Necessity For Any Successful Big Data Initiative
Big Data Fabric: A Necessity For Any Successful Big Data InitiativeDenodo
 
Denodo Partner Connect: A Review of the Top 5 Differentiated Use Cases for th...
Denodo Partner Connect: A Review of the Top 5 Differentiated Use Cases for th...Denodo Partner Connect: A Review of the Top 5 Differentiated Use Cases for th...
Denodo Partner Connect: A Review of the Top 5 Differentiated Use Cases for th...Denodo
 
Bigdata.sunil_6+yearsExp
Bigdata.sunil_6+yearsExpBigdata.sunil_6+yearsExp
Bigdata.sunil_6+yearsExpbigdata sunil
 
Serverless machine learning architectures at Helixa
Serverless machine learning architectures at HelixaServerless machine learning architectures at Helixa
Serverless machine learning architectures at HelixaData Science Milan
 
Session 8 - Creating Data Processing Services | Train the Trainers Program
Session 8 - Creating Data Processing Services | Train the Trainers ProgramSession 8 - Creating Data Processing Services | Train the Trainers Program
Session 8 - Creating Data Processing Services | Train the Trainers ProgramFIWARE
 
Data Virtualization: Introduction and Business Value (UK)
Data Virtualization: Introduction and Business Value (UK)Data Virtualization: Introduction and Business Value (UK)
Data Virtualization: Introduction and Business Value (UK)Denodo
 
Data Services and the Modern Data Ecosystem (ASEAN)
Data Services and the Modern Data Ecosystem (ASEAN)Data Services and the Modern Data Ecosystem (ASEAN)
Data Services and the Modern Data Ecosystem (ASEAN)Denodo
 
Virtualisation de données : Enjeux, Usages & Bénéfices
Virtualisation de données : Enjeux, Usages & BénéficesVirtualisation de données : Enjeux, Usages & Bénéfices
Virtualisation de données : Enjeux, Usages & BénéficesDenodo
 
Belgium & Luxembourg dedicated online Data Virtualization discovery workshop
Belgium & Luxembourg dedicated online Data Virtualization discovery workshopBelgium & Luxembourg dedicated online Data Virtualization discovery workshop
Belgium & Luxembourg dedicated online Data Virtualization discovery workshopDenodo
 
Flash session -streaming--ses1243-lon
Flash session -streaming--ses1243-lonFlash session -streaming--ses1243-lon
Flash session -streaming--ses1243-lonJeffrey T. Pollock
 
Sourav_Giri_Resume_2015
Sourav_Giri_Resume_2015Sourav_Giri_Resume_2015
Sourav_Giri_Resume_2015sourav giri
 

Semelhante a The Enterprise Guide to Building a Data Mesh - Introducing SpecMesh (20)

Microservices Patterns with GoldenGate
Microservices Patterns with GoldenGateMicroservices Patterns with GoldenGate
Microservices Patterns with GoldenGate
 
Analytics&IoT
Analytics&IoTAnalytics&IoT
Analytics&IoT
 
DEVNET-1140 InterCloud Mapreduce and Spark Workload Migration and Sharing: Fi...
DEVNET-1140	InterCloud Mapreduce and Spark Workload Migration and Sharing: Fi...DEVNET-1140	InterCloud Mapreduce and Spark Workload Migration and Sharing: Fi...
DEVNET-1140 InterCloud Mapreduce and Spark Workload Migration and Sharing: Fi...
 
Advanced Analytics and Machine Learning with Data Virtualization
Advanced Analytics and Machine Learning with Data VirtualizationAdvanced Analytics and Machine Learning with Data Virtualization
Advanced Analytics and Machine Learning with Data Virtualization
 
GDG Cloud Southlake #16: Priyanka Vergadia: Scalable Data Analytics in Google...
GDG Cloud Southlake #16: Priyanka Vergadia: Scalable Data Analytics in Google...GDG Cloud Southlake #16: Priyanka Vergadia: Scalable Data Analytics in Google...
GDG Cloud Southlake #16: Priyanka Vergadia: Scalable Data Analytics in Google...
 
A Gen3 Perspective of Disparate Data
A Gen3 Perspective of Disparate DataA Gen3 Perspective of Disparate Data
A Gen3 Perspective of Disparate Data
 
Data Engineer, Patterns & Architecture The future: Deep-dive into Microservic...
Data Engineer, Patterns & Architecture The future: Deep-dive into Microservic...Data Engineer, Patterns & Architecture The future: Deep-dive into Microservic...
Data Engineer, Patterns & Architecture The future: Deep-dive into Microservic...
 
Big Data Fabric: A Necessity For Any Successful Big Data Initiative
Big Data Fabric: A Necessity For Any Successful Big Data InitiativeBig Data Fabric: A Necessity For Any Successful Big Data Initiative
Big Data Fabric: A Necessity For Any Successful Big Data Initiative
 
Denodo Partner Connect: A Review of the Top 5 Differentiated Use Cases for th...
Denodo Partner Connect: A Review of the Top 5 Differentiated Use Cases for th...Denodo Partner Connect: A Review of the Top 5 Differentiated Use Cases for th...
Denodo Partner Connect: A Review of the Top 5 Differentiated Use Cases for th...
 
Cisco project ideas
Cisco   project ideasCisco   project ideas
Cisco project ideas
 
Bigdata.sunil_6+yearsExp
Bigdata.sunil_6+yearsExpBigdata.sunil_6+yearsExp
Bigdata.sunil_6+yearsExp
 
Serverless machine learning architectures at Helixa
Serverless machine learning architectures at HelixaServerless machine learning architectures at Helixa
Serverless machine learning architectures at Helixa
 
Session 8 - Creating Data Processing Services | Train the Trainers Program
Session 8 - Creating Data Processing Services | Train the Trainers ProgramSession 8 - Creating Data Processing Services | Train the Trainers Program
Session 8 - Creating Data Processing Services | Train the Trainers Program
 
Data Virtualization: Introduction and Business Value (UK)
Data Virtualization: Introduction and Business Value (UK)Data Virtualization: Introduction and Business Value (UK)
Data Virtualization: Introduction and Business Value (UK)
 
Webinar Data Mesh - Part 3
Webinar Data Mesh - Part 3Webinar Data Mesh - Part 3
Webinar Data Mesh - Part 3
 
Data Services and the Modern Data Ecosystem (ASEAN)
Data Services and the Modern Data Ecosystem (ASEAN)Data Services and the Modern Data Ecosystem (ASEAN)
Data Services and the Modern Data Ecosystem (ASEAN)
 
Virtualisation de données : Enjeux, Usages & Bénéfices
Virtualisation de données : Enjeux, Usages & BénéficesVirtualisation de données : Enjeux, Usages & Bénéfices
Virtualisation de données : Enjeux, Usages & Bénéfices
 
Belgium & Luxembourg dedicated online Data Virtualization discovery workshop
Belgium & Luxembourg dedicated online Data Virtualization discovery workshopBelgium & Luxembourg dedicated online Data Virtualization discovery workshop
Belgium & Luxembourg dedicated online Data Virtualization discovery workshop
 
Flash session -streaming--ses1243-lon
Flash session -streaming--ses1243-lonFlash session -streaming--ses1243-lon
Flash session -streaming--ses1243-lon
 
Sourav_Giri_Resume_2015
Sourav_Giri_Resume_2015Sourav_Giri_Resume_2015
Sourav_Giri_Resume_2015
 

Último

08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 

Último (20)

08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 

The Enterprise Guide to Building a Data Mesh - Introducing SpecMesh

  • 1. Specification-Driven Data Mesh Sion Smith CTO - oso.sh Neil Avery CTO - liquidlabs.com Introducing The Enterprise Guide to Building a Data Mesh
  • 2. About us 2 Introduction Sion Smith CTO, OSO 15 years consulting experience solving complex problems with various cloud and programming technologies Neil Avery CTO, Liquidlabs Distributed systems, previously Confluent, Luxoft, startups and others Emerging Technology
  • 3. Current State of Play The Spec Mesh Way Agenda 3 Developer Tooling ● The Gartner Hype Cycle ● Foundations of Data Mesh ● Evolution of central nervous system ● Domain mapping out of the box ● Example specification ● Data Mesh lifecycle management ● Features of Spec Mesh ● Screenshots ● Developer roadmap
  • 4. Our Data Mesh Journey
  • 5. Is the Hype Real? 5 State of Play Gartner, Hype Cycle for Data Management, 2022, Donald Feinberg, Philip Russom, Nina Showell, 30 June 2022 https://www.denodo.com/en/document/analyst-report/2022-gartner-hype-cycle-data-management Data Hub Strategy Data Integration Tools Data Lakes Data Engineering Data Ops Data Mesh Expectations Time Innovation trigger Peak of inflated expectations Trough of disillusionment Slope of enlightenment Plateau of productivity Gartner Hype Cycle for Data Management - 2022
  • 6. Four pillars of Data Mesh 6 State of Play Data as a Product Self-serve data infrastructure as a platform Federated computational Governance Domain-oriented decentralised data ownership & architecture https://martinfowler.com/articles/data-mesh-principles.html
  • 7. Is Data Mesh really new? 7 State of Play + Data mesh incremental evolution of style of architecture we have been building for several years for event streaming + A mature data streaming system adopts a central nervous system + Can we build a data mesh around event streaming principles? + A central nervous system models topics with a domain structure and federated computational governance Introducing: + An agreement / contract for data mesh using a specification Central data team Domain teams Stakeholders
  • 8. So where does Data Mesh fit? 8 State of Play Investment & Time Value 4 5 Early Interest Central Nervous System Mission critical, but disparate LOBs Identify a project Mission-critical, connected LOBs Projects Platform Single solution Scalable pipeline Pub/Sub Clusters of reuse, real-time analytics Platform effect: reuse of data, efficiencies of scale Enterprise Data-as-a Product. Event-driven architecture 3 2 1 This is used throughout large enterprise in production Confluent maturity model for event driven architecture https://www.confluent.io/resources/5-stages-streaming-platform-adoption/
  • 9. Data Mesh should not boil the ocean 9
  • 11. CNS Patterns applied to Data Mesh 1. Events and storage comprise data platform fundamentals required to build almost anything 2. Events and storage already exist and that won’t change 3. Organise data resources hierarchically 4. Enforcing a domain model is need to control complexity and cope with scale 5. Orgs have a data quality function 6. Orgs have a data catalogue function 7. Registry models are required to model data (and support data evolution etc) 8. Most organisations suffer from inconsistent mechanisms for data-as-an-api 11
  • 12. 12 Spec Mesh Supporting the pillars of Data Mesh Features Domain ownership Self-serve Data as a Product Federated Computational Governance Spec driven (async-api spec) ✔ ✔ SDLC plugins (unit-test, integration-test) ✔ SDLC plugins (provision - terraform) ✔ ✔ ✔ 3rd party data catalogue ✔ ✔ ✔
  • 13. Big Data London is our data product Spec Mesh 13
  • 14. 14 Data Model Spec Mesh / london / borough / venue / event / retail / / transport / / accommodation / / services / / london / hammersmith / olympia / bigdatalondon / public / attendee / london / hammersmith / transport / public / tube / london / heathrow / transport / public / airport / london / hammersmith / olympia / bigdatalondon / vendor / terra / public / visitor / london / hammersmith / olympia / bigdatalondon / retailer / subway / public / purchase
  • 15. asyncapi: '2.4.0' id: 'urn:london:hammersmith:olympia:bigdatalondon' Info: title: BigDataLondon API version: '1.0.0' description: Simple model of BigDataLondon as a Data Product Servers: test: url: test.mykafkacluster.org:8092 protocol: kafka-secure channels: public/attendee: Publish: summary: Humans arriving Message: name: Human "tags": [ "name": "human", "name": "big data london"] Payload: type: object Properties: Id: type: integer minimum: 0 description: Id of the human Age: type: integer 15 Spec Mesh
  • 16. 16 Spec Mesh Data Mesh as Code: Spec Mesh Capture Provision Serve >> >>
  • 17. 17 Spec Mesh Capture ● Create repo from git template ● Async-api spec ● Apply the domain model/structure ● Specify data event streams & storage ● Model the data entities (schemas) ● Apply tags to data entities ● Permission data as public/protected/private ● Write tests and build your product Provision Spec Data Catalogue Spec Mesh Capture Provision Serve What is Spec Mesh?
  • 18. Provision 18 What is Spec Mesh? Spec Mesh Provision Spec Data Catalogue Spec Mesh Capture Provision Serve ● Pipeline driven provisioning of data product based on Specification ● Includes domain structure, governance and permissions ● Data catalogue automatically updated (including tags) ● Data schema’s published to registry
  • 19. 19 What is Spec Mesh? Spec Mesh Provision Spec Data Catalogue Spec Mesh Capture Provision Serve Public Private Restricted Serve ● Governance integrated via underlying Data Platform. I.e. Kafka ACLs ● Data catalogue supports discovery (via tags), and access requests ● Data resources are structured using public, private and protected scope
  • 20. 20 Spec Mesh conceptual Spec Mesh Data Catalogue Data Product A Spec Data Product B Spec Serve Public Private Restricted
  • 22. 22 Why use Spec Mesh? Developer Tooling Developer focused tooling:. This is not some platform Abstract away complexities: Leverage layers of abstraction to create repeatable patterns Unit testing specifications: Java based tooling supports development lifecycle Tooling support flexibility: Using configurable guardrails Increased extensibility: Interoperate with existing Data Management tooling and modules Icons: www.streamlinehq.com
  • 23. 23 What do you get out of the box? Developer Tooling Spec Specification as Code [ ] Data Provider Provisioning Workflow Data Mesh Data Product A Data Product B Data Product Y Data Product Z Build Apply JSON Data Product Owner
  • 25. Add title Beyond Community driven Help us shape the roadmap by suggesting and contributing to features! Q1 - 2023 Extensions ● More Kafka extensions supported (incl provisioning support): Quotas, Storage & ACLs for Public, Private, Protected resources (basic governance) Data Catalogue ● Initial integration to existing products to support discovery and basic governance Storage ● Storage resource mapping Governance ● Delegation to a Governance API where protected topics are specified and requested Proof of Value - Q4 22 Developer Experience ● Local testing support (Java & Python) - Test containers via gradle plugin ● SpecMesh gradle plugin to use HCL Terraform & state mgmt Domain model ● Domain modelling built into Spec.Id field Build Pipeline ● Executions pushes the APISpec to apply orthogonal resource allocation Governance ● Manual governance of ‘public’ resources through Credential creation (API Keys + ACLs) Extensions ● Kafka support for Async API Q2 - 2023 Data As A Product ● Data Product Open Registry; simple Data Catalogue with Discovery and tagging (Spec resources contain tags - show example) Observability ● Topology view (derived from specs showing product/consume data flows and ownership visualisation) Bolt-ons ● Multi-region ● Cross resource ● SMT ● DQ integration + other simple additions 25 Developer Tooling Roadmap