1 Scalability Terminology: Farms, Clones, Partitions, and Packs: RACS and RAPS Bill Devlin, Jim Cray, Bill Laing, George Spix Microsoft Research Dec. 1999.

Slides:



Advertisements
Similar presentations
Distributed Processing, Client/Server and Clusters
Advertisements

Database Architectures and the Web
WSUS Presented by: Nada Abdullah Ahmed.
Introduction to DBA.
Serverless Network File Systems. Network File Systems Allow sharing among independent file systems in a transparent manner Mounting a remote directory.
Chapter 5: Server Hardware and Availability. Hardware Reliability and LAN The more reliable a component, the more expensive it is. Server hardware is.
REDUNDANT ARRAY OF INEXPENSIVE DISCS RAID. What is RAID ? RAID is an acronym for Redundant Array of Independent Drives (or Disks), also known as Redundant.
1 Storage Today Victor Hatridge – CIO Nashville Electric Service (615)
NETWORK LOAD BALANCING NLB.  Network Load Balancing (NLB) is a Clustering Technology.  Windows Based. (windows server).  To scale performance, Network.
June 23rd, 2009Inflectra Proprietary InformationPage: 1 SpiraTest/Plan/Team Deployment Considerations How to deploy for high-availability and strategies.
Objektorienteret Middleware Presentation 2: Distributed Systems – A brush up, and relations to Middleware, Heterogeneity & Transparency.
Distributed Processing, Client/Server, and Clusters
1 © Copyright 2010 EMC Corporation. All rights reserved. EMC RecoverPoint/Cluster Enabler for Microsoft Failover Cluster.
Business Continuity and DR, A Practical Implementation Mich Talebzadeh, Consultant, Deutsche Bank
Technical Architectures
Web Caching Schemes1 A Survey of Web Caching Schemes for the Internet Jia Wang.
City University London
12 Chapter 12 Client/Server Systems Hachim Haddouti.
Chapter 12 Distributed Database Management Systems
McGraw-Hill/Irwin Copyright © 2007 by The McGraw-Hill Companies, Inc. All rights reserved. Chapter 17 Client-Server Processing, Parallel Database Processing,
ArcGIS for Server Reference Implementations An ArcGIS Server’s architecture tour.
Lesson 1: Configuring Network Load Balancing
1© Copyright 2011 EMC Corporation. All rights reserved. EMC RECOVERPOINT/ CLUSTER ENABLER FOR MICROSOFT FAILOVER CLUSTER.
Virtual Network Servers. What is a Server? 1. A software application that provides a specific one or more services to other computers  Example: Apache.
National Manager Database Services
11 SERVER CLUSTERING Chapter 6. Chapter 6: SERVER CLUSTERING2 OVERVIEW  List the types of server clusters.  Determine which type of cluster to use for.
Microsoft Load Balancing and Clustering. Outline Introduction Load balancing Clustering.
PETAL: DISTRIBUTED VIRTUAL DISKS E. K. Lee C. A. Thekkath DEC SRC.
Hands-On Microsoft Windows Server 2008 Chapter 1 Introduction to Windows Server 2008.
SANPoint Foundation Suite HA Robert Soderbery Sr. Director, Product Management VERITAS Software Corporation.
Server Load Balancing. Introduction Why is load balancing of servers needed? If there is only one web server responding to all the incoming HTTP requests.
PMIT-6102 Advanced Database Systems
Chapter 10 : Designing a SQL Server 2005 Solution for High Availability MCITP Administrator: Microsoft SQL Server 2005 Database Server Infrastructure Design.
Database Services for Physics at CERN with Oracle 10g RAC HEPiX - April 4th 2006, Rome Luca Canali, CERN.
Technology Overview. Agenda What’s New and Better in Windows Server 2003? Why Upgrade to Windows Server 2003 ?  From Windows NT 4.0  From Windows 2000.
Module 12: Designing High Availability in Windows Server ® 2008.
Windows 2000 Advanced Server and Clustering Prepared by: Tetsu Nagayama Russ Smith Dale Pena.
Scalability Terminology: Farms, Clones, Partitions, and Packs: RACS and RAPS Bill Devlin, Jim Cray, Bill Laing, George Spix Microsoft Research Dec
INSTALLING MICROSOFT EXCHANGE SERVER 2003 CLUSTERS AND FRONT-END AND BACK ‑ END SERVERS Chapter 4.
CA ARCserve and CA XOsoft Simplified Pricing Program October 2007.
Chapter 8 Implementing Disaster Recovery and High Availability Hands-On Virtual Computing.
Virtualization for Storage Efficiency and Centralized Management Genevieve Sullivan Hewlett-Packard
Csi315csi315 Client/Server Models. Client/Server Environment LAN or WAN Server Data Berson, Fig 1.4, p.8 clients network.
Unit – I CLIENT / SERVER ARCHITECTURE. Unit Structure  Evolution of Client/Server Architecture  Client/Server Model  Characteristics of Client/Server.
Session-8 Data Management for Decision Support
Mark A. Magumba Storage Management. What is storage An electronic place where computer may store data and instructions for retrieval The objective of.
Module 10: Maintaining High-Availability. Overview Introduction to Availability Increasing Availability Using Failover Clustering Standby Servers and.
Module 13 Implementing Business Continuity. Module Overview Protecting and Recovering Content Working with Backup and Restore for Disaster Recovery Implementing.
"1"1 Introduction to Managing Data " Describe problems associated with managing large numbers of disks " List requirements for easily managing large amounts.
11 CLUSTERING AND AVAILABILITY Chapter 11. Chapter 11: CLUSTERING AND AVAILABILITY2 OVERVIEW  Describe the clustering capabilities of Microsoft Windows.
70-293: MCSE Guide to Planning a Microsoft Windows Server 2003 Network, Enhanced Chapter 12: Planning and Implementing Server Availability and Scalability.
70-412: Configuring Advanced Windows Server 2012 services
CHAPTER 7 CLUSTERING SERVERS. CLUSTERING TYPES There are 2 types of clustering ; Server clusters Network Load Balancing (NLB) The difference between the.
CERN - IT Department CH-1211 Genève 23 Switzerland t High Availability Databases based on Oracle 10g RAC on Linux WLCG Tier2 Tutorials, CERN,
Microsoft Windows Server 2012 R2. What’s NEW in Windows Server 2012 R2.
Features Scalability Manage Services Deliver Features Faster Create Business Value Availability Latency Lifecycle Data Integrity Portability.
1 CEG 2400 Fall 2012 Network Servers. 2 Network Servers Critical Network servers – Contain redundant components Power supplies Fans Memory CPU Hard Drives.
Hands-On Microsoft Windows Server 2008 Chapter 7 Configuring and Managing Data Storage.
An Introduction to Local Area Networks An Overview of Peer-to-Peer and Server-Based Models.
SysPlex -What’s the problem Problems are growing faster than uni-processor….1980’s Leads to SMP and loosely coupled Even faster than SMP and loosely coupled.
70-293: MCSE Guide to Planning a Microsoft Windows Server 2003 Network, Enhanced Chapter 12: Planning and Implementing Server Availability and Scalability.
N-Tier Architecture.
Maximum Availability Architecture Enterprise Technology Centre.
A Technical Overview of Microsoft® SQL Server™ 2005 High Availability Beta 2 Matthew Stephen IT Pro Evangelist (SQL Server)
Storage Virtualization
Introduction to Cloud Computing
SpiraTest/Plan/Team Deployment Considerations
Fault Tolerance Distributed Web-based Systems
Distributed Systems Bina Ramamurthy 4/7/2019 B.Ramamurthy.
Presentation transcript:

1 Scalability Terminology: Farms, Clones, Partitions, and Packs: RACS and RAPS Bill Devlin, Jim Cray, Bill Laing, George Spix Microsoft Research Dec Based on presentation by Hongwei Zhang, Ohio State

2 Outline Introduction Basic scalability terminology / techniques Software requirements for these scalable systems Cost/performance metrics to consider Summary

3 Why need to Scale ? Server systems must be able to start small –Small-size company (garage-scale) v.s. international company (kingdom-scale) System should be able to grow as demand grows e.g. –eCommerce made system growth more rapid & dynamic –ASP also need dynamic growth

4 How to scale? Scale up - expanding a system by incrementally adding more devices to an existing node – CPUs, discs, NICS, etc. –inherently limited Scale Out – expanding the system by adding more nodes – convenient (computing capacity can be purchased incrementally), no theoretical scalability limit –slogans: Buy computing by the slice Build systems from CyberBricks –slice, cyberbricks: fundamental building blocks for a scalable system

5 Basic terminology associated with scale-out Ways to organize massive computation –Farm –Geoplex Ways to scale a farm –Clone (RACS) –Partition (RAPS) Pack

6 Farm/Geoplex Farm - the collection of servers, applications and data at a particular site –features: functionally specialized services ( , WWW, directory, database, etc.) administered as a unit (common staff, management policies, facilities, networking) Geoplex – a replicated (duplicated?) farm at two or more sites –disaster protection –may be active-active: all farms carry some of the load; active-passive: one or more are hot-standbys (waiting for fail-over of corresponding active farms)

