© 2003 ipd, prof. lockemann universität karlsruhe (th) btw03 information system architectures:...

32
© 2003 IPD, Prof. Universität Karlsruhe (TH) BTW03 Information System Architectures: From Art to Science Peter C. Lockemann

Post on 19-Dec-2015

215 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: © 2003 IPD, Prof. Lockemann Universität Karlsruhe (TH) BTW03 Information System Architectures: From Art to Science Peter C. Lockemann

© 2003 IPD, Prof. Lockemann

UniversitätKarlsruhe (TH)

BTW03

Information System Architectures: From Art to Science

Peter C. Lockemann

Page 2: © 2003 IPD, Prof. Lockemann Universität Karlsruhe (TH) BTW03 Information System Architectures: From Art to Science Peter C. Lockemann

© 2003 IPD, Prof. Lockemann

2

BTW03

Agenda

requirements specification

systems architecture

S/H system

architectural design = programming-in-the-very-

large

Requirements = services Well ... what is a service? Our design hypothesis Classical DBMS as our testbed ... and newer DBMS From analysis to construction Layers and components The hypothesis under stress: components Tier-architectures Conclusion

Page 3: © 2003 IPD, Prof. Lockemann Universität Karlsruhe (TH) BTW03 Information System Architectures: From Art to Science Peter C. Lockemann

© 2003 IPD, Prof. Lockemann

3

BTW03

information process 1

resource manager 1

work unit 1

Shared resources and services

resource manager 2 resource manager 3 resource manager 4

work unit 2 work unit 3 work unit 4

work unit 4work unit 3work unit 2work unit 1 work unit 5

information process 2

service client

service provider

businessprocess

Page 4: © 2003 IPD, Prof. Lockemann Universität Karlsruhe (TH) BTW03 Information System Architectures: From Art to Science Peter C. Lockemann

© 2003 IPD, Prof. Lockemann

4

BTW03

work unit

What’s a service?

resource manager

work unit

work unitwork unit

service client

service provider

competence

requirements

service level agreement

service = obligation

Service design: Determine the competences

needed by a broad clientele Settle which obligations

(responsibilities) to accept

Page 5: © 2003 IPD, Prof. Lockemann Universität Karlsruhe (TH) BTW03 Information System Architectures: From Art to Science Peter C. Lockemann

© 2003 IPD, Prof. Lockemann

5

BTW03

work unit

What’s in a service?

resource manager

work unit

work unitwork unit

service client

service provider

service = obligation

The core:FunctionalityQualities of service:UbiquityDurabilityInterpretabilityRobustnessSecurityPerformanceScalability

Page 6: © 2003 IPD, Prof. Lockemann Universität Karlsruhe (TH) BTW03 Information System Architectures: From Art to Science Peter C. Lockemann

© 2003 IPD, Prof. Lockemann

6

BTW03

Characterization of a service

The core:Functionality: Collection of functionsQualities of service: Ubiquity: Unrestricted access in space (data comm.) Durability: Unlimited access in time (data storage) Common Interpretability in space and time: Consistency as

best-effort Robustness: Guarantees under all circumstances: failure

resilience, conflict resilience, function persistence Security: No effects other than those guaranteed Performance: Service level at cost, e.g., throughput,

response time Scalability: Guaranteed service level under growth

Page 7: © 2003 IPD, Prof. Lockemann Universität Karlsruhe (TH) BTW03 Information System Architectures: From Art to Science Peter C. Lockemann

© 2003 IPD, Prof. Lockemann

7

BTW03

The design goal: service hierarchies

The basics of architectural design: divide-and-conquer

functionality

service

higher-level responsibility

qualities

lower-level responsibilities

functionality

service

qualities functionality

service

qualitiesfunctionality

service

qualities

Page 8: © 2003 IPD, Prof. Lockemann Universität Karlsruhe (TH) BTW03 Information System Architectures: From Art to Science Peter C. Lockemann

© 2003 IPD, Prof. Lockemann

8

BTW03

Our design hypothesis

functionality

service

higher-level responsibility

