SlideShare une entreprise Scribd logo
1  sur  21
Avinash Kumar
BE Computer-2
  Roll No-40
Contents
 Introduction to GFS
 System Architecture
 System Features
 Working of GFS
 Latest advancement
 Conclusion
 Questions
Introduction
 More than 15,000 commodity-class PC's.
 Multiple clusters distributed worldwide.
 Thousands of queries served per second.
 One query reads 100's of MB of data.
 One query consumes 10's of billions of CPU
  cycles.
 Google stores dozens of copies of the entire Web!

 Conclusion: Need large, distributed, highly
          fault tolerant file system.
System Architecture
 A GFS cluster consists of a single master and multiple
 chunk-servers and is accessed by multiple clients.
Large Chunk




 GFS uses large chunk: 64MB (1G = 1024 MB = 16 chunks)
    Stored as a plain Linux file, which will be lazily extended up to 64MB.
 Opt to many read and write on a given chunk
    Reduces network overhead by keeping a connection to the chunk
     server.
    See also Map-Reduce, Big-Table.
Architecture (cont’d)
 Chunkserver
   Files are divided into fixed-size chunks (64 MB)
   Each chunk is identified by an immutable and globally
   unique 64 bit chunkhandle assigned by the master at the
   time of chunkcreation
   Chunkservers store chunks on local disks as Linux files
   and read or write chunk data specified by a chunkhandle
    For reliability, each chunk is replicated on multiple
   chunkservers. (default 3 replicas)

 GFS Client
   GFS client code linked into each application implements
   the file system API and communicates with the master
   and chunkservers to read or write data on behalf of the
System Metadata
 The master stores three major types of metadata:
     The file and chunk namespaces
     The mapping from files to chunks
     The locations of each chunk’s replicas
 All metadata is kept in the master’s memory
 The first two types are also kept persistent by logging
 mutations to an operation log stored on the master’s local disk
 and replicated on remote machines.
 The master does not store third type persistently. Instead, it
 asks each chunkserver about its chunks at master startup
System Features
Page Rank- Probability that a random surfer visits the site
         Citations (Back links)
     •
         How is Page Rank calculated??
     •

     PR(A) = (1-d) + d (PR(T1)/C(T1) + ... + PR(Tn)/C(Tn))
     where,
     PR      -> Page Rank of a page
     T1….Tn -> Pages that point to Page A (citations)
     d       -> Damping Factor (0<d<1)
     C(A) -> No. of Links going out from A
         Page Rank of a page depends on-
             Number of pages pointing to it.
             Page Rank of the page that points to it.
System Features
 Anchor Text- text associated with the link
      Association with the page the link is on
    •
    • Association with the page the link points to( unique
      to Google)
    Advantages:
    • Anchors contain more information than the pages
      themselves
    • Documents that cannot be indexed can be displayed


 Other Features:
        Proximity of location information in search for all hits
    •
        Track of visual presentation details
    •
System Anatomy
Working Of GFS
Google Query Evaluation
     Parse the query.
1.

     Convert words into wordIDs.
2.

     Seek to the start of the doclist in the short barrel for every word.
3.

     Scan through the doclists until there is a document that matches all the
4.
     search terms.

     Compute the rank of that document for the query.
5.

     If in the short barrels and at the end of any doclist, seek to the start of
6.
     the doclist in the full barrel for every word and go to step 4.

     If we are not at the end of any doclist go to step 4.
7.

Sort the documents that have matched by rank and return the top k.
Client Read
 Client sends master:
   read(file name, chunk index)
 Master’s reply:
   chunk ID, chunk version number, locations of
     replicas
 Client sends “closest” chunkserver w/replica:
    read(chunk ID, byte range)
    “Closest” determined by IP address on simple rack-
     based network topology
 Chunkserver replies with data
Client Write
 Some chunkserver is primary for each chunk
   Master grants lease to primary (typically for 60 sec.)
   Leases renewed using periodic heartbeat messages
     between master and chunkservers
 Client asks server for primary and secondary replicas for
  each chunk
 Client sends data to replicas in daisy chain
    Pipelined: each replica forwards as it receives
    Takes advantage of full-duplex Ethernet links
Client Write (2)
 All replicas acknowledge data write to client
 Client sends write request to primary
 Primary assigns serial number to write
  request, providing ordering
 Primary forwards write request with same serial
  number to secondaries
 Secondaries all reply to primary after completing
  write
 Primary replies to client
