0% found this document useful (0 votes)
41 views3 pages

Understanding Three-Schema Architecture

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

Topics covered

  • Classification of DBMSs,
  • 3 Tier Servers,
  • Data Model,
  • Embedded Approach,
  • Federated Systems,
  • Centralized DBMS,
  • Query Optimization,
  • Object-Oriented DBMS,
  • Computer Aided Software Engine…,
  • 2 Tier Servers
0% found this document useful (0 votes)
41 views3 pages

Understanding Three-Schema Architecture

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

Topics covered

  • Classification of DBMSs,
  • 3 Tier Servers,
  • Data Model,
  • Embedded Approach,
  • Federated Systems,
  • Centralized DBMS,
  • Query Optimization,
  • Object-Oriented DBMS,
  • Computer Aided Software Engine…,
  • 2 Tier Servers

Data Model: concepts of structure, operations, constraints for DB

DM Structure and Constraints DM Operations


- Constructs define DB, include elements & - specifying database retrievals and updates
relationships - include basic model operations (insert,
- Constraints specifies restriction delete, update) and user-defined
operations
Categories of Data Models
Conceptual (high-level, semantic)(Entity/Object based): concepts like how many users perceive data
Physical (low-level, internal): concepts of how data is stored in the computer
Implementation (representational): falls between last two {used by commercial DBMS}
Self-Describing Data Models: combine description of data with data values

DB Schema vs Instance
DB Schema(Intension): description of DB - DB State (Instance)(Extension)
- Schema Diagram: Illustrative display of DB - Data stored at a particular moment in
‫ى‬
Schema (‫)بمعن شكل او مظهر‬ time
- Schema Construct: DB component / - Term also applied to each object in DB
object - changes every time the DB is updated
- changes infrequently (‫)نادرا اما بتتغي‬ Initial State: when it Valid State: satisfies
is first loaded Structs and cons.
Three-Schema Architecture:
- program/data independence, multiple views
Internal conceptual external
Physical storage Structure & Various user
structures constraints views
Mapping among them is required

Data Independence:
Logical: capacity to change conceptual schema without changing external
Physical: capacity to change internal schema without changing conceptual
- when changing a schema at a lower level only the mappings need to change,
higher level schemas remain unchanged.
DBMS Languages
Data Definition Language (DDL)
Data Manipulation Language (DML)
DDL DML
Used by admins and designers to specify Used to specify DB retrievals and updates
conceptual schema (can be in a prog language)
May use S(Storage) DL / V(View) DL Stand-alone command(query)
High(non-procedural/declarative): Like SQL,
also set oriented
Low(procedural): retrieve data record at a
time
DBMS Interfaces:
Stand-alone, Mobile, Natural language, Speech, parametric(atm), DB Admin.
Programmer (embedding DML in prog language) User-friendly(forms,menu,graphics)

Embedded Approach: C/C++ - SQLJ(Java) Menu: popular on web


