Presentation is loading. Please wait.

Presentation is loading. Please wait.

1 High-Availability LH* Schemes with Mirroring W. Litwin, M.-A. Neimat U. Paris 9 & HPL Palo-Alto

Similar presentations


Presentation on theme: "1 High-Availability LH* Schemes with Mirroring W. Litwin, M.-A. Neimat U. Paris 9 & HPL Palo-Alto"— Presentation transcript:

1 1 High-Availability LH* Schemes with Mirroring W. Litwin, M.-A. Neimat U. Paris 9 & HPL Palo-Alto litwin@cid5.etud.dauphine.fr

2 2 LH* with mirroring n A Scalable Dsitributed Data Structures n Data are in Distributed RAM of server nodes of a multicomputer n Uses the mirroring to survive : –every single node failure –most of multiple node failures n Moderate performance deterioration with respect to basic LH*

3 3 PlanPlan n Introduction –multicomputers & SDDSs –need for high availability n Principles of LH* with mirroring n Design issues n Performance n Conclusion

4 4 MulticomputersMulticomputers n A collection of loosely coupled computers –common and/or preexisting hardware –share nothing architecture –message passing through high-speed net n Network multicomputers –use general purpose nets »LANs: Ethernet, Token Ring, Fast Ethernet, SCI, FDDI... »WANs: ATM... n Switched multicomputers –use a bus, »e.g., Transputer & Parsytec

5 5 Client Server Network multicomputer

6 6 Why multicomputers ? n Potentially unbeatable price-performance ratio –Much cheaper and more powerful than supercomputers »1500 WSs at HPL with 500+ GB of RAM & TBs of disks n Potential computing power –file size –access and processing time –throughput n For more pro & cons : –NOW project (UC Berkeley) –Tanenbaum: "Distributed Operating Systems", Prentice Hall, 1995

7 7 Why SDDSs n Multicomputers need data structures and file systems n Trivial extensions of traditional structures are not best  hot-spots  scalability  parallel queries  distributed and autonomous clients

8 8 What is an SDDS n A scalable data structure where: + Data are on servers –always available for access +Queries come from autonomous clients –available for access only on its initiative +There is no centralized directory +Clients sometime make addressing errors »Clients have less or more adequate image of the actual file structure, Servers are able to forward the queries to the correct address –perhaps in several messages + Servers send Image Adjustment Messages »Clients do not make same error twice

9 9 An SDDS Servers

10 10 An SDDS Servers growth through splits under inserts

11 11 An SDDS growth through splits under inserts Servers

12 12 An SDDS Clients Servers

13 13 An SDDS Clients

14 14 Clients An SDDS

15 15 Clients IAM An SDDS

16 16 Clients An SDDS

17 17 Clients An SDDS

18 18 Known SDDSs Hachage Classics SDDS (1993) Arbre 1-d LH* schemes DDH Breitbart & al RP* schemes Kroll & Widmayer Arbre k-d k-RP* schemes DS

19 19 Known SDDSs Hachage Classics SDDS (1993) Arbre 1-d LH* schemes DDH Breitbart & al RP* schemes Kroll & Widmayer Arbre k-d k-RP* schemes DS You are here

20 20 LH* ( A classic) n Allows for key based hash files –generalizes the LH addressing schema n Load factor 70 - 90 % n At most 2 forwarding messages –regardless of the size of the file n In practice, 1 m/insert and 2 m/search on the average n 4 messages in the worst case n Search time of a ms (10 Mb/s net) and of us (Gb/s net

21 21 10,000 inserts Global cost Client's cost

22 22 High-availability LH* schemes n In a large multicomputer, it is unlikely that all servers are up n Consider the probability that a bucket is up is 99 % –bucket is unavailable 3 days per year n One stores every key in 1 bucket –case of typical SDDSs, LH* included n Probability that n-bucket file is entirely up is » 37 % for n = 100 »0 % for n = 1000

23 23 High-availability LH* schemes n Using 2 buckets to store a key, one may expect : –99 % for n = 100 –91 % for n = 1000 n High availability SDDS –make sense –are the only way to reliable large SDDS files

24 24 High-availability LH* schemes n High-availability LH* schemes keep data available despite server failures –any single server failure –most of two server failures –some catastrophic failures n Three types of schemes are currently known –with mirroring –with striping or grouping

25 25 LH* with Mirroring n There are two files called mirrors n Every insert propagates to both –the propagation is done by the servers n n Splits are autonomous n Every search is directed towards one of the mirrors –the primary mirror for the corresponding client n If a bucket failure is detected, the spare is produced instantly at some site –the storage for failed bucket is reclaimed –it can be allocated to another bucket

26 26 Basic configuration Mirrors n Protection against a catastrophique failure

27 27 High-availability LH* schemes n Two types of LH* schemes with mirroring appear n Structurally-alike (SA) mirrors –same file parameters »keys are presumably at the same buckets n Structurally-dissimilar (SD) mirrors »keys are presumably at different buckets –loosely coupled = same LH-functions h i –minimally coupled = different LH-functions h i

28 SA-MirrorsSA-Mirrors

29 SA-Mirrors new forwarding paths

30 30 Failure management n A bucket failure can be discovered –by the client –by the forwarding or mirroring server –by the LH* split coordinator n The failure discovery triggers the instant creation of a spare bucket –a copy of the failed bucket constructed from the mirror file »from one or more buckets

31 31 Spare creation n The spare creation process is managed by the coordinator –choice of the node for the spare –transfert of the records from the mirror file »the algo is in the paper –propagation of the spare node address to the node of the failed bucket »when the node recovers, it contacts the coordinator

32 32 And the client ? n The client can be unaware of the failure –it then may send the message to the failed node »that perhaps recovered and has another bucket n' n Problem –bucket n' should recognize an addressing error –should forward the query to the spare »a case that did not exist for the basic LH*

33 33 SolutionSolution n Every client sends with the query Q the address n of the bucket Q should reach n if n <> n', then bucket n' resends the query to bucket n –that must be the spare n Bucket n sends an IAM to the client to adjust its alloc. table –a new kind of IAM

34 34 SA / SD mirrors SA-mirrors SD-mirrors

35 35 n SA-mirrors –most efficient for access and spare production –but max loss in the case of two-bucket failure n Loosely-coupled SD-mirrors –less efficient for access and spare production –lesser loss of data for a two-bucket failure n Minimally-coupled SD-mirrors –least efficient for access and spare production –min. loss for a two-bucket failure ComparisonComparison

36 36 ConclusionConclusion n LH* with mirroring is first SDDS for high- availability –for large multicomputer files –for high-availability DBs »avoids to create fragments replicas n Variants adapted to importance of different kinds of failures –How important is a multiple bucket failure ?

37 37 Price to pay n Moderate access performance deterioration as compared to basic LH* –an additional message to the mirror per insert –a few messages when failures occur n Double storage for the file –can be a drawback

38 38 Future directions n Implementation n Performance analysis –in presence of failures n Concurrency & transaction management n Other high-availability schemes –RAID-like

39 39 FIN Thank you for your attention W. Litwin litwin@cid5.etud.dauphine.fr

40 40


Download ppt "1 High-Availability LH* Schemes with Mirroring W. Litwin, M.-A. Neimat U. Paris 9 & HPL Palo-Alto"

Similar presentations


Ads by Google