7

8 Clone A replica of a server or a service Allows load balancing External to the clones - IP sprayer like Cisco LocalDirectorTM LocalDirectorTM dispatches (sprays) requests to different nodes in the clone to achieve load-balancing Internal to the clones - IP sieve like Network Load Balancing in Windows 2000 Every requests arrive at every node in the clone, but each node intelligently accepts a part of these requests; Distributed coordination among nodes

9 RACS DFN: –The collection of clones for a particular service is is called a RACS (Reliable Array of Cloned Services). Two types of RACS (Fig. 2) –Shared-nothing RACS Each node duplicate all the storage locally –Shared-disk RACS (also called a cluster) All the nodes (clones) share a common storage manager. Stateless servers at different nodes access a common backend storage server

10

11 Advantages of cloning and RACS –Offer both scalability and availability Scalability: excellent ways to add processing power, network bandwidth, and storage bandwidth to a farm; Nodes can act as backup for one another: one node fail, other nodes continue to offer service (probably with degraded performance) Failures could be masked, if node- and application-failure detection mechanisms are integrated with the load- balancing system or with client applications –Easy to manage Administrative operations on one service instance at one node could be replicated to all others. RACS (contd.)

12 Challenges –Shared-nothing RACS not a good way to grow storage capacity: updates at one node’s must be applied to all other nodes’ storage problematic for write-intensive services: all clones must perform all writes (no throughput improvement) and need subtle coordination –Shared-disk RACS could ameliorate (to some extent) this cost and complexity of cloned storage; –Shared-disk RACS Storage server should be fault-tolerant for availability (only one copy of data) Still require subtle algorithms to manage updates (such as cache validation, lock managers, transaction logs, etc.) RACS (contd.)

13 Partition DFN: –To grow a service by duplicating the hardware and software but dividing the data among the nodes (Fig. 3). Features –Only the software is cloned, data is divided among the nodes (unlike shared-nothing clone) –Transparent to applications –Simple partitioning has only one copy of data, thus not improving availability: Geoplex to guard against loss of storage More common: locally duplex (raid 1) or parity protect (raid 5) the storage

14

15 Example –Typically, the application middleware partitions the data and workload by object: Mail servers partition by mailboxes Sales systems partition by customer accounts or product lines Challenge –When a partition (node) is added, the data should be automatically repartitioned among the nodes to balance the storage and computational load. –The partitioning should automatically adapt as new data is added and as the load changes. Partition (contd.)

