Slide credits: Thomas Kao

Slides:



Advertisements
Similar presentations
High throughput chain replication for read-mostly workloads
Advertisements

Dr. Kalpakis CMSC 621, Advanced Operating Systems. Fall 2003 URL: Distributed System Architectures.
File Management Chapter 12. File Management File management system is considered part of the operating system Input to applications is by means of a file.
File Management Chapter 12. File Management A file is a named entity used to save results from a program or provide data to a program. Access control.
Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition, Chapter 10: File-System Interface.
Lecture 6 – Google File System (GFS) CSE 490h – Introduction to Distributed Computing, Winter 2008 Except as otherwise noted, the content of this presentation.
Sinfonia: A New Paradigm for Building Scalable Distributed Systems Marcos K. Aguilera, Arif Merchant, Mehul Shah, Alistair Veitch, Christonos Karamanolis.
Chapter 10: File-System Interface
6/24/2015B.RamamurthyPage 1 File System B. Ramamurthy.
EEC-681/781 Distributed Computing Systems Lecture 3 Wenbing Zhao Department of Electrical and Computer Engineering Cleveland State University
7/15/2015B.RamamurthyPage 1 File System B. Ramamurthy.
Northwestern University 2007 Winter – EECS 443 Advanced Operating Systems The Google File System S. Ghemawat, H. Gobioff and S-T. Leung, The Google File.
Case Study - GFS.
Sanjay Ghemawat, Howard Gobioff, and Shun-Tak Leung Google∗
Distributed Data Stores – Facebook Presented by Ben Gooding University of Arkansas – April 21, 2015.
Object-based Storage Long Liu Outline Why do we need object based storage? What is object based storage? How to take advantage of it? What's.
1 The Google File System Reporter: You-Wei Zhang.
CSC 456 Operating Systems Seminar Presentation (11/13/2012) Leon Weingard, Liang Xin The Google File System.
M i SMob i S Mob i Store - Mobile i nternet File Storage Platform Chetna Kaur.
Presented by Dr. Greg Speegle April 12,  Two-phase commit slow relative to local transaction processing  CAP Theorem  Option 1: Reduce availability.
Megastore: Providing Scalable, Highly Available Storage for Interactive Services J. Baker, C. Bond, J.C. Corbett, JJ Furman, A. Khorlin, J. Larson, J-M.
CEPH: A SCALABLE, HIGH-PERFORMANCE DISTRIBUTED FILE SYSTEM S. A. Weil, S. A. Brandt, E. L. Miller D. D. E. Long, C. Maltzahn U. C. Santa Cruz OSDI 2006.
File Management Chapter 12. File Management File management system is considered part of the operating system Input to applications is by means of a file.
1 File Management Chapter File Management n File management system consists of system utility programs that run as privileged applications n Concerned.
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
Databases Illuminated
GFS. Google r Servers are a mix of commodity machines and machines specifically designed for Google m Not necessarily the fastest m Purchases are based.
Computer Science Lecture 19, page 1 CS677: Distributed OS Last Class: Fault tolerance Reliable communication –One-one communication –One-many communication.
CS 346 – Chapter 11 File system –Files –Access –Directories –Mounting –Sharing –Protection.
HADOOP DISTRIBUTED FILE SYSTEM HDFS Reliability Based on “The Hadoop Distributed File System” K. Shvachko et al., MSST 2010 Michael Tsitrin 26/05/13.
Distributed File Systems Architecture – 11.1 Processes – 11.2 Communication – 11.3 Naming – 11.4.
Google File System Robert Nishihara. What is GFS? Distributed filesystem for large-scale distributed applications.
Review CS File Systems - Partitions What is a hard disk partition?
GPFS: A Shared-Disk File System for Large Computing Clusters Frank Schmuck & Roger Haskin IBM Almaden Research Center.
State Machine Replication State Machine Replication through transparent distributed protocols State Machine Replication through a shared log.
Chapter Five Distributed file systems. 2 Contents Distributed file system design Distributed file system implementation Trends in distributed file systems.
Scriber- Vibha Goyal Date:- March 03, 2016 Course:- CS 525University of Illinois at Urbana Champaign CalvinFS: Consistent WAN Replication and Scalable.
The Google File System Sanjay Ghemawat, Howard Gobioff, and Shun-Tak Leung Presenter: Chao-Han Tsai (Some slides adapted from the Google’s series lectures)
Computer Science Lecture 19, page 1 CS677: Distributed OS Last Class: Fault tolerance Reliable communication –One-one communication –One-many communication.
Cofax Scalability Document Version Scaling Cofax in General The scalability of Cofax is directly related to the system software, hardware and network.
Ivy: A Read/Write Peer-to- Peer File System Authors: Muthitacharoen Athicha, Robert Morris, Thomer M. Gil, and Benjie Chen Presented by Saurabh Jha 1.
Gorilla: A Fast, Scalable, In-Memory Time Series Database
CalvinFS: Consistent WAN Replication and Scalable Metdata Management for Distributed File Systems Thomas Kao.
Wingu A Synchronization Layer For Safe Concurrent Access to Cloud Storage Craig Chasseur and Allie Terrell December 20, 2010.
Hadoop.
Curator: Self-Managing Storage for Enterprise Clusters
Alternative system models
Finding a Needle in Haystack : Facebook’s Photo storage
CPS 512 midterm exam #1, 10/7/2016 Your name please: ___________________ NetID:___________ /60 /40 /10.
CSCI5570 Large Scale Data Processing Systems
File System Implementation
Google Filesystem Some slides taken from Alan Sussman.
Gregory Kesden, CSE-291 (Storage Systems) Fall 2017
Gregory Kesden, CSE-291 (Cloud Computing) Fall 2016
A Survey on Distributed File Systems
Chapter 12: File System Implementation
The Google File System Sanjay Ghemawat, Howard Gobioff and Shun-Tak Leung Google Presented by Jiamin Huang EECS 582 – W16.
Filesystems 2 Adapted from slides of Hank Levy
File System B. Ramamurthy B.Ramamurthy 11/27/2018.
Hadoop Technopoints.
EECS 498 Introduction to Distributed Systems Fall 2017
From Viewstamped Replication to BFT
Scalable Causal Consistency
Distributed File Systems
DISTRIBUTED SYSTEMS Principles and Paradigms Second Edition ANDREW S
Outline Review of Quiz #1 Distributed File Systems 4/20/2019 COP5611.
File System Implementation
Apache Hadoop and Spark
Presentation transcript:

Slide credits: Thomas Kao CalvinFS: Consistent WAN Replication and Scalable Metdata Management for Distributed File Systems Slide credits: Thomas Kao

Background Scalable solutions provided for data storage, why not file systems?

Motivation Often bottlenecked by the metadata management layer Availability susceptible to data center outages Still provides expected file system semantics

Key Contributions Distributed database system for scalable metadata management Strongly consistent geo-replication of file system state

Calvin: Log Many front end servers Asynchronously-replicated distributed block store Small number of “meta-data” log servers Transaction requests are replicated and appended, in order, by the “meta log”

Calvin: Storage Layer Knowledge of physical data store organization and actual transaction semantics Read/write primitives that execute on one node Placement manager Multiversion key-value store at each node, plus consistent hashing mechanism

Calvin: Scheduler Drives local transaction execution Fully examines transaction before execution Deterministic locking Transaction protocol: No distributed commit protocol Perform all local reads Serve remote reads Collect remote read results Execute transaction to completion

CalvinFS Architecture Components Block store Calvin database Client library Design Principles: Main-memory metadata store Potentially many small files Scalable read/write throughput Tolerate slow writes Linearizable and snapshot reads Hash-partitioned metadata Optimize for single-file operations

CalvinFS Block Store Variable-size immutable blocks 1 byte to 10 megabytes Block storage and placement Unique ID Block “buckets” Global Paxos-replicated config file Compacts small blocks

CalvinFS Metadata Management Key-value store Key: absolute path of file/directory Value: entry type, permissions, contents

Metadata Storage Layer Six transaction types: Read(path) Create{File, Dir}(path) Resize(path, size) Write(path, file_offset, source, source_offset, num_bytes) Delete(path) Edit permissions(path, permissions)

Recursive Operations on Directories Use OLLP Analyze phase Determines affected entries and read/write set Run phase Check that read/write set has not grown

Performance: File Counts and Memory Usage 10 million files of varying size per machine Far less memory used per machine Handles many more files than HDFS

Performance: Throughput Linear scalability Sub-linear scalability Linear scalability

Write/append latency dominated by WAN replication Performance: Latency Write/append latency dominated by WAN replication

Performance: Fault Tolerance Able to tolerate outages with little to no hit to availability

Discussion Pros Fast metadata management Deployments are scalable on large clusters Huge storage capabilities High throughput of reads and updates Resistant to datacenter outages Cons File creation is distributed transaction, doesn’t scale well Metadata operations have to recursively modify all entries in affected subtree File-fragmentation addressed using mechanism that entirely rewrites files

Discussion Questions Unlimited number of files? What about larger files?