skip to content
Achieving both low latency and strong consistency in large-scale systems Preview this item
ClosePreview this item
Checking...

Achieving both low latency and strong consistency in large-scale systems

Author: Seo Jin Park; John K Ousterhout; David Mazières; Mendel Rosenblum; Stanford University. Computer Science Department.
Publisher: [Stanford, California] : [Stanford University], 2019. ©2019
Dissertation: Ph.D. Stanford University 2019. Thesis
Edition/Format:   Thesis/dissertation : Document : Thesis/dissertation : eBook   Computer File : English
Summary:
Today's datacenter applications demand large-scale and low-latency systems. Unfortunately, consistency mechanisms were not designed in consideration of large-scale and low-latency settings. Most existing consistency mechanisms incur huge penalties on scalability or latency, so many datacenter systems have forgone consistency. As a result, application developers or end-users suffer from unpredictable system  Read more...
Rating:

(not yet rated) 0 with reviews - Be the first.

Find a copy online

Links to this item

Find a copy in the library

&AllPage.SpinnerRetrieving; Finding libraries that hold this item...

Details

Material Type: Document, Thesis/dissertation, Internet resource
Document Type: Internet Resource, Computer File
All Authors / Contributors: Seo Jin Park; John K Ousterhout; David Mazières; Mendel Rosenblum; Stanford University. Computer Science Department.
OCLC Number: 1125917377
Notes: Submitted to the Computer Science Department.
Description: 1 online resource
Responsibility: Seo Jin Park.

Abstract:

Today's datacenter applications demand large-scale and low-latency systems. Unfortunately, consistency mechanisms were not designed in consideration of large-scale and low-latency settings. Most existing consistency mechanisms incur huge penalties on scalability or latency, so many datacenter systems have forgone consistency. As a result, application developers or end-users suffer from unpredictable system behaviors. This dissertation presents two new consistency mechanisms for large-scale and low-latency systems: Reusable Infracture for Linearizability (RIFL) and Consistent Unordered Replication Protocol (CURP). RIFL provides a general-purpose mechanism for converting at-least-once RPC semantics to exactly-once semantics, thereby making it easy to turn non-linearizable operations into linearizable ones. RIFL is designed for large-scale systems and is lightweight enough to be used in low-latency environments. On the RAMCloud storage system, RIFL adds only 0.5 us to the 13.5 us base latency for durable writes, and it can support 1 million clients with minimal performance degradation (~5% latency increase). We also used RIFL to construct a new multi-server transaction mechanism (RIFL-TX) in RAMCloud; RIFL's facilities significantly simplified the transaction implementation. The transaction mechanism can commit simple distributed transactions in about 20 us and it outperforms the H-Store main-memory database system for the TPC-C benchmark. Replication is a must-have for large-scale systems for masking individual server failures and maintaining high availability. However, consistent replication incurs significant overhead, such as doubling the latency of operations. As a result, many large-scale systems have settled for weakly consistent replication. To address this dilemma, I present Consistent Unordered Replication Protocol (CURP), which removes most of the overhead of consistent replication. CURP avoids performance penalties by allowing clients to directly replicate their requests, as long as the requests are commutative. This strategy allows most operations to complete in 1 RTT (the same as an unreplicated system). On RAMCloud, CURP improved write latency by ~2x (14 us -> 7.1 us) and write throughput by 4x. Compared to unreplicated RAMCloud, CURP's latency overhead for 3-way replication is just 1 us (6.1 us vs. 7.1 us).

Reviews

User-contributed reviews
Retrieving GoodReads reviews...
Retrieving DOGObooks reviews...

Tags

Be the first.
Confirm this request

You may have already requested this item. Please select Ok if you would like to proceed with this request anyway.

Linked Data


\n\n

