Download IMS1907 Database Systems

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts

Extensible Storage Engine wikipedia , lookup

Open Database Connectivity wikipedia , lookup

Microsoft SQL Server wikipedia , lookup

Entity–attribute–value model wikipedia , lookup

Microsoft Jet Database Engine wikipedia , lookup

Concurrency control wikipedia , lookup

Database wikipedia , lookup

Functional Database Model wikipedia , lookup

Relational model wikipedia , lookup

Clusterpoint wikipedia , lookup

Versant Object Database wikipedia , lookup

Database model wikipedia , lookup

Transcript
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
DB 1
User View 2
Physical Schema 1
Logical Schema 1
User View 1
PS n
External
Schema
Enterprise
Data Model
Conceptual
Schema
Internal
Schema
DB n
LS n
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, (3rd edn.), Addison-Wesley, Reading, Massachusetts,
USA.
Hoffer, J.A., Prescott, M.B. and McFadden, F.R., (2005), Modern
Database Management, (7th edn.), Pearson Education Inc.,
Upper Saddle River, NJ, USA.
Kroenke, D.M., (2004), Database Processing: Fundamentals,
Design and Implementation, (9th edn.), Pearson Education Inc.,
Upper Saddle River, NJ, USA.
Ramakrishnan, R. and Gehrke, J., (2003), Database Management
Systems, (3rd edn.), McGraw-Hill, Boston, USA.
Monash University 2004
23