Chapter 5 - Database Centric Architecture
Chapter 5 - Database Centric Architecture
11/1/2024 2
Technology comes and goes, but data stays
11/1/2024 3
Technology sees the world through data models
11/1/2024 4
Data Aspect
11/1/2024 5
Database Centric Architecture
11/1/2024 6
What is Database Centric Architecture?
11/1/2024 7
Types of Components
2 major components:
11/1/2024 8
Data Accessors
Shared Data
11/1/2024 9
Data Accessors
Data accessors can present the same data in many different ways.
Some data accessors can be disabled without affecting the database → decoupling of
data and application at all scales.
Client app
communication is not
permitted
Client S/W Client S/W
Shared Data
11/1/2024 10
The producers of data versus consumers of data
Consumer 1 Consumer 2
11/1/2024 11
Many relationships between data and applications
11/1/2024 13
Two Categories of Data-Centric Architecture
11/1/2024 14
Repository Architecture Style
Data storage
11/1/2024 16
Blackboard Architecture Style
Data storage
11/1/2024 17
Characteristics of Data-Centric Architecture
Data Repositories: Data-centered architecture typically involves the establishment of centralized data
repositories where all relevant data is stored. These repositories can be databases, data warehouses,
data lakes, or other storage systems.
Data Modeling and Schema Design: The architecture focuses on designing robust data models and
schemas that accurately represent the relationships and constraints within the data. This ensures data
consistency and integrity.
Data Access and Manipulation: The architecture emphasizes the design of mechanisms for accessing,
querying, and modifying data stored in the repositories. This may involve the use of standardized query
languages, APIs, or other interfaces.
Data Security and Privacy: Ensuring the security and privacy of sensitive data is a crucial aspect of data-
centered architecture. Access controls, encryption, and authentication mechanisms are often integrated
to protect the data.
11/1/2024 18
Characteristics of Data-Centric Architecture
Data Sharing and Integration: Data-centered architectures facilitate the sharing and integration of data
across different components and services within an application or across different applications. This is
particularly important in systems with diverse functionalities.
Data Consistency and Coherency: Maintaining data consistency and coherency across different parts of
the system is a priority in data-centered architecture. Techniques like transactions and synchronization
mechanisms may be employed.
Scalability and Performance: The architecture needs to address scalability concerns, especially when
dealing with large volumes of data. Techniques like sharding, replication, and caching may be utilized to
optimize performance.
Analytics and Reporting: Data-centered architectures often include provisions for data analysis,
reporting, and generating insights from the stored data.
11/1/2024 19
Benefits of Data-Centric Architecture
Data Integrity: By making data a central focus, the architecture ensures that data remains consistent,
accurate, and reliable throughout the system.
Modularity: Different components can access and manipulate data without tightly coupling with each
other, promoting modularity and maintainability.
Reusability: Data-centric services and data models can be reused across different parts of the
application or in different applications.
Scalability: Data stores and data access mechanisms can be scaled independently to handle increased
data volume and user demands.
11/1/2024 20
Benefits of Data-Centric Architecture
Consistency: All components and services work with the same set of data, reducing the chances of
discrepancies or conflicting information.
Ease of Integration: Data-centered architectures simplify the integration of different modules or services
that need to share and exchange data.
Centralized Management: Centralized data repositories make it easier to manage and control data-
related aspects of the system.
11/1/2024 21
Use Cases of Data-Centric Architecture
Healthcare Systems: Electronic health record systems and patient data management benefit from the
organization and security provided by data-centered architecture.
Content Management Systems: Systems managing and delivering content across websites rely heavily
on well-organized data structures.
11/1/2024 22
Chapter 5
11/1/2024 23
Classic Three-Tier Architecture
Three-Tier Architecture is a well-
established software application
design pattern which will organizes the
application in the three logical and
physical computing tiers as following:
If we compile these codes into ONE same machine, it’s a 1-Tier architecture.
11/1/2024 26
Chapter 5
11/1/2024 27
Advantages and Disadvantages
Advantages
- Scalability: adding new components on each tier getting easier, scaling out an application is
reasonably straightforward.
- Reusability: Any code defined once in the business layer can be shared by as many
components in the presentation tier.
- Maintainability: Each tier is independent of the others, allowing for updates or changes to
be made without having an impact on the programme as a whole.
- Security: As the client does not have direct access to the database, security is increased
because accessing data going through APIs, not directly on Database.
11/1/2024 28
Advantages and Disadvantages
Disadvantages
- High installation cost.
11/1/2024 29