Primary Entity<\/h3>\n
<http:\/\/www.worldcat.org\/oclc\/1125917377<\/a>> # Achieving both low latency and strong consistency in large-scale systems<\/span>\n\u00A0\u00A0\u00A0\u00A0a \nschema:MediaObject<\/a>, schema:CreativeWork<\/a>, schema:Book<\/a>, bgn:Thesis<\/a>, pto:Web_document<\/a> ;\u00A0\u00A0\u00A0\nbgn:inSupportOf<\/a> \"\" ;\u00A0\u00A0\u00A0\nlibrary:oclcnum<\/a> \"1125917377<\/span>\" ;\u00A0\u00A0\u00A0\nlibrary:placeOfPublication<\/a> <http:\/\/id.loc.gov\/vocabulary\/countries\/cau<\/a>> ;\u00A0\u00A0\u00A0\nschema:author<\/a> <http:\/\/experiment.worldcat.org\/entity\/work\/data\/9609696168#Person\/park_seo_jin<\/a>> ; # Seo Jin Park<\/span>\n\u00A0\u00A0\u00A0\nschema:contributor<\/a> <http:\/\/experiment.worldcat.org\/entity\/work\/data\/9609696168#Person\/ousterhout_john_k<\/a>> ; # John K. Ousterhout<\/span>\n\u00A0\u00A0\u00A0\nschema:contributor<\/a> <http:\/\/experiment.worldcat.org\/entity\/work\/data\/9609696168#Person\/mazieres_david_david_folkman_1972<\/a>> ; # David Folkman Mazi\u00E8res<\/span>\n\u00A0\u00A0\u00A0\nschema:contributor<\/a> <http:\/\/experiment.worldcat.org\/entity\/work\/data\/9609696168#Person\/rosenblum_mendel<\/a>> ; # Mendel Rosenblum<\/span>\n\u00A0\u00A0\u00A0\nschema:contributor<\/a> <http:\/\/experiment.worldcat.org\/entity\/work\/data\/9609696168#Organization\/stanford_university_computer_science_department<\/a>> ; # Stanford University. Computer Science Department.<\/span>\n\u00A0\u00A0\u00A0\nschema:copyrightYear<\/a> \"2019<\/span>\" ;\u00A0\u00A0\u00A0\nschema:datePublished<\/a> \"2019<\/span>\" ;\u00A0\u00A0\u00A0\nschema:description<\/a> \"Today\'s datacenter applications demand large-scale and low-latency systems. Unfortunately, consistency mechanisms were not designed in consideration of large-scale and low-latency settings. Most existing consistency mechanisms incur huge penalties on scalability or latency, so many datacenter systems have forgone consistency. As a result, application developers or end-users suffer from unpredictable system behaviors. This dissertation presents two new consistency mechanisms for large-scale and low-latency systems: Reusable Infracture for Linearizability (RIFL) and Consistent Unordered Replication Protocol (CURP). RIFL provides a general-purpose mechanism for converting at-least-once RPC semantics to exactly-once semantics, thereby making it easy to turn non-linearizable operations into linearizable ones. RIFL is designed for large-scale systems and is lightweight enough to be used in low-latency environments. On the RAMCloud storage system, RIFL adds only 0.5 us to the 13.5 us base latency for durable writes, and it can support 1 million clients with minimal performance degradation (~5% latency increase). We also used RIFL to construct a new multi-server transaction mechanism (RIFL-TX) in RAMCloud; RIFL\'s facilities significantly simplified the transaction implementation. The transaction mechanism can commit simple distributed transactions in about 20 us and it outperforms the H-Store main-memory database system for the TPC-C benchmark. Replication is a must-have for large-scale systems for masking individual server failures and maintaining high availability. However, consistent replication incurs significant overhead, such as doubling the latency of operations. As a result, many large-scale systems have settled for weakly consistent replication. To address this dilemma, I present Consistent Unordered Replication Protocol (CURP), which removes most of the overhead of consistent replication. CURP avoids performance penalties by allowing clients to directly replicate their requests, as long as the requests are commutative. This strategy allows most operations to complete in 1 RTT (the same as an unreplicated system). On RAMCloud, CURP improved write latency by ~2x (14 us -> 7.1 us) and write throughput by 4x. Compared to unreplicated RAMCloud, CURP\'s latency overhead for 3-way replication is just 1 us (6.1 us vs. 7.1 us).<\/span>\"@en<\/a> ;\u00A0\u00A0\u00A0\nschema:exampleOfWork<\/a> <http:\/\/worldcat.org\/entity\/work\/id\/9609696168<\/a>> ;\u00A0\u00A0\u00A0\nschema:inLanguage<\/a> \"en<\/span>\" ;\u00A0\u00A0\u00A0\nschema:name<\/a> \"Achieving both low latency and strong consistency in large-scale systems<\/span>\"@en<\/a> ;\u00A0\u00A0\u00A0\nschema:productID<\/a> \"1125917377<\/span>\" ;\u00A0\u00A0\u00A0\nschema:url<\/a> <http:\/\/purl.stanford.edu\/xc977hj8024<\/a>> ;\u00A0\u00A0\u00A0\nwdrs:describedby<\/a> <http:\/\/www.worldcat.org\/title\/-\/oclc\/1125917377<\/a>> ;\u00A0\u00A0\u00A0\u00A0.\n\n\n<\/div>\n\n

