Distributed Cluster Repair for OceanStore Irena Nadjakova and Arindam Chakrabarti Acknowledgements: Hakim Weatherspoon John Kubiatowicz.

Slides:



Advertisements
Similar presentations
Background Virtual memory – separation of user logical memory from physical memory. Only part of the program needs to be in memory for execution. Logical.
Advertisements

CS3771 Today: deadlock detection and election algorithms  Previous class Event ordering in distributed systems Various approaches for Mutual Exclusion.
Imbalanced data David Kauchak CS 451 – Fall 2013.
1 Greedy Forwarding in Dynamic Scale-Free Networks Embedded in Hyperbolic Metric Spaces Dmitri Krioukov CAIDA/UCSD Joint work with F. Papadopoulos, M.
1 Accessing nearby copies of replicated objects Greg Plaxton, Rajmohan Rajaraman, Andrea Richa SPAA 1997.
Scalable Content-aware Request Distribution in Cluster-based Network Servers Jianbin Wei 10/4/2001.
Directional triadic closure and edge deletion mechanism induce asymmetry in directed edge properties.
Small-world Overlay P2P Network
Scaling Distributed Machine Learning with the BASED ON THE PAPER AND PRESENTATION: SCALING DISTRIBUTED MACHINE LEARNING WITH THE PARAMETER SERVER – GOOGLE,
CS 582 / CMPE 481 Distributed Systems
1 Data Persistence in Large-scale Sensor Networks with Decentralized Fountain Codes Yunfeng Lin, Ben Liang, Baochun Li INFOCOM 2007.
G Robert Grimm New York University Sprite LFS or Let’s Log Everything.
Availability in Global Peer-to-Peer Systems Qin (Chris) Xin, Ethan L. Miller Storage Systems Research Center University of California, Santa Cruz Thomas.
© University of Minnesota Data Mining for the Discovery of Ocean Climate Indices 1 CSci 8980: Data Mining (Fall 2002) Vipin Kumar Army High Performance.
HCS Clustering Algorithm
Goal: To build a ubiquitous and robust storage infrastructure Requirement: Scalability, availability, performance, robustness Solution: Dynamic object.
Dept. of Computer Science & Engineering, CUHK1 Trust- and Clustering-Based Authentication Services in Mobile Ad Hoc Networks Edith Ngai and Michael R.
Efficient and Robust Computation of Resource Clusters in the Internet Efficient and Robust Computation of Resource Clusters in the Internet Chuang Liu,
Efficient replica maintenance for distributed storage systems Byung-Gon Chun, Frank Dabek, Andreas Haeberlen, Emil Sit, Hakim Weatherspoon, M. Frans Kaashoek,
Fault-tolerant Adaptive Divisible Load Scheduling Xuan Lin, Sumanth J. V. Acknowledge: a few slides of DLT are from Thomas Robertazzi ’ s presentation.
Locality Optimizations in OceanStore Patrick R. Eaton Dennis Geels An introduction to introspective techniques for exploiting locality in wide area storage.
Erasure Coding vs. Replication: A Quantiative Comparison
G Robert Grimm New York University Sprite LFS or Let’s Log Everything.
Wide-area cooperative storage with CFS
Clustering Ram Akella Lecture 6 February 23, & 280I University of California Berkeley Silicon Valley Center/SC.
1 Chapter 3.1 : Memory Management Storage hierarchy Storage hierarchy Important memory terms Important memory terms Earlier memory allocation schemes Earlier.
Long Term Durability with Seagull Hakim Weatherspoon (Joint work with Jeremy Stribling and OceanStore group) University of California, Berkeley ROC/Sahara/OceanStore.
CS401 presentation1 Effective Replica Allocation in Ad Hoc Networks for Improving Data Accessibility Takahiro Hara Presented by Mingsheng Peng (Proc. IEEE.
Sanjay Ghemawat, Howard Gobioff, and Shun-Tak Leung Google∗
1 Reasons for parallelization Can we make GA faster? One of the most promising choices is to use parallel implementations. The reasons for parallelization.
DEXA 2005 Quality-Aware Replication of Multimedia Data Yicheng Tu, Jingfeng Yan and Sunil Prabhakar Department of Computer Sciences, Purdue University.
Developing Analytical Framework to Measure Robustness of Peer-to-Peer Networks Niloy Ganguly.
GeoGrid: A scalable Location Service Network Authors: J.Zhang, G.Zhang, L.Liu Georgia Institute of Technology presented by Olga Weiss Com S 587x, Fall.
Failure Resilience in the Peer-to-Peer-System OceanStore Speaker: Corinna Richter.
Network Aware Resource Allocation in Distributed Clouds.
UbiStore: Ubiquitous and Opportunistic Backup Architecture. Feiselia Tan, Sebastien Ardon, Max Ott Presented by: Zainab Aljazzaf.
Hadoop Hardware Infrastructure considerations ©2013 OpalSoft Big Data.
A Distributed Clustering Framework for MANETS Mohit Garg, IIT Bombay RK Shyamasundar School of Tech. & Computer Science Tata Institute of Fundamental Research.
 SNU INC Lab MOBICOM 2002 Directed Diffusion for Wireless Sensor Networking C. Intanagonwiwat, R. Govindan, D. Estrin, John Heidemann, and Fabio Silva.
MapReduce and GFS. Introduction r To understand Google’s file system let us look at the sort of processing that needs to be done r We will look at MapReduce.
Presenters: Rezan Amiri Sahar Delroshan
Serverless Network File Systems Overview by Joseph Thompson.
REECH ME: Regional Energy Efficient Cluster Heads based on Maximum Energy Routing Protocol Prepared by: Arslan Haider. 1.
IM NTU Distributed Information Systems 2004 Replication Management -- 1 Replication Management Yih-Kuen Tsay Dept. of Information Management National Taiwan.
A Passive Approach to Sensor Network Localization Rahul Biswas and Sebastian Thrun International Conference on Intelligent Robots and Systems 2004 Presented.
A Membership Management Protocol for Mobile P2P Networks Mohamed Karim SBAI, Emna SALHI, Chadi BARAKAT.
Geo Location Service CS218 Fall 2008 Yinzhe Yu, et al : Enhancing Location Service Scalability With HIGH-GRADE Yinzhe Yu, et al : Enhancing Location Service.
11 CLUSTERING AND AVAILABILITY Chapter 11. Chapter 11: CLUSTERING AND AVAILABILITY2 OVERVIEW  Describe the clustering capabilities of Microsoft Windows.
Distributed and hierarchical deadlock detection, deadlock resolution
Network Computing Laboratory 1 Vivaldi: A Decentralized Network Coordinate System Authors: Frank Dabek, Russ Cox, Frans Kaashoek, Robert Morris MIT Published.
CS 484 Load Balancing. Goal: All processors working all the time Efficiency of 1 Distribute the load (work) to meet the goal Two types of load balancing.
Local Distributed Agent Matchmaking Elth Ogston and Stamatis Vassiliadis Computer Engineering Laboratory TU Delft.
Infrastructure for Data Warehouses. Basics Of Data Access Data Store Machine Memory Buffer Memory Cache Data Store Buffer Bus Structure.
Advanced Computer Networks Lecture 1 - Parallelization 1.
An Adaptive Zone-based Storage Architecture for Wireless Sensor Networks Thang Nam Le, Dong Xuan and *Wei Yu Department of Computer Science and Engineering,
Spring 2000CS 4611 Routing Outline Algorithms Scalability.
On the Placement of Web Server Replicas Yu Cai. Paper On the Placement of Web Server Replicas Lili Qiu, Venkata N. Padmanabhan, Geoffrey M. Voelker Infocom.
Network Partition –Finding modules of the network. Graph Clustering –Partition graphs according to the connectivity. –Nodes within a cluster is highly.
1 Plaxton Routing. 2 History Greg Plaxton, Rajmohan Rajaraman, Andrea Richa. Accessing nearby copies of replicated objects, SPAA 1997 Used in several.
Dynamic Load Balancing Tree and Structured Computations.
Repairing Sensor Network Using Mobile Robots Y. Mei, C. Xian, S. Das, Y. C. Hu and Y. H. Lu Purdue University, West Lafayette ICDCS 2006 Speaker : Shih-Yun.
CS791Aravind Elango Maintenance-Free Global Data Storage Sean Rhea, Chris Wells, Patrick Eaten, Dennis Geels, Ben Zhao, Hakim Weatherspoon and John Kubiatowicz.
Introduction to Wireless Sensor Networks
Data Mining K-means Algorithm
Introduction to Computers
Privacy and Fault-Tolerance in Distributed Optimization Nitin Vaidya University of Illinois at Urbana-Champaign.
Fault Tolerance Distributed Web-based Systems
Algorithms for Selecting Mirror Sites for Parallel Download
COMP755 Advanced Operating Systems
Presentation transcript:

Distributed Cluster Repair for OceanStore Irena Nadjakova and Arindam Chakrabarti Acknowledgements: Hakim Weatherspoon John Kubiatowicz

Dec 9, 2003Distributed Cluster Repair for OceanStore2 OceanStore Overview Data Storage Utility Robustness Security Durability High availability Global-scale

Dec 9, 2003Distributed Cluster Repair for OceanStore3 Where our project fits in Durability Automatic version-management Highly redundant erasure-coding Massive dissemination of fragments on machines with highly uncorrelated availability.

Dec 9, 2003Distributed Cluster Repair for OceanStore4 The internet

Dec 9, 2003Distributed Cluster Repair for OceanStore5 Choosing locations for storing a fragment

Dec 9, 2003Distributed Cluster Repair for OceanStore6 Choosing locations for storing a fragment

Dec 9, 2003Distributed Cluster Repair for OceanStore7 Choosing locations for storing a fragment

Dec 9, 2003Distributed Cluster Repair for OceanStore8 Clustering

Dec 9, 2003Distributed Cluster Repair for OceanStore9 Clustering

Dec 9, 2003Distributed Cluster Repair for OceanStore10 OceanStore solution Availability of each machine tracked over time. Machines that have very little availability are not used for fragment storage. Distance between each pair of machines computed. (high mutual information ) close) Cluster the machines into chunks based on this distance using normalized cuts. All the computation is done on one central computer (Cluster Server).

