Distributed System Theory 1. What is a distributed system? 5 October 2009

Similar documents
Virtual machine interface. Operating system. Physical machine interface

LSKA 2010 Survey Report Job Scheduler

Client/Server Computing Distributed Processing, Client/Server, and Clusters

COMPONENTS in a database environment

Agenda. Distributed System Structures. Why Distributed Systems? Motivation

Load Balancing in Distributed Data Base and Distributed Computing System

COMP5426 Parallel and Distributed Computing. Distributed Systems: Client/Server and Clusters

IOS110. Virtualization 5/27/2014 1

Integrated Application and Data Protection. NEC ExpressCluster White Paper

IBM Global Technology Services March Virtualization for disaster recovery: areas of focus and consideration.

Hard Partitioning and Virtualization with Oracle Virtual Machine. An approach toward cost saving with Oracle Database licenses

Principles and characteristics of distributed systems and environments

Client/Server and Distributed Computing

Contents. Chapter 1. Introduction

WINDOWS AZURE AND WINDOWS HPC SERVER

3 SYSTEM DEVELOPMENT METHODOLOGIES

DISTRIBUTED SYSTEMS AND CLOUD COMPUTING. A Comparative Study

PARALLELS CLOUD STORAGE

The Virtual Digital Forensics Lab: Expanding Law Enforcement Capabilities

VMware Infrastructure 3 Pricing, Packaging and Licensing Overview W H I T E P A P E R

Cluster Computing. ! Fault tolerance. ! Stateless. ! Throughput. ! Stateful. ! Response time. Architectures. Stateless vs. Stateful.

- An Oracle9i RAC Solution

Moving from DBF to SQL Server Pros and Cons

IBM Communications Server for Linux - Network Optimization for On Demand business

IBM Global Technology Services September NAS systems scale out to meet growing storage demand.

Hyper-converged Solutions for ROBO, VDI and Transactional Databases Using Microsoft Hyper-V and DataCore Hyper-converged Virtual SAN

Provisioning Technology for Automation

Manjrasoft Market Oriented Cloud Computing Platform

Chapter 1 - Web Server Management and Cluster Topology

PARALLELS CLOUD STORAGE

Overview and History of Operating Systems

White Paper on NETWORK VIRTUALIZATION

Chapter 2: OS Overview

System Models for Distributed and Cloud Computing

PIONEER RESEARCH & DEVELOPMENT GROUP

Cloud Based Distributed Databases: The Future Ahead

Local Area Networks: Software

SCALABILITY AND AVAILABILITY

IT Components of Interest to Accountants. Importance of IT and Computer Networks to Accountants

Enterprise Automatic Call Distribution

Fax Server Cluster Configuration

Parallels Virtuozzo Containers vs. VMware Virtual Infrastructure:

A Comparative Performance Analysis of Load Balancing Algorithms in Distributed System using Qualitative Parameters

Technology Insight Series

Proactive, Resource-Aware, Tunable Real-time Fault-tolerant Middleware

Cloud Computing. Chapter 1 Introducing Cloud Computing

High Availability and Clustering

Centralized Systems. A Centralized Computer System. Chapter 18: Database System Architectures

Benchmarking Hadoop & HBase on Violin

SAN Conceptual and Design Basics

Big Data Analytics. with EMC Greenplum and Hadoop. Big Data Analytics. Ofir Manor Pre Sales Technical Architect EMC Greenplum

Virtual Machines.

ActivIdentity 4TRESS Soft Token Manager Licensing and Credentials Overview

IBM Tivoli Storage Manager Version Introduction to Data Protection Solutions IBM

Compute Cluster Server Lab 3: Debugging the parallel MPI programs in Microsoft Visual Studio 2005

Chapter 1: Introduction. What is an Operating System?

CHAPTER 2 MODELLING FOR DISTRIBUTED NETWORK SYSTEMS: THE CLIENT- SERVER MODEL

Scalable Windows Storage Server File Serving Clusters Using Melio File System and DFS

Distributed System Principles

Decomposition into Parts. Software Engineering, Lecture 4. Data and Function Cohesion. Allocation of Functions and Data. Component Interfaces

Cloud Storage. Parallels. Performance Benchmark Results. White Paper.

Virtualization s Evolution

Introduction to Virtualization. Paul A. Strassmann George Mason University October 29, 2008, 7:20 to 10:00 PM

Cost Benefits of Server Virtualization

Intro to Virtualization

An Oracle White Paper November Oracle Real Application Clusters One Node: The Always On Single-Instance Database

EMC Virtual Infrastructure for Microsoft SQL Server

Chapter 18: Database System Architectures. Centralized Systems

Understanding Microsoft Storage Spaces

Configuration Management of Massively Scalable Systems

Getting the Most Out of VMware Mirage with Hitachi Unified Storage and Hitachi NAS Platform WHITE PAPER

