You are on page 1of 29

Introduction to Databases

DBMS Architectures and Features

DBMS Architectures
 There is a wide variety of different DBMS architectures
         

Teleprocessing File-Server Architecture Two-Tier Client-Server Architecture Three-Tier Client Server Architecture N-Tier Architecture Peer-to-Peer Architecture Distributed DBMS Service-Oriented Architecture Cloud Architecture ...


Teleprocessing Terminal 1 Terminal 3 Mainframe Terminal 2 Terminal n  Traditional multi-user system architecture  single mainframe and multiple (dumb) terminals runs application programs and DBMS formats data for presentation on terminals  Heavy load on the central mainframe   8 .

..  Tendency to replace mainframes with network of personal computers (downsizing)    file-server architectures client-server architectures . 9 ..Teleprocessing ..

g.File-Server Architecture data request LAN or WAN Workstation 1 (DBMS) file Database File-Server Workstation 2 (DBMS) Workstation n (DBMS)  A file-server is a computer that is connected to a network and mainly serves as a shared storage  e. for shared access to a database  In a file-server architecture the processing is distributed over the network  workstations (application and DBMS) request data (files) 10 .

Order WHERE Order.File-Server Architecture .. the entire Customer and Order relations (files) have to be transferred  Disadvantages    heavy network traffic each workstation runs a full instance of the DBMS complex integrity.multiple DBMSs may concurrently access the same shared file 11 .customerID = Customer. street FROM Customer.  Since the file-sever is not SQL-aware. concurrency and recovery control ..customerID AND name = 'Urs Frei'.  SQL Request Example SELECT name.

thick client .Two-Tier Client-Server Architecture data request LAN or WAN Client 1 selected data Database Server (DBMS) Client 2 Client n  Application consists of a client (first tier) and a server (second tier) that might run on different machines   clear separation of concerns between client and server thin client vs.less or more application logic on the client side  Supports decentralised business environments 12 .

..authorisation. integrity checks..Two-Tier Client-Server Architecture .  Server (second tier) tasks   business logic (e.  Client (first tier) tasks    presentation of data (user interface) business and data application logic send database requests to the server and process results manage (concurrent) database access (data services) . recovery control. validation of data) single client and single server multiple clients and single server multiple clients and multiple servers 13  Different possible client-server topologies    .. . query/update processing.g.

.  Communication between client and server via interprocess communication (IPC) or over network  special protocols such as ODBC (JDBC) introduced earlier in the course when discussing the Call Level Interface (CLI) increased performance .certain tasks performed in parallel and server can be tuned for DB processing  Advantages     reduced communication costs .only selected data is transferred reduced hardware costs .constraint checking in a single place (server) 14 .only server has to run a DBMS increased consistency/security through separation of concerns ..Two-Tier Client-Server Architecture .

Two-Tier Client-Server Architecture ..significant client-side administration overhead • e. RAM.   wider access to existing databases maps well to open system architectures limitations in terms of enterprise scalability with thousands of potential clients ...thick client requires a considerable amount of resources (CPU.  Advantages . expensive deployment of new busines and data application logic  Disadvantages  .) for running applications efficiently 15 ....g. .

g. a logic tier (application server) and a data tier (database server) that might run on different platforms 16 .Three-Tier Client-Server Architecture LAN or WAN Client 1 data request selected data Application Server Database Database Server Client 2 Client n  In the 1990s. driven by emerging web applications  Application consists of a presentation tier (client). the three-tier client-server architecture was introduced to address the enterprise scalability problem  e.