Dec 9, 2003Distributed Cluster Repair for OceanStore11 OceanStore solution Machines that are highly correlated in availability are in same cluster. Machines in separate clusters have low correlation in availability. When a node needs to store replica fragments, it requests cluster information from the cluster server and uses it to send each fragment to k nodes: one from each of k different clusters.

Dec 9, 2003Distributed Cluster Repair for OceanStore12 Cluster creation Needs centralized computation. Can we do it in a distributed manner ? NCuts is one stumbling block. It seems to need the entire graph. Having to pull the cluster info from one central cluster server: single point of failure Can we have a “Distributed NCuts” algo to look at subgraphs ? How to make subgraphs? Do we need to know the entire graph to decide how to divide it into pieces ?

Dec 9, 2003Distributed Cluster Repair for OceanStore13 Distributed clustering

Dec 9, 2003Distributed Cluster Repair for OceanStore14 Distributed clustering

Dec 9, 2003Distributed Cluster Repair for OceanStore15 Distributed clustering

Dec 9, 2003Distributed Cluster Repair for OceanStore16 Distributed clustering

Dec 9, 2003Distributed Cluster Repair for OceanStore17 Distributed clustering

Dec 9, 2003Distributed Cluster Repair for OceanStore18 Initial idea We run the centralized algorithm once for some time period (chose 73 days) to generate some initial clustering (expensive!) We distribute the machines among some f cluster servers –Each has a smaller subset of size num of the initial machines –Keeping the initial clustering proportions for each node –Each machine occurs in approximately equal number of cluster servers