Informix Dynamic Server May Availability Solutions with Informix Dynamic Server 11

Network Virtualization and Data Center Networks Data Center Virtualization - Basics. Qin Yin Fall Semester 2013

Axapta Object Server MICROSOFT BUSINESS SOLUTIONS AXAPTA

WebLogic Server Foundation Topology, Configuration and Administration

Cellular Computing on a Linux Cluster

ORACLE DATABASE 10G ENTERPRISE EDITION

Milestone Solution Partner IT Infrastructure Components Certification Summary

SwiftStack Global Cluster Deployment Guide

Amoeba Distributed Operating System

PARALLELS CLOUD SERVER

ICS 434 Advanced Database Systems

How To Understand The Concept Of A Distributed System

WHITE PAPER Guide to 50% Faster VMs No Hardware Required

CHAPTER 2 BACKGROUND AND OBJECTIVE OF PRESENT WORK

Q & A From Hitachi Data Systems WebTech Presentation:

Backup Exec 9.1 for Windows Servers. SAN Shared Storage Option

Microsoft s Advantages and Goals for Hyper-V for Server 2016

Load Balancing and Clustering in EPiServer

Transcription:

Distributed System Theory 1. What is a distributed system? 5 October 2009

Definitions A distributed system is a collection of independent computers that appear to the users of the system as a single computer (Tanenbaum, 1994) Aspects: hardware: the machines are autonomous. software: the users think of the system as a single computer

Example 1 the system of a large bank with hundreds of branch offices all over the world Each office has a master computer to store local accounts and handle local transactions each computer has the ability to talk to all other branch computers and with a central computer at headquarters transactions can be done without regard to where a customer or account is the users do not notice any difference between this system and the old centralized mainframe that it replaced

Example 2 a factory full of robots each robot: a powerful computer for handling vision, planning, communication, & other tasks. all robots act like peripheral devices attached to the same central computer a robot on the assembly line notices that a part it is supposed to install is defective, it asks another robot in the parts department to bring it a replacement

Example 3 a network of workstations in a university or company department a pool of processors in the machine room that are not assigned to specific users but are allocated dynamically as needed a single file system with all files accessible from all machines in the same way and using the same path name when a user typed a command, the system could look for the best place to execute that command, possibly on the user's own workstation, an idle workstation belonging to someone else, one of the unassigned processors in the machine room the system as a whole looked and acted like a classical single-processor timesharing system

Modern definition (no general agreement) A distributed system is an information-processing system that contains a number of independent computers that cooperate with one another over a communications network in order to achieve a specific objective. Aspects: Computers are linked to one another over a communications network that enables an exchange of messages between computers. Objective of this message exchange is to achieve a cooperation between computers for the purpose of attaining a common goal.

Views Physical view: computers as nodes of the communications network along with details about the communications network itself Logical view: applications aspects interpreted as a set of cooperating processes logical distribution is independent of the physical one: eg: processes do not necessarily have to be linked over a network but instead can all be found on one computer.

Distributed vs. Parallel

Advantages of Distributed Systems over Centralized Systems (1) Decentralization is a more economic: networked computing systems offer a better price/performance ratio than centralized systems redundancy increases availability when parts of a system fail applications that can easily be run simultaneously also offer ben-efits in terms of faster performance vis-à-vis centralized solutions distributed systems can be extended through the addition of components, thereby provid-ing better scalability compared to centralized systems.

Advantages of Distributed Systems over Centralized Systems (2) Item Economics Speed Inherent distribution Reliability Incremental growth Description Better price/performance rate for networked computers than central. A distributed system may have more total computing power than one Some applications involve spatially separated machines If one machine crashes, the system as a whole can still survive Computing power can be added in small increments

Advantages of Distributed Systems over Independent PCs Item Description Data sharing Allow many users access to a common data base Device sharing Allow many users to share expensive devices Communication Make human-to-human communication easier Flexibility Spread the workload over available machines in the most cost effective way

Advantages of Distributed Computing Environment over Standalone Application 1. Higher performance: Applications can execute in parallel and distribute the load across multiple servers. 2. Collaboration: Multiple applications can be connected through standard distributed computing mechanisms. 3. Higher reliability & availability: Applications or servers can be clustered in multiple machines. 4. Scalability: By deploying reusable distributed components on powerful servers. 5. Extensibility: Dynamic (re)configuration of applications distributed across network. 6. Higher productivity & lower development cycle time: Breaking up large problems into smaller ones, these individual components can be developed by smaller development teams in isolation. 7. Reuse. Services that can potentially be used by multiple client applications. 8. Reduced cost. Due to the reuse of once developed components that are accessible over the network

Disadvantages of Distributed Systems Item Description Software Complexity of programming distributed systems Networking The network can saturate or cause other problems Security Easy access also applies to secret data