qualities

composition: assemble higher-level responsibility

decomposition: divide higher-level

responsibility

lower-level responsibilities

functionality

service

qualities functionality

service

qualitiesfunctionality

service

qualities

1. Functional decomposition

? ??

Page 9: © 2003 IPD, Prof. Lockemann Universität Karlsruhe (TH) BTW03 Information System Architectures: From Art to Science Peter C. Lockemann

© 2003 IPD, Prof. Lockemann

9

BTW03

Our design hypothesis

functionality

service

higher-level responsibility

qualities

lower-level responsibilities

functionality

service

qualities functionality

service

qualitiesfunctionality

service

qualities

1. Functional decomposition

? ??

2. Propagation of service qualities

Exclusive control: sole responsibility, no propagation

Partial control: shared responsibility,

partial propagation

Complete delegation: full propagation

Page 10: © 2003 IPD, Prof. Lockemann Universität Karlsruhe (TH) BTW03 Information System Architectures: From Art to Science Peter C. Lockemann

© 2003 IPD, Prof. Lockemann

10

BTW03

Our design hypothesis

functionality

service

higher-level responsibility

qualities

lower-level responsibilities

functionality

service

qualities functionality

service

qualitiesfunctionality

service

qualities

1. Functional decomposition

? ??

2. Propagation of service qualities

Exclusive control: sole responsibility, no propagation

Partial control: shared responsibility,

partial propagation

Complete delegation: full propagation

3. Priority of service qualities

Choose one as the primary qualityRefine decompositionConsider others as orthogonal

Page 11: © 2003 IPD, Prof. Lockemann Universität Karlsruhe (TH) BTW03 Information System Architectures: From Art to Science Peter C. Lockemann

© 2003 IPD, Prof. Lockemann

11

BTW03

Relational DBMS as our testbed

Functional decomposition Relational functionality as the service.

Propagation of service qualities QoS to be considered: durability, consistency, robustness,

performance, scalability.

Priority of service qualities Durability requires non-volatile storage medium: Slow

magnetic disk as the physical bottleneck.

Thesis 1: Performance is primary QoS.

Thesis 2: Observe performance on all levels partial control

Question: Are the remaining QoS orthogonal?

Page 12: © 2003 IPD, Prof. Lockemann Universität Karlsruhe (TH) BTW03 Information System Architectures: From Art to Science Peter C. Lockemann

© 2003 IPD, Prof. Lockemann

12

BTW03

Performance as a shared responsibility

resource manager i

data model Di

Data model

more expressivedata model

less expressivedata model data model Di-1

wider usage context

narrower usage context

Performance

Data modelmapping

access profile

Data staging

Page 13: © 2003 IPD, Prof. Lockemann Universität Karlsruhe (TH) BTW03 Information System Architectures: From Art to Science Peter C. Lockemann

© 2003 IPD, Prof. Lockemann

13

BTW03

DBMS reference architecture

External data modelData rearrangementQuery processing

Internal data model

Data model Data stagingStatic data structure

Access density

Management of sets of recordsAssignment of physical data structs

Physical data structures

Access patterns

Data types:Sets of records

Operators:Set operators

Data types:Records and sets of records

Operators:Record operators

Data types:Lists, Trees, Hash tables,...

Operators:Lists: seq. navigationTrees: seq. navigation, key searchHash tables: key search

Page 14: © 2003 IPD, Prof. Lockemann Universität Karlsruhe (TH) BTW03 Information System Architectures: From Art to Science Peter C. Lockemann

© 2003 IPD, Prof. Lockemann

14

BTW03

DBMS reference architecture

External data modelData rearrangementQuery processing

Internal data model

Data model Data stagingStatic data structure

Access density

Management of sets of recordsAssignment of physical data structs

Physical data structures

Access patterns

Data types:Sets of records

Operators:Set operators

Data types:Records and sets of records

Operators:Record operators

Data types:Lists, Trees, Hash tables,...

Operators:Lists: seq. navigationTrees: seq. navigation, key searchHash tables: key search

Blocks and filesFile managementParameter control