Dec 9, 2003Distributed Cluster Repair for OceanStore19 Initial idea (cont) Now we can afford to recluster the machines on each server frequently to keep up with the network changes. –Chose to do it once every 30 days for the simulation purposes, but can easily be done a lot more often

Dec 9, 2003Distributed Cluster Repair for OceanStore20 Evaluation To see how well this does, we want to compare it with the original global algorithm, run in the same time period. Metric – the average mutual information I(x,y) =  P(x,y) log P(x,y)/P(x)P(y) –Average MI for a single server is just the average of the mutual information between pairs of machines in different clusters on the server –On multiple servers, we compute the above on every server, then average among servers

Dec 9, 2003Distributed Cluster Repair for OceanStore21 Simulating Network Evolution Dynamics We have availability data for 1000 machines for a period of 73 days. We use it to simulate the behavior of a network with 1000 machines over a period of 730 days = 2 years. We simulate networks with varying evolution characteristics to evaluate the robustness of our distributed cluster repair algorithm.

Dec 9, 2003Distributed Cluster Repair for OceanStore22 Simulating Network Evolution Dynamics Qualities of a good network: Maybe server availability (AV) should not vary drastically in the future ? Maybe average server repair time (MTTR) should not vary drastically ? Maybe mean time to failure (MTTF) should not vary drastically ? Maybe failure correlations (FCOR) should also not vary drastically ?