. .authorisation... integrity checks.  Presentation tier (first tier) tasks    presentation of data (user interface) basic input validation (thin client) send requests to the server and visualise results business logic data processing logic basic data validation manage (concurrent) database access (data services) . query/update processing.Three-Tier Client-Server Architecture ..  Logic tier (second tier) tasks    Data tier (third tier) tasks   17 . recovery control.

) ..  Advantages  reduced costs for thin clients due to lower resource requirements (CPU. .reduces the software distribution problem (updates) that is present in two-tier client-server architectures   increased modularity ..e...Three-Tier Client-Server Architecture . applications running in a web browser  application logic is centralised in a single application server .easier to replace one tier without affecting the other tiers load balancing becomes easier with a clear separation between the core business logic and the database functionality 18 . RAM.g.

Web Information Systems (WIS) HTTP Request Internet HTTP Response Database Application Server DB Server Client  The tree-tier architecture maps very naturally to Web environments  browser as a thin client. application server (web server) and database server  The move towards thin browser clients has dramatically reduced the costs for software deployment 19 .

only dynamic content delivered by the application server whereas static content is directly managed by the web server 20 .g.increases the flexibility for load balancing by introducing multiple web servers . separation between web server and application server in the previous web information system example .N-Tier Architecture HTTP Request Internet HTTP Response Database Web Server Application Server DB Server Client HTML Pages  The three-tier architecture can be extended with additional intermediary tiers for increased flexibility  e.

Peer-to Peer Architecture Database 1 Site 1 LAN or WAN Site 3 Database 2 Site 2 Site n Database 3  Systems exchanging information and services in a peerto-peer-like manner without a central authority  no global schema and need for schema integration (matching) no dedicated clients and servers sites may dynamically form new client/server relationships 21  Data and service sharing   .

g. servers) and provide a uniform interface remote procedure call (RPC) .CORBA .XML RPC  There exist different types of middleware     asynchronous publish/subscribe .Middleware  Software that connects (mediates) between software components or applications  hide complexity of heterogenous and distributed components (e.. 22 database connectivity (ODBC) .subscribe for different types of messages SQL-oriented data access .Java RMI .

Parallel Database Architectures Processor Memory Memory Processor Memory Processor Processor Processor Memory Disk Processor Memory Disk Disk Processor Memory Disk Processor Disk Disk shared memory shared disk shared nothing  Parallel machines (multiple processors) can be used to speed up the transaction processing  Different models for parallel database architectures  shared memory. shared disk. shared nothing and hierarchical 25 .

Distributed DBMS (DDBMS) Database Site 1 LAN or WAN Site 3 Database Site 2 Site n Database  Distributed database  logically related collection of shared data and metadata that is distributed over a network software system to manage the distributed database in a transparent way 28  Distributed DBMS  .

if one site fails the other sites may still be able to continue operating .accesses data from several different sites  Reasons for building a distributed DBMS    data sharing ..Distributed DBMS (DDBMS) .data might be replicated at serveral sites for increased availability 29 .  Distinction between local and global transactions   local transaction ..each site retains a certain degree of control over the local data availability .possibility to access data that resides at other sides autonomity .accesses only data from the site from which the transaction was initiated global transaction .

.coexistence of legacy systems with new applications dynamic organisational structure .deadlock detection has to be carried out accros multiple sites 30 .use cluster of PCs instead of large mainframe systems integration of existing DBMS .Distributed DBMS (DDBMS) .mergers and acquisitions  Implementation issues  transactions have to be executed atomically accross different sites (two-phase commit protocol) .  Reasons for building a distributed DBMS ..commit decission is left to a single coordinator  distributed concurrency control ...    costs and scalability .

e. service for data storage etc.Service-Oriented Architectures (SOA)  Architecture that modularises functionality as interoperable services     loose coupling of services service encapsulation interoperability between different operating systems and programming languages new services can be defined as a mashup of existing services e.g.g. 31  Service-oriented database architecture (SODA)   Software as a service (SaaS)  . single SQL Server processes acting as service providers software is offered as a service and on the other hand might be a composition of other services .

g. Discovery and Integration (UDDI) . Business Process Execution Language (BPEL) 32 ..  Share business logic.Universal Description.Web Services Description Language (WSDL) .Simple Object Access Protocol (SOAP)  RESTful Web Services  Web services are based on established technologies such as the Extensible Markup Language (XML)  Special service orchestration languages for the use of services  e.. data and processes via web service APIs  Big Web Services .Service-Oriented Architectures (SOA) .

for resources) required 33 . Web Service API or browser) pay only for the services that are actually used (pay-per-use) no initial investment (e. data and software  Main characteristics    web-based access (e.g.g.Cloud Computing Microsoft Google Client 1 The Cloud Yahoo Amazon Client 3 Client 2 Client n  Internet-based computing with on-demand and pay-peruse access to shared resources.

e. Google Docs. .  Cloud service vendor gets some degree of control 34 ..e. .g.  platform as a service (PaaS) .. Rackspace.  software as a service (SaaS) .. ..provide software as a service over the Internet ..Cloud Computing . Amazon EC2...g. Windows Azure Platform.provide platform to run applications .. Google App Engine.g.e.OS virtualisation .  Cloud services  infrastructure as a service (IaaS) .

intuit. .. replication.  New challenges for database management in cloud computing  cloud database server might be less reliable . ...might become difficult to guarantee a specific quality of service (QoS) for an application realised in the cloud  backup..blist..Blist.  Online or web-based databases   35 . store data in the cloud or on servers on the Internet examples ...Cloud Computing . .QuickBase.

hashtables with set of key value pairs  Amazon SimpleDB      36 .schemaless .Cloud Data Service Example  Amazon Simple Storage Service (Amazon S3)    online storage service with unlimited storage space store objects (up to 5 GB in size) in buckets Web Service API distributed database written in Erlang offers a Web Service API makes uses of S3 and EC2 on demand scaling non-relational data store .

com  New requirements for mobile DBMSs    location-dependent queries context-aware queries 37 ... small footprint databases that can run on mobile devices with limited resources .g. http://www.Mobile DBMS  Users want access to information on the move via mobile devices     tourist information systems salesperson who is visiting their customers emergency services .e. db4objects.db4o.

    communicate with centralised database server via wireless network or fixed Internet connections replicate data on a centralised server and on a mobile device ....synchronisation challenges caching of data and transactions to cope with potential network connection failures opportunistic (peer-to-peer based) information exchange with other mobile DBMSs .g..Mobile DBMS .  New requirements for mobile DBMSs . 38 .which portion of a database can/should be replicated on a mobile device? .. dynamic P2P Bluetooth connections with other devices in range (proximity-based information exchange)   security .e..