1 / 15

Consistency and replication

This chapter discusses client-side caching, server-side replication, and various approaches to consistency and replication in distributed file systems. Topics include NFS caching, Coda's callback mechanism for cache coherence, client-side caching for portable devices, server replication in Coda, replication in peer-to-peer file systems, and file replication in grid systems.

jhassell
Download Presentation

Consistency and replication

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Advanced Operating SystemsChapter 11Distributed File systems11.6 Consistency and ReplicationPresented by: Harini Penta

  2. Consistency and replication • Client side caching • Server side Replica • Replication in peer-to-peer file systems • File replication in grid systems

  3. Client-Side Caching • Figure 11-21. Client-side caching in NFS.

  4. Client side caching Caching in NFS: • Different strategies exist to handle consistency of the cached data, cached attributes, and so on. • In NFSv4 a server may delegate some of its rights to a client when a file is opened • An important consequence of delegating a file to a client is that the server needs to be able to recall the delegation • In particular, attribute values of the same file cached by two different clients may be different unless the clients keep these attributes mutually consistent. • To mitigate the effects of inconsistencies, NFS uses leases on cached attributes, file handles, and directories

  5. Client-Side Caching • Figure 11-22. Using the NFSv4 callback mechanism to recall file delegation.

  6. Client side Caching in Coda: • Unlike many other distributed file systems. cache coherence in Coda is maintained by means of callbacks • The interesting aspect of this scheme is that as long as a client knows it has an outstanding callback promise at the server, it can safely access the file locally Client side Caching for Portable Devices: • In most cases, an explicit upload/download model is used for maintaining files on portable storage devices. • If the file is locally available, it can be returned to the client, otherwise a data transfer will need to take place. • However, for many portable storage devices, we can expect that the user will use special programs to pre-install files on the device.

  7. Client-Side Caching in Coda • Figure 11-23. The use of local copies when opening a session in Coda.

  8. Server side replication Server replication in coda: • Coda allows file servers to be replicated, the unit of replication is a collection of files called a volume. • The collection of Coda servers that have a copy of a volume, are known as that volume's Volume Storage Group, or simply VSG • A client's Accessible Volume Storage Group (AVSG) for a volume consists of those servers in that volume's VSG that the client can contact at the moment.

  9. Server Replication

  10. Server side replication • In particular, a server Sj in a VSG maintains a Coda version vector CV\ti(f) for each file t contained in that VSG • An update of t at server Sj will lead to an increment of CV\ti(f)[i]. • The three servers CV\ti(f) is initially equal to [1,1,1] for each server Sj. After updating f, client A multicasts fto each server in its AVSG, that is, S1 and S2 , Both servers will then record that their respective copy has been updated, but not that of S3, CVV1(f)= CVV2(f)=[2,2,1] • Meanwhile , client B will be allowed to open a session in which it receives a copy of f from server S3, and subsequently update f as well. CW3(f)=[1,1,2]

  11. Replication in peer-to-peer file systems Unstructured peer-to-peer systems: • Independent of the way broadcasting is limited, it should be clear that if files are replicated, searching becomes easier and faster. • The more popular a file is, the more replicas we create and distribute across the overlay. • Replication in unstructured peer-to-peer systems happens naturally when users download files from others and subsequently make them available to the community. • Controlling these networks is very difficult in practice, except when parts are controlled by a single organization

  12. Structured peer-to-peer systems: • the efficiency of lookup operations in structured peer-to-peer systems, replication is primarily deployed to balance the load between the nodes. • One commonly applied method is to simply replicate a file along the path that a query has followed from source to destination. • More specifically, when a query from node P to Q is routed through node R, R will check whether any of its files should be offloaded to P. • If P can accept file f from R, each node visited on the route from P to R will install a pointer for fto P, indicating that a replica of f can be found at P.

  13. Structured Peer-to-Peer Systems • Figure 11-25. Balancing load in a peer-to-peer system by replication.

  14. File replication in grid systems • Naturally, performance plays a crucial role in this area as many Grid applications are highly compute-intensive • A key observation is that in many Grid applications data are read only • Replication in Grid systems mainly evolves around the problem of locating the best sources to copy data from. This problem can be solved by special replica location services

  15. Thank You Thank You Thank You

More Related