Client Write (3)
What Happen If the Master Reboots?
 Replays log from disk
    Recovers namespace (directory) information
    Recovers file-to-chunk-ID mapping
 Asks chunkservers which chunks they hold
   Recovers chunk-ID-to-chunkserver mapping
 If chunk server has older chunk, it’s stale
    Chunk server down at lease renewal
 If chunk server has newer chunk, adopt its version
  number
    Master may have failed while granting lease
What Happen if Chunkserver Fails?

 Master notices missing heartbeats
 Master decrements count of replicas for all chunks on
  dead chunkserver
 Master re-replicates chunks missing replicas in
  background
   Highest priority for chunks missing greatest
    number of replicas
Latest Advancement
 gMail - An easily configurable email
          service with 1GB of web space.
 Blogger- A free web-based service that
            helps consumers publish on the
            web without writing code or installing
            software.
 Google “next generation corporate s/w”
             - A smaller version of the google
               software, modified for private use.
Conclusion
 Success: used actively by Google to support search service and
  other applications
    Availability and recoverability on cheap hardware
    High throughput by decoupling control and data
    Supports massive data sets and concurrent appends
 Semantics not transparent to apps
    Must verify file contents to avoid inconsistent
     regions, repeated appends (at-least-once semantics)
 Performance not good for all apps
    Assumes read-once, write-once workload (no client
     caching!)
ANY QUESTION
      ?

Contenu connexe

Tendances

Fault tolerance in distributed systems
Fault tolerance in distributed systemsFault tolerance in distributed systems
Fault tolerance in distributed systems
sumitjain2013
 
Distributed computing
Distributed computingDistributed computing
Distributed computing
shivli0769
 

Tendances (20)

Cluster Computing
Cluster ComputingCluster Computing
Cluster Computing
 
