data storage and data processing architectures

32
Data Storage and Data Processing Architectures The difficulty is in the choice George Moore, 1900

Upload: leilani-davidson

Post on 31-Dec-2015

47 views

Category:

Documents


0 download

DESCRIPTION

Data Storage and Data Processing Architectures. The difficulty is in the choice George Moore, 1900. Architectures. Remote job entry. Local storage Often cheaper Maybe more secure Remote processing Useful when a personal computer is: too slow has insufficient memory - PowerPoint PPT Presentation

TRANSCRIPT

Data Storage and Data Processing

Architectures

The difficulty is in the choiceGeorge Moore, 1900

Architectures

Remote job entry

Local storageOften cheaperMaybe more secure

Remote processingUseful when a personal computer is:

too slowhas insufficient memorysoftware is not available

Some local processingData preparation

Personal database

Local storage and processingAdvantages

Personal computers are cheapGreater controlFriendlier interface

DisadvantagesReplication of applications and dataDifficult to share dataSecurity and integrity are lowerDisposable systemsMisdirection of attention and resources

Host/terminal

Remote storage and processingAssociated with mainframe computersAll shared resources are managed by the host (server)

Host/terminal

LAN architectures

A LAN connects computers within a geographic areaTransfer speeds of up to 1,000 Mbits/secPermits sharing of devicesA server is a computer that provides and controls access to a shareable resource

File/server

A central data store for users attached to a LANFiles are stored on a file/serverData is processing on users’ personal computerEntire files are transmitted on the LANCan result in heavy LAN trafficFile is locked when retrieved for updateLimited to small files and low demand

File/server

DBMS/server

A server runs a DBMSOnly necessary records are transmitted on the LANLess LAN traffic than file/serverBack-end program on the server handles retrievalFront-end program on the client handles processing and presentationMore sharing of processing than file/server

DBMS/server

Client/server

File/server and DBMS/server are examples of client/serverObjective is to reduce processing costs by splitting processing between clients and the serverClient is typically a Web browserSavings

Ease of use / fewer errorsLess training

Three-tier model

ClientsBrowser

Application serversMainly J2EE compliant

Data serversMainly relational database

Thick and thin clients

Type of client Thick Thin

Technology LAN Web

Application logic Mostly on the client

Mostly on the server

Network load Medium Low

Data storage Server Server

Server intelligence Medium High

Advantages of the three-tier model

Security is higher because logic is on the serverPerformance is betterAccess to legacy systems and a variety of databasesEasier to implement and maintain

Evolution of client/server computing

Architecture

Description

Two-tier Processing is split between client and server, which also runs the DBMS.

Three-tier Client does presentation, processing is done by the server, and the DBMS is on a separate server.

N-tier Client does presentation. Processing and DBMS can be spread across multiple servers. This is a distributed resources environment.

Distributed database

Communication charges are a key factor in total processing costTransmission costs increase with distance

Local processing saves money

A database can be distributed to reduce communication costs

Distributed database

Database is physically distributed as semi-independent databasesThere are communication links between each of the databasesAppears as one database

A hybrid

Architecture evolvesOld structures cannot be abandonedNew technologies offer new opportunities

Ideally, the many structures are patched together to provide a seamless view of organizational databasesDistributed database principles apply to this hybrid architecture

Fundamental principles

TransparencyNo reliance on a central siteLocal autonomyContinuous operationDistributed query processingDistributed transaction processing

Fundamental principles

Replication independenceFragmentation independenceHardware independenceOperating system independenceNetwork independenceDBMS independence

Independence

Distributed database access

Remote RequestRemote TransactionDistributed TransactionDistributed Request

Remote Request

A single request to a single remote site

SELECT * FROM atlserver.bankdb.customer

WHERE custcode = '12345';

Remote Transaction

Multiple data requests to a single remote siteBEGIN WORK;

INSERT INTO atlserver.bankdb.account

(accnum, acctype)

VALUES (789, 'C');

INSERT INTO atlserver.bankdb.cust_acct

(custnum, accnum)

VALUES (123, 789);

COMMIT WORK;

Distributed Transaction

Multiple data requests to multiple sitesBEGIN WORK;

UPDATE atlserver.bankdb.employee

SET empusdretfund = empusdretfund + 1000;

UPDATE osloserver.bankdb.employee

SET empkrnretfund = empkrnretfund + 7500;

COMMIT WORK;

* See notes

Distributed Request

Multiple requests to multiple sitesEach request can access multiple sitesBEGIN WORK;INSERT INTO osloserver.bankdb.employee

(empcode, emplname, …)SELECT empcode, emplname, …

FROM atlserver.bankdb.employee

WHERE empcode = 123;DELETE FROM atlserver.bankdb.employee

WHERE empcode = 123;COMMIT WORK;

Distributed database design

Horizontal FragmentationVertical FragmentationHybrid FragmentationReplication

Horizontal fragmentation

Vertical fragmentation

ReplicationFull replication

Tables are duplicated at each of the sitesIncreased data integrityFaster processingMore expensive

Partial replicationIndexes replicatedFaster queryingRetrieval from the remote database

Keypoints

There are four basic data processing architecturesN-tier client/server dominates todayDatabases can be distributed to lower communication costs and improve response time