Device interface Storage structure

Device I/O

Data types:Block = fixed number of BytesFile = variable number of blocks

Operators: Create/open/close of files Read/write of blocks

Pages and segmentsSegment and buffer management

Mapping pages to blocksTimely provision of data in

main memoryTransparency of peripheral

storage

Data types:Page = fixed number of BytesSegment = variable number of pages

Operators:Request/release of pages Create/open/close of segments

Physical proximity

Page 15: © 2003 IPD, Prof. Lockemann Universität Karlsruhe (TH) BTW03 Information System Architectures: From Art to Science Peter C. Lockemann

© 2003 IPD, Prof. Lockemann

15

BTW03

DBMS reference architecture

External data modelData rearrangementQuery processing

Internal data model

Data model Data stagingStatic data structure

Access density

Management of sets of recordsAssignment of physical data structs

Physical data structures

Access patterns

Data types:Sets of records

Operators:Set operators

Data types:Records and sets of records

Operators:Record operators

Data types:Lists, Trees, Hash tables,...

Operators:Lists: seq. navigationTrees: seq. navigation, key searchHash tables: key search

Blocks and filesFile managementParameter control

Device interface Storage structure

Device I/O

Data types:Block = fixed number of BytesFile = variable number of blocks

Operators: Create/open/close of files Read/write of blocks

Pages and segmentsSegment and buffer management

Mapping pages to blocksTimely provision of data in

main memoryTransparency of peripheral

storage

Data types:Page = fixed number of BytesSegment = variable number of pages

Operators:Request/release of pages Create/open/close of segments

Physical proximity

Record clusteringImplementation on pages

Page 16: © 2003 IPD, Prof. Lockemann Universität Karlsruhe (TH) BTW03 Information System Architectures: From Art to Science Peter C. Lockemann

© 2003 IPD, Prof. Lockemann

16

BTW03

Relational DBMS as our testbed

Functional decomposition Relational functionality as the service.

Propagation of service qualities QoS to be considered: durability, consistency, robustness,

performance, scalability.

Priority of service qualities Durability requires non-volatile storage medium: Slow

magnetic disk as the physical bottleneck.

Thesis 1: Performance is primary QoS.

Thesis 2: Observe performance on all levels partial control

Question: Are the remaining QoS orthogonal?

Page 17: © 2003 IPD, Prof. Lockemann Universität Karlsruhe (TH) BTW03 Information System Architectures: From Art to Science Peter C. Lockemann

© 2003 IPD, Prof. Lockemann

17

BTW03

The remaining qualities

logical data model

data rearrangementquery translation and optimization

internal data model

management of sets of recordsassignment of physical data structs

physical data structures

implementation on pages

segment management

mapping pages to blocksbuffer management

device interface

file management

parameter control

metadata model

metadata management

transaction management

scheduling loggingrecovery

archive management

backuplong-range storage

consistencyrobustnessdurability

Page 18: © 2003 IPD, Prof. Lockemann Universität Karlsruhe (TH) BTW03 Information System Architectures: From Art to Science Peter C. Lockemann

© 2003 IPD, Prof. Lockemann

18

BTW03

Semistructured databases (XML)

Relational front-endsNative systems

XML structures

structural mappingquery translation and optimization

assignment of physical data structsto subtrees and media fields

subtree implementations

segment management

mapping pages to blocksbuffer management

device interface

file management

parameter control

media data to block clusters

physical data structuresphysical data structures

index implementation

physical data structures

different data modelless regularitytree navigation as access profiletext orientationperformance, performance, ... More difficult decomposition!

Page 19: © 2003 IPD, Prof. Lockemann Universität Karlsruhe (TH) BTW03 Information System Architectures: From Art to Science Peter C. Lockemann

© 2003 IPD, Prof. Lockemann

19

BTW03

Construction: What if …

Functional decomposition Relational functionality as the service.

Propagation of service qualities QoS to be considered: durability, consistency, robustness,

performance, scalability.

Priority of service qualities Durability requires non-volatile storage medium: Slow