16 Pack Purpose –To deal with hardware/software failure at a partition DFN: –Each partition is implemented as a pack of two or more nodes that provide access to the storage (Fig. 3).

17 Two types of Pack –Shared-disk pack All members of the pack may access all the disks in the pack; Similar to shared-disk clone, except that the pack is serving just one part of the total database. –Shared-nothing pack Each member of the pack may serve just one partition of the disk pool during normal conditions, but serve a failed partition if the partition’s primary server fails; Pack (contd.)

18 –Two modes: Active-active pack: –each member of the pack can have primary responsibility for one or more partitions; –When a node in the pack fails, the service of its partition migrates to another node of the pack. Active-passive pack: –Just one node of the pack is actively serving requests while the other nodes are acting as hot- standbys Shared-nothing Pack (contd.)

19 RAPS DFN: –The collection of nodes that support a packed-partitioned service are called a RAPS (Reliable Array of Partitioned Services). Advantage –Provides both scalability and availability; –Better performance than RACS for write-intensive services.

20 Brief Summary of Scalability Design

21 Summary (contd.) Clones and RACS –For read-mostly applications with low consistency and modest storage requirements (<= 100 GB) Web/file/security/directory servers Partitions and RAPS –For update-intensive and large database applications (routing requests to specific partitions) /instant messaging/ERP/record keeping

22 Example Multi-tier applications (Functional separation) –front-tier: Web and firewall services (read mostly) –middle-tier: File servers (read mostly) –data-tier: SQL servers (update intensive)

23

24 Example (contd.) Load balancing and routing at each tier –Front-tier IP-level load distribution scheme –Middle-tier Data and process specific load steering, according to request semantics –Data-tier Routing to the correct partition

25 Software Requirements for Geoplex, Farms, RACS and RAPS wish list (more of a wish list than a reflection of current tools and capabilities) Be able to manage everything from a single remote console, treating RACS and RAPS as entities –Automated operation software to deal with “normal events” (summarizing, auditing, etc.) and to help the operator manage exceptional events (detects failures and orchestrates repair, etc.): reduce operator error (thus, enhancing site availability)

26 Software requirements (contd.) Both the software and hardware components must allow online maintenance and replacement –Tools to support versioned software deployment and staging across a site Good tools to design user interfaces, services, and databases Good tools to configure and then load balance the system as it evolves

27 RACS –Automatic replication of software and data to new nodes –Automatic request routing to load balance the work and to route around failures –Recognize repaired and new nodes RAPS –Automatic routing requests to nodes dedicated to serving a partition of data (affinity routing) –Middleware to provide transparent partitioning and load- balancing (a application-level service) –Similar manageability features of cloned system (for Pack) Software requirements (contd.)

28 Price/Performance Metrics Why need cloning/partitioning ? –One cannot buy a single 60 billion-instructions per second processor or a single 100TB server –So, at least some degree of cloning and partitioning is required What is the right building block for a site?

29 Right building block Mainframe vendors –Mainframe is the right choice! Their hardware and software offer high availability Easier to manage their systems than to manage coned PCs –But, mainframe prices are fairly high ! 3x to 10x more expensive

30 Commodity servers and storage –Less costly to use inexpensive clones for those CPU intensive services, such as web service. –Commodity software is easier to manage than the traditional services that require skilled operators and administrators Consensus –Much easier to manage homogeneous sites (all NT, all FreeBSD, etc.) than to manage heterogeneous sites Stats: middleware (such as Netscape, IIS, Notes, Exchange) are where the administrators spend most of their time Right building block (contd.)

31 Summary Scalability technique –Replicate a service at many nodes Simpler forms of replication –Duplicate both programs and data: RACS For large databases or update-intensive services –Data partitioned: RAPS –Packs make partitions highly available Against disaster –The entire farm is replicated to form a geoplex