Вы находитесь на странице: 1из 19

Shared Nothing Architectures

By James Cutts and Andrew Munro


14/07/2013

Introduction
Concepts of shared nothing architectures Comparison to N-Tier Architectures Common patterns
Mapreduce Database sharding

Prerequisites Conclusions 2
Shared Nothing Architectures J. Cutts & A. Munro 14/07/2013 A

CONCEPTS OF SHARED NOTHING ARCHITECTURES


3
Shared Nothing Architectures J. Cutts & A. Munro 14/07/2013 A

What are Shared Nothing Architectures


Servers operate independently
Perform all tasks Called nodes

Do not share resources


Database servers etc.

Requests are load balanced


Appropriate node Node with highest capacity

4
A Shared Nothing Architectures J. Cutts & A. Munro 14/07/2013

How does this work?


Each node contains all required functions Requests are balanced between nodes Nodes are easily duplicated
Shared Nothing Architectures J. Cutts & A. Munro
Node 1

Web server Database server

Load Balancing

Node 2

Node 3

5
14/07/2013

Typical N-Tier Architecture


Request/Response User Submits Request / Receives Response Request/ Response Load Balancing Read/Write Request Request/Response Read/Write Request

Data Processing

Web Servers

Application Servers

Database Servers

6
Shared Nothing Architectures J. Cutts & A. Munro 14/07/2013

Why Use Shared Nothing


Shared Nothing
Infinitely Scalable Easy to create high availability Low bandwidth use Large distances between locations Handle massive demand
Shared Nothing Architectures J. Cutts & A. Munro

N-Tier
Data integrity Simple Implementation Smaller Scale Lower Initial costs 7
14/07/2013

When to use Shared Nothing


Large Demand
billions of users/visits 1 billion searches a day

Scalability is a concern
When will growth stop?

Massive amounts of data


index covers billions of webpages Data warehousing
Shared Nothing Architectures J. Cutts & A. Munro

8
14/07/2013

DESIGNING SHARED NOTHING ARCHITECTURES


9
Shared Nothing Architectures J. Cutts & A. Munro 14/07/2013

Single Server Nodes


Information Stays within server Highly Responsive Infinitely Scalable Google's approach
Ten of thousands of low cost servers $700 each
Shared Nothing Architectures J. Cutts & A. Munro
Node 1

Load Balancing

Node 2

Node 3

10
14/07/2013

Hybrid Shared Nothing Architecture


Request/Response User Submits Request / Receives Response Request/ Response Load Balancing Data Processing Read/ Write Request

Push/ Update Master

Request/Response

Web Servers

Application Servers

Database Servers

Master Database

11
Shared Nothing Architectures J. Cutts & A. Munro 14/07/2013 A

COMMON PATTERNS
12
Shared Nothing Architectures J. Cutts & A. Munro 14/07/2013 A

Map Reduce
Breaks a problem down into sections and sends each section toa different machine Sections are solved and the solution is sent back and reassembled. Allows a problem to be solved in parallel across multiple amchines, thus improving response time. 13
Shared Nothing Architectures J. Cutts & A. Munro 14/07/2013 A

Database Sharding
Split database into partitions. Each machine has one shard Enables database partitioning across multiple machines

Increase a systems performance Storing rows rather than columns


Technique used by google
Shared Nothing Architectures J. Cutts & A. Munro

14
14/07/2013 A

PREREQUISITES
of Shared Nothing Architectures
15
Shared Nothing Architectures J. Cutts & A. Munro 14/07/2013 A

Prerequisites
Large quantities of low cost computing power Reliant on server rather than network security
Harder to implement DMZ and firewalls

High bandwidth LAN Well designed Data Architecture Load Balancing


Taking into account load on nodes Database information on nodes
Shared Nothing Architectures J. Cutts & A. Munro

16
14/07/2013 A

Conclusions
Suited to expanding architectures and demand When redundancy is needed Low cost scalability Lower Database integrity More difficult load balancing Suited to larger networks 17
Shared Nothing Architectures J. Cutts & A. Munro 14/07/2013

Further Reading
Various Authors: How to Build a High-Performance Data Warehouse http://db.csail.mit.edu/madden/high_perf.pdf Document that covers creating data warehouses with a focus of high performance, recommending shared nothing as the most appropriate architecture and also giving a brief summary of what a shared nothing architecture consists of. The document also covers the type of hardware that is generally used in such as system, particularly mentioning the techniques used by Google and other large data providers. M Stonebraker: The Case for Shared Nothing, 1986 An interesting document on shared nothing architectures in general that covers the advantages of shared nothing and the disadvantages a system using the pattern. Predating the modern web it provides a useful insight in to concept without the distraction of a web based environment. It is also one of the first documents to use the term shared nothing. CodeFutures: The Rise of Database Sharding http://www.codefutures.com/database-sharding/ Further reading on database sharding. Mike Hogan: Shared-Disk vs. Shared-Nothing https://docs.google.com/viewer?url=http://www.scaledb.com/pdfs/WP_SDvSN.pdf&pli=1 Further reading for comparing shared nothing and shared disk architectures. http://it.toolbox.com/wiki/index.php/Shared_Nothing_Architecture Aleksandr Tsertkov: Scalable Web Architecture , 2010 http://www.slideshare.net/s6urik/scalable-web-architecture-2950852 Interesting presentation into creating scalable web architecture using a shared noting approach and amazon web services.

18

Shared Nothing Architectures J. Cutts & A. Munro

14/07/2013

Any Questions?
19
Shared Nothing Architectures J. Cutts & A. Munro 14/07/2013

Вам также может понравиться