Download Database System Architectures

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

Serializability wikipedia , lookup

Microsoft Jet Database Engine wikipedia , lookup

Microsoft SQL Server wikipedia , lookup

Functional Database Model wikipedia , lookup

Relational model wikipedia , lookup

Tandem Computers wikipedia , lookup

Database wikipedia , lookup

Open Database Connectivity wikipedia , lookup

Clusterpoint wikipedia , lookup

Database model wikipedia , lookup

Concurrency control wikipedia , lookup

Transcript
DATABASE SYSTEM ARCHITECTURE
Sayed Ahmed
Computer Engineering, BUET, Bangladesh
MSc, Computer Science, U of Manitoba, Canada
Owner/President/Architect/Developer
Justetc (Just et cetera) Technologies
http://www.justetc.net
http://sayed.justetc.net
[email protected]
FREE TRAINING BY JUSTETC

Training and Education in Bangla:



http://Bangla.SaLearningSchool.com
http://Blog. SaLearningSchool.com
Training and Education in English:



http://www.SaLearningSchool.com
http://English.SaLearningSchool.com
http://www.SitesTree.com
-------------------------------------------------------------------------------- Ask questions and get answers

http://Ask.JustEtc.net
-------------------------------------------------------------------------------- Offline IT Training:

http://University.JustEtc.net
LEARNING OBJECTIVES
Understand different database system
architectures
 Comparison of different database system
architectures
 Note:

 Bangladesh
 Subject
 Grade
Polytechnique Institute
Code: 6658, will be helpful
9 to 12 (Bangladesh) students may be
benefited
DATABASE SYSTEM ARCHITECTURES
DBMS architecture depends on the
Computer System Architecture
 DBMS architecture types

 Centralized
Systems
 Client--Server Systems
 Parallel Systems
 Distributed Systems
CENTRALIZED SYSTEMS
The DBMS resides, Run, and sits on a single
computer system
 The DBMS does not interact with other
computer systems
 Can be called One Tier Architectures

Microsoft Access
 Mainframe computer databases
 Reference:

 http://www.windowsecurity.com/whitepapers/software
_engineering/An-Overview-of-Common-DatabaseArchitectures.html
A CENTRALIZED COMPUTER SYSTEM
CLIENT-SERVER SYSTEMS

Client-server computer systems
 Server
systems satisfy requests generated at
m client systems as shown in the image below
 DBMS located in the server also respond to the
clients similar way
CLIENT-SERVER SYSTEMS (CONT.)

Database functionality can be divided into:



Back-end: manages access structures, query evaluation and
optimization, concurrency control and recovery.
Front-end: consists of tools such as forms, report-writers, and
graphical user interface facilities.
The interface between the front-end and the back-end is
through SQL or through an application program interface.
CLIENT-SERVER SYSTEMS (CONT.)

Examples
 MS
SQL Server, Oracle, Sybase in general
Can be of Thin Client and Fat-Client type
 Server systems can be broadly categorized
into two kinds:

 transaction
 widely
 data
servers (thin-client)
used in relational database systems
servers (usually fat-client),
 used
in object-oriented database systems
TRANSACTION SERVERS

Also called query server systems or SQL
server systems;
 clients
send requests to the server system
where the transactions are executed, and
results are shipped back to the client.
TRANSACTION SERVER PROCESS STRUCTURE

Transaction Server Processes
 Server
processes
 Lock manager process
 Database writer process
 Log writer process
 Checkpoint process
 Process monitor process
DATA SERVERS

Used in LANs, where




Ship data to client machines where processing is performed




there is a very high speed connection between the clients and the
server
the client machines are comparable in processing power to the server
machine
the tasks are compute intensive
And then ship results back to the server machine.
This architecture requires full back-end functionality at the clients.
Used in many object-oriented database systems
Issues:




Page-Shipping versus Item-Shipping
Locking
Data Caching
Lock Caching
PARALLEL SYSTEMS




One single DBMS in a parallel computer
The same DBMS can be accessed by the processors and can
span over multiple hard drives if any in that computer
Parallel database systems consist of multiple processors and
multiple disks connected by a fast interconnection network.
A coarse-grain parallel machine


A massively parallel or fine grain parallel


consists of a small number of powerful processors
machine utilizes thousands of smaller processors.
Two main performance measures:


throughput --- the number of tasks that can be completed in a
given time interval
response time --- the amount of time it takes to complete a
single task from the time it is submitted
PARALLEL DATABASE ARCHITECTURES

Shared memory
 processors

Shared disk
 processors

share a common memory
share a common disk
Shared nothing
 processors
share neither a common memory
nor common disk

Hierarchical
 hybrid
of the above architectures
PARALLEL DATABASE ARCHITECTURES
DISTRIBUTED SYSTEMS
Data spread over multiple machines (also
referred to as sites or nodes.
 Network interconnects the machines
 Data shared by users on multiple
machines

DISTRIBUTED DATABASES

Homogeneous distributed databases



Heterogeneous distributed databases



Same software/schema on all sites, data may be partitioned
among sites
Goal: provide a view of a single database, hiding details of
distribution
Different software/schema on different sites
Goal: integrate existing databases to provide useful functionality
Differentiate between local and global transactions


A local transaction accesses data in the single site at which the
transaction was initiated.
A global transaction either accesses data in a site different from
the one at which the transaction was initiated or accesses data in
several different sites.
TRADE-OFFS IN DISTRIBUTED SYSTEMS

Sharing data


Autonomy


each site is able to retain a degree of control over data
stored locally.
Higher system availability through redundancy


users at one site able to access the data residing at some
other sites.
data can be replicated at remote sites, and system can
function even if a site fails.
Disadvantage: added complexity required to ensure
proper coordination among sites.



Software development cost
Greater potential for bugs
Increased processing overhead
QUESTIONS?
HTTP://ASK.JUSTETC.NET