Related Entities<\/h3>\n
<http:\/\/experiment.worldcat.org\/entity\/work\/data\/9609696168#Organization\/stanford_university_computer_science_department<\/a>> # Stanford University. Computer Science Department.<\/span>\n\u00A0\u00A0\u00A0\u00A0a \nschema:Organization<\/a> ;\u00A0\u00A0\u00A0\nschema:name<\/a> \"Stanford University. Computer Science Department.<\/span>\" ;\u00A0\u00A0\u00A0\u00A0.\n\n\n<\/div>\n
<http:\/\/experiment.worldcat.org\/entity\/work\/data\/9609696168#Person\/mazieres_david_david_folkman_1972<\/a>> # David Folkman Mazi\u00E8res<\/span>\n\u00A0\u00A0\u00A0\u00A0a \nschema:Person<\/a> ;\u00A0\u00A0\u00A0\nschema:birthDate<\/a> \"1972<\/span>\" ;\u00A0\u00A0\u00A0\nschema:familyName<\/a> \"Mazi\u00E8res<\/span>\" ;\u00A0\u00A0\u00A0\nschema:givenName<\/a> \"David Folkman<\/span>\" ;\u00A0\u00A0\u00A0\nschema:givenName<\/a> \"David<\/span>\" ;\u00A0\u00A0\u00A0\nschema:name<\/a> \"David Folkman Mazi\u00E8res<\/span>\" ;\u00A0\u00A0\u00A0\u00A0.\n\n\n<\/div>\n
<http:\/\/experiment.worldcat.org\/entity\/work\/data\/9609696168#Person\/ousterhout_john_k<\/a>> # John K. Ousterhout<\/span>\n\u00A0\u00A0\u00A0\u00A0a \nschema:Person<\/a> ;\u00A0\u00A0\u00A0\nschema:familyName<\/a> \"Ousterhout<\/span>\" ;\u00A0\u00A0\u00A0\nschema:givenName<\/a> \"John K.<\/span>\" ;\u00A0\u00A0\u00A0\nschema:name<\/a> \"John K. Ousterhout<\/span>\" ;\u00A0\u00A0\u00A0\u00A0.\n\n\n<\/div>\n
<http:\/\/experiment.worldcat.org\/entity\/work\/data\/9609696168#Person\/park_seo_jin<\/a>> # Seo Jin Park<\/span>\n\u00A0\u00A0\u00A0\u00A0a \nschema:Person<\/a> ;\u00A0\u00A0\u00A0\nschema:familyName<\/a> \"Park<\/span>\" ;\u00A0\u00A0\u00A0\nschema:givenName<\/a> \"Seo Jin<\/span>\" ;\u00A0\u00A0\u00A0\nschema:name<\/a> \"Seo Jin Park<\/span>\" ;\u00A0\u00A0\u00A0\u00A0.\n\n\n<\/div>\n
<http:\/\/experiment.worldcat.org\/entity\/work\/data\/9609696168#Person\/rosenblum_mendel<\/a>> # Mendel Rosenblum<\/span>\n\u00A0\u00A0\u00A0\u00A0a \nschema:Person<\/a> ;\u00A0\u00A0\u00A0\nschema:familyName<\/a> \"Rosenblum<\/span>\" ;\u00A0\u00A0\u00A0\nschema:givenName<\/a> \"Mendel<\/span>\" ;\u00A0\u00A0\u00A0\nschema:name<\/a> \"Mendel Rosenblum<\/span>\" ;\u00A0\u00A0\u00A0\u00A0.\n\n\n<\/div>\n
<http:\/\/id.loc.gov\/vocabulary\/countries\/cau<\/a>>\u00A0\u00A0\u00A0\u00A0a \nschema:Place<\/a> ;\u00A0\u00A0\u00A0\ndcterms:identifier<\/a> \"cau<\/span>\" ;\u00A0\u00A0\u00A0\u00A0.\n\n\n<\/div>\n