Wednesday, July 22, 2026

93 ) DATA MESH

 

What is Data Mesh?

  • Data Mesh is a system design where 
  • instead of putting all company tables
  •  into one giant centralized database, 
  • you break them up and give ownership 
  • of specific tables to the specific business teams that actually use them.

-----------------------------------------------

In other words  if a company has 800 tables instead of keeping all of them at one domain schema

split  200 x 4 tables = 800 tables in seperate domains like countries ( usa,uk,india , china )

or based on departments like ( HR, OPERATIONS , SHIPPING , IT )  


-----------------------------------------------

 a Data Mesh, instead of everything being lumped into one database, you connect tables across different domain schemas just like that:

-----------------------------------------------

SQL
SELECT *
FROM uk_domain.orders u
JOIN usa_domain.orders us ON u.orderid = us.orderid

----------------------------------------------------------------------

Without Data Mesh (The Old Way):

  • One giant central database: All teams (Finance, Sales, HR) dump their raw tables into a single massive data warehouse managed by one central IT team.

  • The Problem: Every time Finance needs a new table or column added, they have to file a ticket with the central team. The central team doesn't understand Finance well, leading to messy schemas, broken foreign keys, and massive delays.

With Data Mesh (The New Way):

  • Distributed databases owned by domains: Finance owns and manages their own database tables (like invoices and budgets), and Sales owns their own database tables (like customers and orders).

  • Data as a Product: Each team cleans their own tables, sets up their own primary keys and foreign keys correctly, and publishes them as a finished "Data Product" that other teams can safely query.

------------------------------------------------------------------------

  • That is the absolute core of it! Let's strip away all the corporate jargon and look at this using a simple, real-world analogy.

    The Restaurant Analogy

    Imagine a
    massive restaurant with one single cleanup crew responsible for
    washing every dish,
     chopping every vegetable, and
    cooking every single meal in the entire building.

    • The Problem (Centralized Data): 

      • As the restaurant gets busier, 
        that single crew gets completely overwhelmed. 
        If the sushi chef needs chopped carrots, 
        they have to wait hours for the central crew to get to it. 
          nobody knows where anything is, and 
      • who is doing what 
          what is happening
        so  mistakes happen constantly. 
         This is how traditional company data systems work.
    • The Solution (Data Mesh): Instead of one overwhelmed crew doing everything, the restaurant splits into independent kitchen stations:

      • The Sushi Station  owns its own fish, rice, and knives.

      • The Bakery Station owns its own flour, sugar, and ovens.

      • The Drink Station owns its own ice and juices.

    Each station is fully responsible for its own ingredients (its "data") and keeps them clean, organized, and ready.  

============================================
 
 

hat is Data Mesh?

"Data Mesh is a decentralized architectural approach where data is split and organized into domain-specific schemas—such as uk.orders or finance.invoices—instead of being lumped into one giant centralized database. Each business unit owns, maintains, and manages their own tables, and we connect them across domains using fully qualified schema names and cross-database queries."

2. What tools are used to implement it?

  • Cloud Data Platforms (for schemas & cross-querying): Snowflake, Databricks, or Google BigQuery (where you can easily create separate domain databases/schemas and join them like uk.orders and usa.orders).

  • Transformation & Modeling Tools: dbt (data build tool) for building modular data models inside each domain.

  • Governance & Catalog Tools (optional for enterprise): Collibra or Alation for tracking ownership across domains.

3. What steps are used to implement it?

  1. Define Domains: Break the monolithic database apart and assign separate schemas to different business units or regions (e.g., uk_domain, usa_domain).

  2. Assign Ownership: Make the specific business or engineering team for that domain responsible for writing, cleaning, and maintaining their own tables.

  3. Build Transformations: Use tools like dbt inside each domain to transform raw data into clean models.

  4. Connect & Query Across Domains: Allow other teams to access the data securely using fully qualified names and cross-schema joins (e.g., joining uk.orders with usa.orders).





-----------------------------------------------------------------------------------------------------------------
 

No comments:

Post a Comment

239 ) Metadata Management

Metadata Management and Modern Data Governance Tools Metadata management forms the backbone of data governance, data lineage, and data quali...