IMS1907 Database Systems

Download Report

Transcript IMS1907 Database Systems

IMS1907 Database Systems

Week 5

Database Systems Architecture

Systems Architecture

The ‘blueprints’ of the system Focus on the individual ‘building blocks’ of the system and how they are put together – hardware, software, network, database – encourages independence between components Often considers logical and physical views of the system and it’s components Match ‘user needs’ to architecture ‘Art’ vs ‘Engineering’? Monash University 2004 2

Database Systems Architecture

You have considered several different ‘views’ of databases – enterprise view, ER models, tables, datasheets, forms, reports, queries – different aspects of the logical and physical views A schema – a representation, model or specification of a view of a database Database systems are based on the ANSI/SPARC standard three-schema architecture Monash University 2004 3

Three-schema Architecture

The ANSI/SPARC standard for describing the structure of data (1978) consists of three schema – external schema • user views – conceptual schema • single, coherent definition of enterprise data – internal schema • physical storage structures Monash University 2004 4

Three-schema Architecture

User View n User View 2 User View 1 Physical Schema 1 Logical Schema 1 DB 1 External Schema Conceptual Schema Internal Schema PS n LS n DB n Enterprise Data Model Physical Schema 2 Logical Schema 2 Monash University 2004 DB 2 5

External Schema

Combination of the enterprise data model (top-down) and a collection of detailed (bottom-up) user views User view is a logical description of some portion of the database required to perform a task – guided by user requirements Represent data access and authorisation at the individual users’ level Conceptually a relation, but not actually stored in DBMS – records in a view are computed as needed Monash University 2004 6

Conceptual Schema

Detailed specification of the overall structure of organisational data Complete logical view – independent of any DBMS technology Usually depicted graphically – ER, OO modelling Schema specifications stored as metadata Scope is entire organisation or major business area Monash University 2004 7

Conceptual Schema

Includes all entity types and subtypes All relationships are documented All attributes are documented – keys specified Data types, formats, domains, and business rules ar4e specified and stored in repository Ideally data model is fully normalised – acceptable and common to normalise in the logical schema Monash University 2004 8

Internal Schema

Physical storage structure details Representation of the conceptual schema as it is physically stored on particular DBMS technologies A conceptual schema can have many internal schemas Consists of a logical and physical schema Good design relies on understanding of how data is accessed and used Monash University 2004 9

Internal Schema

Logical schema – representation of data for particular DBMS • relational, OO, dimensional – tables, data types, formats, keys, … – derived by transforming elements of conceptual schema to DBMS structures Monash University 2004 10

Internal Schema

Physical schema – set of specifications describing how data from a logical schema are stored in a computer’s secondary memory for a specific DBMS – ideally one physical schema for each logical schema – describes organisation of physical records, file organisations, access paths to data, usage of indexes, clusters, … Monash University 2004 11

Database System Development

The conceptual schema and external schema are typically developed iteratively until both are fully defined Logical schema is developed by transforming conceptual schema (or parts of it) to implementation model constructs Associated physical schema is specified taking into account the software, hardware and network characteristics along with users’ performance expectations Inconsistencies discovered in physical schema may require iteration back to design of conceptual schema Monash University 2004 12

Data Independence

Ability to change the schema at one level of a DB without having to change the schema at the next higher level Logical data independence – the capacity to change the conceptual schema without having to change external schema or application Physical data independence – the capacity to change the internal schema without having to change conceptual or external schema Only mappings between levels should change Monash University 2004 13

Data Independence

This means that application programs are insulated from – changes in the way the data is structured – logical • changes in the way data is defined should not affect what the user sees – changes in the way the data is stored – physical • changes in the data storage method should not affect what the user sees, nor the conceptual view of the data Monash University 2004 14

Database Systems Network Architecture

A major decision in database systems design relates to where the data is physically stored and processed Many different types of database systems in use in enterprises – need to balance organisational, technical and usage issues – data for a given IS may reside in multiple locations on many machines – different types of processing occur at different locations Monash University 2004 15

Client/server Architecture

Significant factors in the growth of client/server architecture – increasing systems complexity – the proliferation of web-enabled systems Need for an application level of ‘servers’ that handle transactions from ‘client’ machines against some back-end database Data can exist on many different types of server – database server, application server, client server, web server Monash University 2004 16

Client/server Architecture

We commonly consider the following three architectural layers or tiers – Client tier – Application or Web server tier – Enterprise or Data Services server tier Sometimes this view is limited to the client tier and a general server tier Monash University 2004 17

Client/server Architecture

Client tier – sometimes called the presentation tier – desktop PCs, workstations, laptops, devices – managing user interfaces – may be some localised data – web scripting tasks may be executed – concept of a ‘thin client’ Monash University 2004 18

Client/server Architecture

Application or Web server tier – sometimes called process services tier – houses applications • A/P, A/R, Orders, Sales, Inventory, … – houses web services • processes HTTP protocols, scripting tasks, dynamic web pages, session management, calculations – provides data access • access and connectivity to DBMS Monash University 2004 19

Client/server Architecture

Enterprise server tier – sometimes called the data services or database tier – sometimes stored on a mainframe or minicomputer – transaction databases containing all organisational data, summarised data on departmental databases – performs sophisticated calculations – manages merging of data from multiple sources – manages multiple requests for data from multiple sources Monash University 2004 20

Database Systems Architecture

In a client/server architecture – DBMS software on a server (database server or database engine)performs database commands sent to it directly from client workstations or via application servers – client concentrates mainly on user interface functions – application servers concentrate on application-related processing functions – allows distribution of database across all types of user groups and one central server, as a single distributed database or as a set of physically related databases Monash University 2004 21

Database Systems Architecture

Implications for database development – ease of separation of development of database and modules that maintain it, from the IS applications that access and present database contents to users – many programming languages provide easy-to-use GUIs • Powerbuilder, Java, VB.NET, … – middleware greatly facilitates application access to data across large, complex systems – opportunities for reuse of software components Monash University 2004 22

References

Elmasri, R. and Navathe, S.B., (2000),

Fundamentals of Database Systems

, (3 rd edn.), Addison-Wesley, Reading, Massachusetts, USA.

Hoffer, J.A., Prescott, M.B. and McFadden, F.R., (2005),

Modern Database Management

, (7 th edn.), Pearson Education Inc., Upper Saddle River, NJ, USA.

Kroenke, D.M., (2004),

Database Processing: Fundamentals, Design and Implementation

, (9 th edn.), Pearson Education Inc., Upper Saddle River, NJ, USA.

Ramakrishnan, R. and Gehrke, J., (2003),

Database Management Systems,

(3 rd edn.), McGraw-Hill, Boston, USA.

Monash University 2004 23