magnetic disk as the physical bottleneck.

Thesis 1: Performance is primary QoS.Privacy

Motivation: VLDB2002 paper on Hippocratic databases by R. Agrawal et al.QoS of purpose

Page 20: © 2003 IPD, Prof. Lockemann Universität Karlsruhe (TH) BTW03 Information System Architectures: From Art to Science Peter C. Lockemann

© 2003 IPD, Prof. Lockemann

20

BTW03

Hippocratic databases: A new try

sets of recordsdescriptive queries

purpose descriptions

Functionalities (data model)

Performance

sets of recordsquery graphs

purpose descriptions

sets of records with identical purpose

record-oriented access

data records and main storage blocks

block-oriented access

logical data model

query processing

purpose bound data modelquery graph transformation with

propagation of query and database purposes

secure internal data modelimplementation of physical

data structures for sets and indexes,operator implementations

secure buffersprotected cache management,

placement of records in segments + pages, extraction of records from pages

(query, query purpose)

traditional storage engine

Database purposes(rules,

authorizations)

Pu

rpo

se-r

estr

icte

d v

isib

ilit

yF

ull

vis

ibil

ity

Firewall

The price of privacy is performance!

Page 21: © 2003 IPD, Prof. Lockemann Universität Karlsruhe (TH) BTW03 Information System Architectures: From Art to Science Peter C. Lockemann

© 2003 IPD, Prof. Lockemann

21

BTW03

Construction: What if …

Functional decomposition Relational functionality as the service.

Propagation of service qualities QoS to be considered: durability, consistency, robustness,

performance, scalability.

Priority of service qualities Durability requires non-volatile storage medium: Slow

magnetic disk as the physical bottleneck.

Thesis 1: Performance is primary QoS.Consistency

Motivation: Heavy use of constraints to make the databases a closer model of the real world

Page 22: © 2003 IPD, Prof. Lockemann Universität Karlsruhe (TH) BTW03 Information System Architectures: From Art to Science Peter C. Lockemann

© 2003 IPD, Prof. Lockemann

22

BTW03

Incorruptible databasesconstrained logical data model

routing

compile servicesdeductive processing of constraint sets into

inference modules and relational queries

queries, constraints

traditional storage engine

just-in-time servicesdeductive processing of queries using the

inference modules

relational servicesapplication of augmented relational

operators to cached database sections

relational data modelquery translation and optimization

operator mapping

physical data structures

implementation on pages

Page 23: © 2003 IPD, Prof. Lockemann Universität Karlsruhe (TH) BTW03 Information System Architectures: From Art to Science Peter C. Lockemann

© 2003 IPD, Prof. Lockemann

23

BTW03

From service hierarchy to an architecture

functionality

service

qualities

functionality

service

qualities functionality

service

qualitiesfunctionality

service

qualities

close couplingloose coupling

component 1

component 2

component architecture

layer 1

layer 2

layered architecture

Page 24: © 2003 IPD, Prof. Lockemann Universität Karlsruhe (TH) BTW03 Information System Architectures: From Art to Science Peter C. Lockemann

© 2003 IPD, Prof. Lockemann

24

BTW03

Coupling, layers, components

Candidate criteria for components :

Adjacent services share no resources loose coupling

No shared responsibilities loose coupling

Partial control, but by different technical means loose coupling

Low traffic density loose coupling

Broad applicability of a service

Otherwise choose layers.

Actual decision a compromise between several criteria.

Page 25: © 2003 IPD, Prof. Lockemann Universität Karlsruhe (TH) BTW03 Information System Architectures: From Art to Science Peter C. Lockemann

© 2003 IPD, Prof. Lockemann

25

BTW03

Applying the criteria

logical data model

data rearrangementquery translation and optimization

internal data model

management of sets of recordsassignment of physical data structs

physical data structures

implementation on pages

segment management

mapping pages to blocksbuffer management

device interface

file management

parameter control

metadata model

metadata management

transaction management

scheduling loggingrecovery

archive management

backuplong-range storage

Qu

ery

engi

ne ?