High Performance & High Throughput Computing - EUDAT Summer School (Giuseppe ...
High Performance & High Throughput Computing - EUDAT Summer School (Giuseppe ...High Performance & High Throughput Computing - EUDAT Summer School (Giuseppe ...
High Performance & High Throughput Computing - EUDAT Summer School (Giuseppe ...
 
Processes and Processors in Distributed Systems
Processes and Processors in Distributed SystemsProcesses and Processors in Distributed Systems
Processes and Processors in Distributed Systems
 
google file system
google file systemgoogle file system
google file system
 
The Google File System (GFS)
The Google File System (GFS)The Google File System (GFS)
The Google File System (GFS)
 
Virtualization in cloud computing
Virtualization in cloud computingVirtualization in cloud computing
Virtualization in cloud computing
 
Synchronization in distributed computing
Synchronization in distributed computingSynchronization in distributed computing
Synchronization in distributed computing
 
Fault tolerance in distributed systems
Fault tolerance in distributed systemsFault tolerance in distributed systems
Fault tolerance in distributed systems
 
Cluster computing
Cluster computingCluster computing
Cluster computing
 
Developing a Map Reduce Application
Developing a Map Reduce ApplicationDeveloping a Map Reduce Application
Developing a Map Reduce Application
 
Google File System
Google File SystemGoogle File System
Google File System
 
Distributed computing
Distributed computingDistributed computing
Distributed computing
 
Naming in Distributed Systems
Naming in Distributed SystemsNaming in Distributed Systems
Naming in Distributed Systems
 
Distributed Systems Naming
Distributed Systems NamingDistributed Systems Naming
Distributed Systems Naming
 
Processor allocation in Distributed Systems
Processor allocation in Distributed SystemsProcessor allocation in Distributed Systems
Processor allocation in Distributed Systems
 
Message passing in Distributed Computing Systems
Message passing in Distributed Computing SystemsMessage passing in Distributed Computing Systems
Message passing in Distributed Computing Systems
 
Seminar Report on Google File System
Seminar Report on Google File SystemSeminar Report on Google File System
Seminar Report on Google File System
 
Peer to Peer services and File systems
Peer to Peer services and File systemsPeer to Peer services and File systems
Peer to Peer services and File systems
 
Scheduling in Cloud Computing
Scheduling in Cloud ComputingScheduling in Cloud Computing
Scheduling in Cloud Computing
 
Introduction to Parallel Computing
Introduction to Parallel ComputingIntroduction to Parallel Computing
Introduction to Parallel Computing
 

Similaire à Google File System

GFS - Google File System
GFS - Google File SystemGFS - Google File System
GFS - Google File System
tutchiio
 
Troubleshooting SQL Server
Troubleshooting SQL ServerTroubleshooting SQL Server
Troubleshooting SQL Server
Stephen Rose
 
Oracle Real Application Cluster ( RAC )
Oracle Real Application Cluster ( RAC )Oracle Real Application Cluster ( RAC )
Oracle Real Application Cluster ( RAC )
varasteh65
 

Similaire à Google File System (20)

Google File System
Google File SystemGoogle File System
Google File System
 
Qcon
QconQcon
Qcon
 
advanced Google file System
advanced Google file Systemadvanced Google file System
advanced Google file System
 
GFS - Google File System
GFS - Google File SystemGFS - Google File System
GFS - Google File System
 
System Design.pdf
System Design.pdfSystem Design.pdf
System Design.pdf
 
SRV407 Deep Dive on Amazon Aurora
SRV407 Deep Dive on Amazon AuroraSRV407 Deep Dive on Amazon Aurora
SRV407 Deep Dive on Amazon Aurora
 
Become a Performance Diagnostics Hero
Become a Performance Diagnostics HeroBecome a Performance Diagnostics Hero
Become a Performance Diagnostics Hero
 
AWS re:Invent 2016: Amazon CloudFront Flash Talks: Best Practices on Configur...
AWS re:Invent 2016: Amazon CloudFront Flash Talks: Best Practices on Configur...AWS re:Invent 2016: Amazon CloudFront Flash Talks: Best Practices on Configur...
AWS re:Invent 2016: Amazon CloudFront Flash Talks: Best Practices on Configur...
 
KSQL Performance Tuning for Fun and Profit ( Nick Dearden, Confluent) Kafka S...
KSQL Performance Tuning for Fun and Profit ( Nick Dearden, Confluent) Kafka S...KSQL Performance Tuning for Fun and Profit ( Nick Dearden, Confluent) Kafka S...
KSQL Performance Tuning for Fun and Profit ( Nick Dearden, Confluent) Kafka S...
 
Gfs介绍
Gfs介绍Gfs介绍
Gfs介绍
 
Performance Optimization in Large Systems - Cusec 2019
Performance Optimization in Large Systems - Cusec 2019Performance Optimization in Large Systems - Cusec 2019
Performance Optimization in Large Systems - Cusec 2019
 
EVCache: Lowering Costs for a Low Latency Cache with RocksDB
EVCache: Lowering Costs for a Low Latency Cache with RocksDBEVCache: Lowering Costs for a Low Latency Cache with RocksDB
EVCache: Lowering Costs for a Low Latency Cache with RocksDB
 
Troubleshooting SQL Server
Troubleshooting SQL ServerTroubleshooting SQL Server
Troubleshooting SQL Server
 
MongoDB World 2019: Finding the Right MongoDB Atlas Cluster Size: Does This I...
MongoDB World 2019: Finding the Right MongoDB Atlas Cluster Size: Does This I...MongoDB World 2019: Finding the Right MongoDB Atlas Cluster Size: Does This I...
MongoDB World 2019: Finding the Right MongoDB Atlas Cluster Size: Does This I...
 
Software architecture for data applications
Software architecture for data applicationsSoftware architecture for data applications
Software architecture for data applications
 
No C-QL (Or how I learned to stop worrying, and love eventual consistency) (N...
No C-QL (Or how I learned to stop worrying, and love eventual consistency) (N...No C-QL (Or how I learned to stop worrying, and love eventual consistency) (N...
No C-QL (Or how I learned to stop worrying, and love eventual consistency) (N...
 
Top Java Performance Problems and Metrics To Check in Your Pipeline
Top Java Performance Problems and Metrics To Check in Your PipelineTop Java Performance Problems and Metrics To Check in Your Pipeline
Top Java Performance Problems and Metrics To Check in Your Pipeline
 
Cluster based storage - Nasd and Google file system - advanced operating syst...
Cluster based storage - Nasd and Google file system - advanced operating syst...Cluster based storage - Nasd and Google file system - advanced operating syst...
Cluster based storage - Nasd and Google file system - advanced operating syst...
 
Testing pc’s performance
Testing pc’s performanceTesting pc’s performance
Testing pc’s performance
 
Oracle Real Application Cluster ( RAC )
Oracle Real Application Cluster ( RAC )Oracle Real Application Cluster ( RAC )
Oracle Real Application Cluster ( RAC )
 

Dernier

Activity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfActivity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdf
ciinovamais
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdf
QucHHunhnh
 
Making and Justifying Mathematical Decisions.pdf
Making and Justifying Mathematical Decisions.pdfMaking and Justifying Mathematical Decisions.pdf
Making and Justifying Mathematical Decisions.pdf
Chris Hunter
 
The basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxThe basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptx
heathfieldcps1
 
Seal of Good Local Governance (SGLG) 2024Final.pptx
Seal of Good Local Governance (SGLG) 2024Final.pptxSeal of Good Local Governance (SGLG) 2024Final.pptx
Seal of Good Local Governance (SGLG) 2024Final.pptx
negromaestrong
 
Beyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global ImpactBeyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global Impact
PECB
 

Dernier (20)

Advanced Views - Calendar View in Odoo 17
Advanced Views - Calendar View in Odoo 17Advanced Views - Calendar View in Odoo 17
Advanced Views - Calendar View in Odoo 17
 
Activity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfActivity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdf
 
Sociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning ExhibitSociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning Exhibit
 
Holdier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfHoldier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdf
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdf
 
Making and Justifying Mathematical Decisions.pdf
Making and Justifying Mathematical Decisions.pdfMaking and Justifying Mathematical Decisions.pdf
Making and Justifying Mathematical Decisions.pdf
 
On National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan FellowsOn National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan Fellows
 
Key note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdfKey note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdf
 
ComPTIA Overview | Comptia Security+ Book SY0-701
ComPTIA Overview | Comptia Security+ Book SY0-701ComPTIA Overview | Comptia Security+ Book SY0-701
ComPTIA Overview | Comptia Security+ Book SY0-701
 
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
 
The basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxThe basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptx
 
Ecological Succession. ( ECOSYSTEM, B. Pharmacy, 1st Year, Sem-II, Environmen...
Ecological Succession. ( ECOSYSTEM, B. Pharmacy, 1st Year, Sem-II, Environmen...Ecological Succession. ( ECOSYSTEM, B. Pharmacy, 1st Year, Sem-II, Environmen...
Ecological Succession. ( ECOSYSTEM, B. Pharmacy, 1st Year, Sem-II, Environmen...
 
Seal of Good Local Governance (SGLG) 2024Final.pptx
Seal of Good Local Governance (SGLG) 2024Final.pptxSeal of Good Local Governance (SGLG) 2024Final.pptx
Seal of Good Local Governance (SGLG) 2024Final.pptx
 
Energy Resources. ( B. Pharmacy, 1st Year, Sem-II) Natural Resources
Energy Resources. ( B. Pharmacy, 1st Year, Sem-II) Natural ResourcesEnergy Resources. ( B. Pharmacy, 1st Year, Sem-II) Natural Resources
Energy Resources. ( B. Pharmacy, 1st Year, Sem-II) Natural Resources
 
Unit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptxUnit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptx
 
ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.
 
Beyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global ImpactBeyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global Impact
 
Micro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdfMicro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdf
 
psychiatric nursing HISTORY COLLECTION .docx
psychiatric  nursing HISTORY  COLLECTION  .docxpsychiatric  nursing HISTORY  COLLECTION  .docx
psychiatric nursing HISTORY COLLECTION .docx
 
Mixin Classes in Odoo 17 How to Extend Models Using Mixin Classes
Mixin Classes in Odoo 17  How to Extend Models Using Mixin ClassesMixin Classes in Odoo 17  How to Extend Models Using Mixin Classes
Mixin Classes in Odoo 17 How to Extend Models Using Mixin Classes
 

Google File System

  • 2. Contents  Introduction to GFS  System Architecture  System Features  Working of GFS  Latest advancement  Conclusion  Questions
  • 3. Introduction  More than 15,000 commodity-class PC's.  Multiple clusters distributed worldwide.  Thousands of queries served per second.  One query reads 100's of MB of data.  One query consumes 10's of billions of CPU cycles.  Google stores dozens of copies of the entire Web! Conclusion: Need large, distributed, highly fault tolerant file system.
  • 4. System Architecture A GFS cluster consists of a single master and multiple chunk-servers and is accessed by multiple clients.
  • 5. Large Chunk  GFS uses large chunk: 64MB (1G = 1024 MB = 16 chunks)  Stored as a plain Linux file, which will be lazily extended up to 64MB.  Opt to many read and write on a given chunk  Reduces network overhead by keeping a connection to the chunk server.  See also Map-Reduce, Big-Table.
  • 6. Architecture (cont’d) Chunkserver Files are divided into fixed-size chunks (64 MB) Each chunk is identified by an immutable and globally unique 64 bit chunkhandle assigned by the master at the time of chunkcreation Chunkservers store chunks on local disks as Linux files and read or write chunk data specified by a chunkhandle For reliability, each chunk is replicated on multiple chunkservers. (default 3 replicas) GFS Client GFS client code linked into each application implements the file system API and communicates with the master and chunkservers to read or write data on behalf of the
  • 7. System Metadata The master stores three major types of metadata: The file and chunk namespaces The mapping from files to chunks The locations of each chunk’s replicas All metadata is kept in the master’s memory The first two types are also kept persistent by logging mutations to an operation log stored on the master’s local disk and replicated on remote machines. The master does not store third type persistently. Instead, it asks each chunkserver about its chunks at master startup
  • 8. System Features Page Rank- Probability that a random surfer visits the site Citations (Back links) • How is Page Rank calculated?? • PR(A) = (1-d) + d (PR(T1)/C(T1) + ... + PR(Tn)/C(Tn)) where, PR -> Page Rank of a page T1….Tn -> Pages that point to Page A (citations) d -> Damping Factor (0<d<1) C(A) -> No. of Links going out from A Page Rank of a page depends on-  Number of pages pointing to it.  Page Rank of the page that points to it.
  • 9. System Features  Anchor Text- text associated with the link Association with the page the link is on • • Association with the page the link points to( unique to Google) Advantages: • Anchors contain more information than the pages themselves • Documents that cannot be indexed can be displayed  Other Features: Proximity of location information in search for all hits • Track of visual presentation details •
  • 12. Google Query Evaluation Parse the query. 1. Convert words into wordIDs. 2. Seek to the start of the doclist in the short barrel for every word. 3. Scan through the doclists until there is a document that matches all the 4. search terms. Compute the rank of that document for the query. 5. If in the short barrels and at the end of any doclist, seek to the start of 6. the doclist in the full barrel for every word and go to step 4. If we are not at the end of any doclist go to step 4. 7. Sort the documents that have matched by rank and return the top k.
  • 13. Client Read  Client sends master:  read(file name, chunk index)  Master’s reply:  chunk ID, chunk version number, locations of replicas  Client sends “closest” chunkserver w/replica:  read(chunk ID, byte range)  “Closest” determined by IP address on simple rack- based network topology  Chunkserver replies with data
  • 14. Client Write  Some chunkserver is primary for each chunk  Master grants lease to primary (typically for 60 sec.)  Leases renewed using periodic heartbeat messages between master and chunkservers  Client asks server for primary and secondary replicas for each chunk  Client sends data to replicas in daisy chain  Pipelined: each replica forwards as it receives  Takes advantage of full-duplex Ethernet links
  • 15. Client Write (2)  All replicas acknowledge data write to client  Client sends write request to primary  Primary assigns serial number to write request, providing ordering  Primary forwards write request with same serial number to secondaries  Secondaries all reply to primary after completing write  Primary replies to client
  • 17. What Happen If the Master Reboots?  Replays log from disk  Recovers namespace (directory) information  Recovers file-to-chunk-ID mapping  Asks chunkservers which chunks they hold  Recovers chunk-ID-to-chunkserver mapping  If chunk server has older chunk, it’s stale  Chunk server down at lease renewal  If chunk server has newer chunk, adopt its version number  Master may have failed while granting lease
  • 18. What Happen if Chunkserver Fails?  Master notices missing heartbeats  Master decrements count of replicas for all chunks on dead chunkserver  Master re-replicates chunks missing replicas in background  Highest priority for chunks missing greatest number of replicas
  • 19. Latest Advancement  gMail - An easily configurable email service with 1GB of web space.  Blogger- A free web-based service that helps consumers publish on the web without writing code or installing software.  Google “next generation corporate s/w” - A smaller version of the google software, modified for private use.
  • 20. Conclusion  Success: used actively by Google to support search service and other applications  Availability and recoverability on cheap hardware  High throughput by decoupling control and data  Supports massive data sets and concurrent appends  Semantics not transparent to apps  Must verify file contents to avoid inconsistent regions, repeated appends (at-least-once semantics)  Performance not good for all apps  Assumes read-once, write-once workload (no client caching!)