Dec 9, 2003Distributed Cluster Repair for OceanStore23 NS Algo 1: Sanity Check 1 Global déjà vu Maintains AV, MTTF, MTTR, FCOR Simulates a well-behaved network. Our distributed update algorithm should do very well on this.

Dec 9, 2003Distributed Cluster Repair for OceanStore24 NS Algo 2: Acid Test 1 Local déjà vu Maintains AV, MTTF, MTTR, but not FCOR.

Dec 9, 2003Distributed Cluster Repair for OceanStore25 NS Algo 3: Acid Test 2 Births and Deaths Maintains AV, MTTF, MTTR, and FCOR, but only for some nodes, and for some time. Nodes are taken off (die) the network or are added to (born) the network at certain times. When they are actually on the network, they maintain their AV, MTTF, MTTR, FCOR.

Dec 9, 2003Distributed Cluster Repair for OceanStore26 NS Algo 4: Acid Test 3 Noisy Global déjà vu Maintains AV, MTTF, MTTR, FCOR to a large extent, but adds some Gaussian noise, representing the variations that may be observed in a real network.

Dec 9, 2003Distributed Cluster Repair for OceanStore27 NS Algo 5: Acid Test 4 Noisy Local déjà vu Maintains AV, MTTF, MTTR, but not FCOR, and also adds some Gaussian noise representing the variations that may be observed in a real network. Does our algorithm do well in this situation ? If yes, how robust is it to noise ?

Dec 9, 2003Distributed Cluster Repair for OceanStore28

Dec 9, 2003Distributed Cluster Repair for OceanStore29

Dec 9, 2003Distributed Cluster Repair for OceanStore30

Dec 9, 2003Distributed Cluster Repair for OceanStore31

Dec 9, 2003Distributed Cluster Repair for OceanStore32 Still problems Initial clustering is expensive What happens if we don’t use it?

Dec 9, 2003Distributed Cluster Repair for OceanStore33

Dec 9, 2003Distributed Cluster Repair for OceanStore34 How to fix this? Randomly distribute machines to the servers Perform local clustering Find the ‘unwanted’ elements (highest mutual information with the rest on this node) Exchange them with ‘unwanted’ elements of another cluster to which the first ones are least correlated Communication overhead is low; most computation can proceed without a lot of communication

Dec 9, 2003Distributed Cluster Repair for OceanStore35 Under development… What we have so far is a scheme that –picks a server at random –finds a few unwanted elements –exchanges those with the same number of unwanted elements of another server – picked at random, or having the best correlation with the unwanted elements of the first server The percentage improvement is small so far – 0.4%-1.5% for the first 5 or so runs. It falls off afterwards.

Dec 9, 2003Distributed Cluster Repair for OceanStore36 How to improve Exchange more than 1 machines ? Run for several generations ? It may be even better to just randomly exchange machines, as long as the overall average mutual information of the distributed cluster decreases.

Dec 9, 2003Distributed Cluster Repair for OceanStore37 Summary of achievements Towards getting rid of expensive centralized cluster creation Scalable distributed cluster management scheme

Dec 9, 2003Distributed Cluster Repair for OceanStore38 Thanks for listening ! Acknowledgements: Hakim Weatherspoon John Kubiatowicz