Distributed Systems: The Overall Architecture Lecture 12
Dec 30, 2015
Distributed Systems: The Overall Architecture
Lecture 12
Contents
This lecture / chapter
Describes seven types of distributed systems
Defines the overall IT architecture and
Discusses the importance of IT infrastructure
Contents
Case examples include Northwest Airlines, an aerospace company, Chubb & Son Insurance Company, The SABRE Group, 3i, General Motors, FMC Corporation, Credit Suisse and the City of Sunnyvale
Today’s Lecture
Introduction
Four Attributes of Distributed Systems
When to Distribute Computing Responsibilities
Two Guiding Frameworks
Today’s Lecture cont.
Seven Types of Distributed Systems
Host-Based Hierarchy
Decentralized Stand-Alone Systems
Peer-to-Peer LAN-Based Systems
Today’s Lecture cont.
Seven Types of Distributed Systems
Hybrid Enterprise wide Systems
Client-Server Systems
Internet-Based Computing
Web Services
Today’s Lecture cont.
Defining The Overall IT Architecture
An Enterprise Architecture Framework
The ‘Coming Architecture’: Service-Oriented Architecture
The Importance of the IT Infrastructure
The Structure of the IT Infrastructure
Three Views of Infrastructure
Introduction - Definitions
An IT architecture is a blueprint. A blueprint shows how a system, house, vehicle, or product will look and how the parts interrelate
Lately = rather than talk about hardware, software, data, communications etc. as the components of computing, some people now refer only to applications and infrastructure
Introduction – Definitions Cont..
An IT infrastructure is the implementation of an architecture. The IT infrastructure includes the processors, software, databases, electronic links, and data centers as well as the standards that ensure the components work together, the skills for managing the operation etc.
Introduction – The Evolution of Distributed Systems
First IT architecture = mainframes (batch processing) with dumb terminals (no processing capabilities)
With minicomputers = moved into departments but the ‘master-slave’ computing model persisted. Processing was mainly centralized
Introduction – The Evolution of Distributed Systems Cont..
Microcomputer = model changed significantly because processing power moved first onto desktops, then into briefcases and now into pockets
Now = ‘interesting twist’: Power returning to a type of centralized processing with networks of servers and the Internet Information appliances and diskless computers (‘thin
clients’) make requests More important in the future as Web Services
continues to develop
Four Attributes of Distributed Systems
Degree to which a system is distributed can be determined by answering four questions:
1. Where is the processing done?
2. How are the processors and other devices interconnected?
3. Where is the information stored?
4. What rules or standards are used?
Attributes of Distributed Systems:1. Where is the processing done?
Distributed processing is the ability for more than one interconnected processor to be operating at the same time, typically for processing an application on more than one computer at a time
Goal: move the appropriate processing as close to the user as possible and to let other machines handle the work they do best
1. Where is the processing done? Cont…
Permits interoperability-capability of different computers using different O.S. on different networks to work together on tasks Two forms of interoperability (capability for different machines to work together on tasks):
– communication between systems– two-way flow between user applications
Connectivity among processors means that each processor in a distributed system can send data and messages to any other processor through electronic communication links.
Desirable to have at least two independent paths between two nodes to provide automatic alternate routing (Planned Redundancy)
Attributes of Distributed Systems: 2. How are the processors and other
devices interconnected?
Distributed databases either: Divide a database and distribute its portions
throughout a system without duplicating the data Users do not need to know where a piece of
data is located to access it, because the system knows where all the data is stored
Store the same data at several different locations, with one site containing the master file
Issue: synchronization of data is a significant problem
Attributes of Distributed Systems: 3. Where is the information stored?
System wide rules mean that an operating discipline for the distributed system has been developed and is enforced at all times
These rules govern communication between nodes, security, data accessibility, program and file transfers, and common operating procedures
Attributes of Distributed Systems:4. What rules or standards are used?
4. What rules or standards are used? Cont..
Since the 1990s = “Open systems” concept-mix products from vendors using open standards. Based on “open-systems” - standardized interfaces that allow products to inter-operate across multi-vendor networks, operating systems and databases
Now = also API’s - Application Program Interfaces: define the way to present data to another system component. Makes writing distributed systems much easier
When to Distribute Computing Responsibilities
IS management needs a corporate policy for deciding when the development, operation and maintenance of an application should be distributed
Individual end users and departments should not be left on their own to make such decisions, especially where enterprise connectivity is important
When to Distribute Computing Responsibilities cont.
Systems responsibilities can be distributed unless the
following are true:
1. Are the operations interdependent? When it is important that one operation knows what
other is doing; their planning, development, resources, and operations must be centralized
When to Distribute Computing Responsibilities cont.
2. Are the businesses really homogenous?
If they have a lot in common; e.g., IT needs for a fast-food franchise: processing may be distributed, but planning and hardware selection should be centralized
3. Does the corporate culture support decentralization?
Even if the business units do quite different things and don’t need to know what each other is doing, corporate culture (management control?) might still centralize finance, HR, and systems planning
Two Guiding Frameworks 1. An Organizational Framework
A driving force behind distributed processing is to give people more control over their work. This autonomy can happen at any of seven levels:
1. Business ecosystem or value chain (inter-enterprise)
2. Enterprise
3. Country or region
Two Guiding Frameworks 1. An Organizational Framework
Cont..
4. Site (plants, warehouses, branch offices)
5. Department or process
6. Work group or team
7. Individuals
Two Guiding Frameworks for DS: 1. An Organizational Framework Cont..
Locate processing power and DB at each level in the organization
Top level deals with organizations that work closely together as buyer-seller, partner etc.
Two Guiding Frameworks for DS: 1. An Organizational Framework Cont..
Next three levels (Enterprise, Region and Site) are traditional domain of IS, where computers resided in the past.
Bottom three levels (Department, Team and Individual) are where the bulk of employees are.
Intent: give autonomy and decision-making power to better serve customers.
Migration of computer power to end users will be driving force for network-based IS. SUMURU - single user, multiple user, remote utility.
1. Processors:
• SU: single user, stand-alone and connected to LNs; clients.
• RU: remote utility, heavy-duty computing, corporate
DB management, corporation mainframes and value-added network services
Two Guiding Frameworks for DS: 2. A Technical Framework
• MU: multiple user, serve local groups of users; server. Also heavy duty computation for SUs, backups for MUs, program libraries for SUs, and database management.
Two Guiding Frameworks for DS: 2. A Technical Framework Cont..
2. Networks:
LN: local networks, high-speed information transfer, LAN
RN: remote networks, lower transfer speeds, WAN, MAN, Internet
Two Guiding Frameworks for DS: 2. Technical cont.
3. Services that this network architecture provides:
Access
file transfer
Two Guiding Frameworks for DS:Technical cont.
4. Standards needed in three areas:
OS
communication protocols: TCP/IP
DBMS: SQL
Two Guiding Frameworks for DS:Technical cont.
Seven Types of Distributed Systems:1. Host-Based Hierarchy
See Figure 5-4
A central, controlling mainframe at the top.
PCs at the bottom, minicomputers in between.
Master/slave
Seven Types of Distributed Systems:1. Host-Based Hierarchy Cont..
First data processing distributed system. Host computer central, controlling component; terminals are access systems
Where is the data stored?:
Could be at any level
Types of Distributed Systems: 2. Decentralized Stand-Alone Systems
See Figure 5-5
Decentralized but does not really form a distributed system.
‘Holdover’ from the past where departments put in their own minicomputers with no intention of connecting them to the corporate host or to other departmental systems
Still a valid method for some companies
Types of Distributed Systems: 2. Decentralized Stand-Alone Systems
Cont..
Many such “islands of computing”:
Little data flow amongst, except upward to corporate systems
A major goal in introducing ERP systems was to replace such disparate systems – in finance, manufacturing, administration – with a single platform of inter-connectable modules to serve these various functions
See Figure 5-6
No hierarchy
“Peer-to-peer” communications
Types of Distributed Systems:3. Peer-to-Peer LAN-Based Systems
Types of Distributed Systems:3. Peer-to-Peer LAN-Based Systems
Cont..
Interconnecting LANs rather than hierarchical communications through a central hub.
No “superior” computer
See Figure 5-7
Combination hierarchy (mainframe-based, favored for corporate computing) and LAN-based (favored by departments).
Connected via WANs etc. The structure of choice for many years
Types of Distributed Systems: 4. Hybrid Enterprise wide Systems
Types of Distributed Systems: 4. Hybrid Enterprise wide Systems Cont..
Allows company to link “automation islands” and retain IT investments, begin to automate business processes (cooperative processing)
Such cooperating processes allow companies to take advantage of specialized computer programs, while at the same time extending the usefulness of some legacy systems.
– The process of pulling together such individual applications or components is called systems integration
• Northwest Airlines built a distributed passenger revenue accounting system with products from eleven vendors and just about as many different technologies:
– Expert systems
– Imaging
– Relational databases
NORTHWEST AIRLINES
Case example: Hybrid Enterprise wide Systems and Systems Integration
– High-resolution workstations
– Servers, and
– LANs
NORTHWEST AIRLINES
Case example: Hybrid Enterprise wide Systems and Systems Integration
Cont..
• Purpose: improve revenue estimate accuracy by ‘auditing’ all the redeemed tickets (few airlines did this).
• Developed with Accenture (Andersen Consulting) BIG $$$.
NORTHWEST AIRLINES
Case example: Hybrid Enterprise wide Systems and Systems Integration cont.
• The system integrates products from 11 vendors.
– Uses a cooperative processing architecture and
– Integrates expert systems, image processing,
relational databases, high resolution UNIX workstations, servers, and LANs.
NORTHWEST AIRLINES
Case example: Hybrid Enterprise wide Systems and Systems Integration cont.
• The Distributed Architecture
– Mainframe, WANs, LANs etc.
– Data communication = integral
– Image processing
• Revenue Accounting Process
NORTHWEST AIRLINES
Case example: Hybrid Enterprise wide Systems and Systems Integration cont.
Lessons learned:• Benchmark and prototype new technologies to verify
vendors’ claims.
• An open architecture works on mission-critical applications.
NORTHWEST AIRLINES
Case example: Hybrid Enterprise wide Systems and Systems Integration cont.
• Large distributed system projects need a vendor coordinator.
• Use of CASE was mandatory
Huge system (65,000 workdays) which became a ‘model’ for airlines
NORTHWEST AIRLINES
Case example: Hybrid Enterprise wide Systems and Systems Integration cont.
The ’90s version of distributed systems.
Arose to take advantage of the processing capabilities of both host machines and PCs in the same system.
Splits the computing workload between the client, which is a computer used by the user and can sit on the desktop or be carried around (e.g. WAP mobile phone), and the server, which answers the request.
Types of Distributed Systems:5. Client-Server Systems
Figure 5-8 shows the possibilities for splitting work between clients and servers. Three components being split are:
Presentation software: what user sees (P)
Application software (A)
Data (D)
Types of Distributed Systems:5. Client-Server Systems cont.
Distributed presentation
Remote presentation
Distributed application function
Remote data management
Distributed database(s)
Types of Distributed Systems:5. Client-Server Systems cont..
Another way to look at it = to view their architecture
Preferred: three-tier architecture (see Fig.5-9):
Tier 3: the super server/mainframe. Allows inclusion of legacy applications, short-lived and fast-changing data, and integrity rules
Types of Distributed Systems:5. Client-Server Systems cont.
Tier 2: specialized servers, dedicated to housing databases or middleware-software to ease connection between client and server. Also, department-specific data that does not change often.
Tier 1: clients (some of which could be portable) connected through network
Types of Distributed Systems:5. Client-Server Systems cont.
Summary
Four Attributes of Distributed Systems
When to Distribute Computing Responsibilities
Two Guiding Frameworks
Seven Types of Distributed Systems
Host-Based Hierarchy
Summary…
Seven Types of Distributed Systems
Hybrid Enterprise wide Systems
Client-Server Systems
Internet-Based Computing
Web Services
Summary…
The Overall IT Architecture
An Enterprise Architecture Framework The ‘Coming Architecture’: Service-Oriented
Architecture