? ?

OS

Sto

rage

en

gin

e

Page 26: © 2003 IPD, Prof. Lockemann Universität Karlsruhe (TH) BTW03 Information System Architectures: From Art to Science Peter C. Lockemann

© 2003 IPD, Prof. Lockemann

26

BTW03

What if components are already given?

Much more limited design space!

Hypothetical design hypothesis:

1. Assign service qualities to each component.

2. If the component can be influenced, develop it according to the earlier design hypothesis.

3. For each quality shared between adjacent components and arranged in order of priority, increase by technical means the strength of the coupling.

4. Re-evaluate and adjust the adjacent components in the light of the coupling technique.

local optimum!

global optim

um!

Page 27: © 2003 IPD, Prof. Lockemann Universität Karlsruhe (TH) BTW03 Information System Architectures: From Art to Science Peter C. Lockemann

© 2003 IPD, Prof. Lockemann

27

BTW03

Imposed: 4-tier architecture

Application Server

Application Server

. . .

. . .

Middleware

Client Client Client

Database Server

other Servers. . .Resources

WWW Server

WWW Server. . .

Business logic

Presentation

Application

Page 28: © 2003 IPD, Prof. Lockemann Universität Karlsruhe (TH) BTW03 Information System Architectures: From Art to Science Peter C. Lockemann

© 2003 IPD, Prof. Lockemann

28

BTW03

physical layer

data link

network

transport

Unconventional idea:multidimensional architectures

physical layer

data link

network

transport

file management

file management

segment management

segment management

physical data structs.

physical data structs.

internal data model

internal data model

logical data model

logical data model

middlewaremiddleware

client

middlewaremiddleware

phys

ical m

edium

Page 29: © 2003 IPD, Prof. Lockemann Universität Karlsruhe (TH) BTW03 Information System Architectures: From Art to Science Peter C. Lockemann

© 2003 IPD, Prof. Lockemann

29

BTW03

Performance, performance … and data staging

Application Server

Application Server

. . .

. . .

Middleware

Client Client Client

Database Server

other Servers. . .Resources

WWW Server

WWW Server. . .

Business logic

Presentation

Application

Strengthen the coupling for better performance data staging

Page 30: © 2003 IPD, Prof. Lockemann Universität Karlsruhe (TH) BTW03 Information System Architectures: From Art to Science Peter C. Lockemann

© 2003 IPD, Prof. Lockemann

30

BTW03

Data staging = caching

Application Server

MiddlewareClient

Database Server

WWW Server

Cache

Cache

Cache

Separate component: Non-intrusive but high communication overhead

Integration into middleware: middleware

service, lesser communication overhead, general-purpose

into server (which?): intrusive but tailored to the needs

Migration to the edge to middleware: added middleware

service, lesser communication overhead, general-purpose

to server (which?): non-intrusive tailored to the needs, but overhead

Page 31: © 2003 IPD, Prof. Lockemann Universität Karlsruhe (TH) BTW03 Information System Architectures: From Art to Science Peter C. Lockemann

© 2003 IPD, Prof. Lockemann

31

BTW03

What about the other qualities?

Application Server

MiddlewareClient

Database Server

WWW Server

Cache

Cache

Cache

Consistency: Data replication Distributed transactions (weakens autonomy) Cache invalidation/coherency

Robustness: Distributed transactions (weakens autonomy) E-commerce qualities, e.g., non-repudiation,

irrevocability

Privacy/purpose: Chain of firewalls?

More interdependence / less orthogonality between QoS, hence optimum more difficult to find?

More design iterations?

Page 32: © 2003 IPD, Prof. Lockemann Universität Karlsruhe (TH) BTW03 Information System Architectures: From Art to Science Peter C. Lockemann

© 2003 IPD, Prof. Lockemann

32

BTW03

Conclusions

Experienced designers don’t need a design methodology – they do it right by common sense … or do they?

But it might help the novice designer. Services is customer-orientation! Service qualities act as the guiding principle. Choice of priorities determines the result. … and finally: Systematical exploration of the design

space!