Procedure Call Approach: Java DBC – Open DBC Forms: for naïve users
DB Programming Language Approach: Oracle/SQL Graphics, Natural language, combinations of above
Scripting Languages: PHP, Python
DB System Utilities:
Loading Data, Backing Up, Reorganizing, performance/user monitoring, report
generation, sorting, data compression.
Other Tools: Data Dictionary/repository (Store database descriptions etc..)
ADE (Application Development Environment), CASE (Computer Aided Software
Engineering): Power Builder, JBuilder, JDeveloper 10G
‫)سيفر ى‬
Centralized DBMS: (‫يعن‬
- 2 Tier Servers: Interface, clients connect remotely(can be diskless),
connected via network, applications connect via API
- 3 Tier Servers: clients can’t access directly, needs a middle tier to
connect, more secure
Classification of DBMSs: Legacy (Network, Hierarchical), Currently
used(Relational, Object-Oriented, Object-Relational), Recent tech,
NoSQL systems, single/multi user, centralized/distributed
Variations of Distributed DBMSs (DDBMSs)(known now as client-server based DBS):
Homogeneous DDBMS, Heterogeneous DDBMS, Federated or Multidatabase Systems

- Considerations for DBMS:


- Cost (from free(MySQL) to millions of dollars, licensing)
- Type of access
- General Purpose vs Special Purpose
:‫ هحاول الخصها‬..‫ اما قصة‬Data Models ‫وهنا بيحك قصة ال‬
1964-65 first network DBMS, ADOPTED heavily,
later implemented in large projects
Advantages:
- able to model complex relationships
Network Model - Can handle most situations for modeling
- Language is navigational.
Disadvantages
- nature of processing
- contains a complex array of pointers
1965 – implemented by IBM, has very large
customer base, based on IMS, other systems based
on it.
Advantages:
- Simple to construct and operate
- Corresponds to a number of natural hierarchically
Hierarchical Model
organized domains
- Language is simple
Disadvantages:
- nature of processing
- visualized as a linear arrangement of records
- Little scope for "query optimization”
1970 first proposed, 1981-82 first system, now in
Relational Model several products (oracle, MySQL, free open
sources, currently most dominant)
Several models have been proposed for implementing,
Object-oriented Data Models comprises of OOP like C++
Mix of object models, Exemplified in the versions of
Oracle, DB2, and SQL Server and other DBMS, Current
Object-Relational Models trend by Relational DBMS vendors, The term “Object-
relational” is receding(‫ )بتقل شهرتها‬in the marketplace

‫ سبحان هللا العظيم‬- ‫سبحان هللا وبحمده‬


‫وشكر هللا سعيكم‬

Common questions

Powered by AI

Early network and hierarchical models were limited by their complexity and rigid structure. The network model's intricacy involved a complex set of pointers, making database management and querying cumbersome for developers, as it required precise knowledge of data paths. The hierarchical model, while simpler, constrained data organization to a single parent hierarchy, limiting query flexibility. These limitations naturally led to the development of the relational model, which offered simplicity and a high level of abstraction, allowing for intuitive and dynamic queries through SQL, broad flexibility in data relationships, and easier database administration .

Data independence in the three-schema architecture, which includes logical and physical data independence, allows for changes in the database schema at one level without affecting the schema at a higher level. Logical data independence refers to the ability to change the conceptual schema without altering the external schemas or applications, facilitating schema evolution without disrupting end users or applications. Physical data independence allows changes to the internal schema without affecting the conceptual schema, enabling optimization and storage efficiency improvements without disrupting the data model. This separation into different schema layers helps manage the complexity and improves the flexibility of database systems .

Data Definition Language (DDL) and Data Manipulation Language (DML) serve different purposes within a Database Management System (DBMS). DDL is used by database administrators and designers to define the database schema, which includes creating and modifying the structures within the database, such as tables and indexes. DML, on the other hand, is used to manipulate the data within those structures, allowing for retrieval, insertion, update, and deletion of data records. Each plays a crucial role: DDL is essential for setting up and maintaining the database structure, while DML allows for accessing and managing the data, ensuring that both the database architecture and data operations are handled efficiently .

In a DBMS, a schema refers to the overall design of the database, including its structure and rules—essentially the blueprint that dictates how data can be stored and related. An instance, on the other hand, is a specific data snapshot at a particular point in time that complies with these rules. The distinction is crucial because while the schema generally remains stable (allowing consistency in the system's structure and operations), instances are dynamic, reflecting real-time data changes. This separation allows administrators to modify or evolve schemas without immediate impact on existing data instances, providing flexibility for development and operational stability .

The relational model has maintained its dominance due to its simplicity, mathematical foundation, and the powerful query capabilities provided by SQL, which make it highly suitable for a wide range of applications. Despite the emergence of object-oriented and NoSQL databases, which at times offer advantages for specific use cases (like handling large-scale unstructured data or complex data types), the relational model's robustness, established standards, abundance of tools and expertise, and continuous evolution—increasingly incorporating features of other models—ensure its adaptability and ongoing relevance. This versatility makes it a continuing cornerstone for businesses that need reliable, efficient data management systems .

The object-oriented data model is designed to use concepts from object-oriented programming, such as classes, inheritance, and encapsulation, to handle complex data types and relationships directly within the database. It emphasizes the encapsulation of data and behavior together. The object-relational data model, on the other hand, extends the relational model by incorporating some object-oriented features into a relational database framework, allowing for the handling of complex data types and user-defined types while maintaining a tabular structure and SQL capabilities. Modern DBMS, particularly relational ones like Oracle or SQL Server, have increasingly incorporated object-relational features to offer greater flexibility and handle an expanding array of data types, although the term 'object-relational' is becoming less prominent as these features are now typically standard in relational systems .

Hierarchical data models organize data in a tree-like structure, with records representing nodes connected in a parent-child relationship, which naturally aligns with certain real-world processes and hierarchical domains. The network data model allows more complex relationship representations using a graph structure of nodes and connecting edges (pointers), facilitating many-to-many relationships. However, both models face challenges in query processing: the hierarchical model's linear and fixed structure can limit query optimization and flexibility, while the network model's reliance on navigation with pointers complicates retrieval and requires complex processing logic to traverse connections effectively .

A stand-alone DBMS interface is typically designed for desktops or laptops, offering robust features with a focus on user-friendliness through forms, menus, and sometimes graphical interfaces. It is intended for environments with stable infrastructure and offers extensive interaction capabilities, often requiring substantial computing resources. Conversely, a mobile or embedded DBMS interface prioritizes compactness and efficiency, designed to work with limited device resources and varying connectivity conditions, often simplifying features for essential functionality. This affects user interaction by emphasizing touch-friendly, simplified command sets and ensures the systems are highly portable, enabling data management on-the-go, crucial for modern business operations and field applications .

Self-describing data models integrate metadata directly within the data files, providing a structure where data instances have accompanying descriptions that explain their schema, constraints, and relationships. This integration allows systems to interpret, store, and manipulate data flexibly without predefined schema constraints, facilitating interoperability and data exchange across different systems. This model is especially beneficial for systems where schemas evolve frequently or where the need to understand the data structure dynamically without extensive external metadata is high, such as in certain NoSQL or semi-structured data environments .

Centralized DBMS and distributed DBMS differ primarily in their architecture and data management approach. A centralized DBMS has all the data and DBMS software located at a single site, which can simplify management but may limit scalability and lead to performance bottlenecks as system demands grow. In contrast, a distributed DBMS spreads data across multiple sites or nodes, which can enhance scalability and potentially improve performance through parallel processing and load balancing. However, distributed systems introduce complexities such as ensuring data consistency and handling network latency. These differences imply that while centralized DBMS may serve well for small to medium-sized operations, distributed DBMS is more suitable for larger, more complex, or geographically dispersed environments .

You might also like