1 / 18

Introduction

Introduction. Readings. Coulouris, Dollimore and Kindberg Distributed Systems: Concepts and Design Edn. 3 Note: All figures from this book . Who Can Take This Class?. Anyone with some interest in distributed systems and data management Pre-requisite:

Download Presentation

Introduction

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Introduction

  2. Readings • Coulouris, Dollimore and Kindberg Distributed Systems: Concepts and Design Edn. 3 • Note: All figures from this book

  3. Who Can Take This Class? • Anyone with some interest in distributed systems and data management • Pre-requisite: • Undergraduate OS (or undergraduate networking course) • This course does have programming and you may have to be willing to learn new technologies

  4. Course Structure • Lectures • Papers will be assigned to you to review • You are expected to participate in class • Three assignments • Programming • Group work • Survey paper and presentation

  5. Course Readings • No official textbook • Lectures are based on (mostly) research papers • UWO has on-line subscriptions to many of the conferences and journals that the papers are found in

  6. intranet % % ISP % % backbone satellite link desktop computer: server: network link: A typical portion of the Internet

  7. A Typical Intranet

  8. Portable and Handheld Devices in a Distributed system

  9. Services and the Internet • Increasingly we are seeing more of our applications moving from the PC to the Internet e.g., • Email – gmail, yahoo • Photo management – Picasso, Kodak, Shutterbug • Word processing – Google apps • Why? • Less work on the user’s behalf • Maybe the potential for less cost for the user

  10. Data Centers • To support this move from the PC to the “Internet” requires a large number of servers, storage, network support etc; • Companies like Amazon, Google, eBay are running data centers with tens of thousands of machines • To make users trust these systems requires that a number of issues be addressed e.g., failure handling

  11. Reasons • Share data and information despite geography • Examples: • Internet: Wikipedia, email, web sites • Intranet: Networked file systems • Availability • Hardware can fail: power outage, disk failures, memory corruption • Software can fail: bugs, mis-configuration, • To achieve high availability requires replications of data/computation with automatic failovers • Aggregate resources of many computers • CPU: Dryad, MapReduce • Bandwidth: Akamai CDN, BitTorrent

  12. Challenges • Consistency • Sharing data consistently among multiple readers/writers • Fault tolerance • Keeping system available despite node or network failures • Security • Authenticating clients or servers • Defending against or audit misbehaving servers

  13. Challenges • System design • Right interface or abstraction? • Implementation • Maximize concurrency • Identify bottlenecks • Reduce load on the bottleneck resource

  14. Case Study: Distributed File System • A distributed file system provides shared access for multiple clients to a shared storage transparently. • NFS is one of the earliest examples • NFS Design • A file server stores all data and handles requests from clients

  15. Case Study • Consistency • When a client edits a shared file when do other clients see the results? • Fault Tolerance • How to keep the system running when the file server is down? • Replicate data at multiple servers • How to update replicated data? • How to fail-over among replicas • How to maintain consistency?

  16. Case Study • Security • Adversary can manipulate messages • How to authenticate? • Adversary may compromise machines • Can the FS remain correct despite a few compromised nodes • Implementation • The file server should serve multiple clients concurrently • Server threads need to modify shared state • Avoid race conditions

  17. Other Examples • It’s not just file servers • What about companies like Amazon? Facebook? Google?

  18. Summary • We briefly discussed a high-level view of data distributed • In this course we will discuss various architectures and algorithms and how they are used by major companies like Amazon, Google, etc;

More Related