[ https://issues.apache.org/jira/browse/CASSANDRA-14404?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16448355#comment-16448355 ]
Ariel Weisberg commented on CASSANDRA-14404: -------------------------------------------- This is not sloppy quorums. Sloppy quorums don't provide strong consistency. We still enforce strict quorum membership. >From the Dynamo paper: {quote}To remedy this it does not enforce strict quorum membership and instead it uses a “sloppy quorum”; all read and write operations are performed on the first N healthy nodes from the preference list, which may not always be the first N nodes encountered while walking the consistent hashing ring. {quote} We aren't going to allow you to use transient replication with 2i or MV in version 1. > Transient Replication & Cheap Quorums: Decouple storage requirements from > consensus group size using incremental repair > ----------------------------------------------------------------------------------------------------------------------- > > Key: CASSANDRA-14404 > URL: https://issues.apache.org/jira/browse/CASSANDRA-14404 > Project: Cassandra > Issue Type: New Feature > Components: Coordination, Core, CQL, Distributed Metadata, Hints, > Local Write-Read Paths, Materialized Views, Repair, Secondary Indexes, > Testing, Tools > Reporter: Ariel Weisberg > Assignee: Ariel Weisberg > Priority: Major > Fix For: 4.0 > > > Transient Replication is an implementation of [Witness > Replicas|http://www2.cs.uh.edu/~paris/MYPAPERS/Icdcs86.pdf > (https://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=1&cad=rja&uact=8&ved=0ahUKEwi834a%E2%80%948HaAhWCneAKHdj8DzAQFggpMAA&url=http%3A%2F%2Fwww2.cs.uh.edu%2F~paris%2FMYPAPERS%2FIcdcs86.pdf&usg=AOvVaw0GfCaaAtdzHiM65du1-qeI)] > that leverages incremental repair to make full replicas consistent with > transient replicas that don't store the entire data set. Witness replicas are > used in real world systems such as Megastore and Spanner to increase > availability inexpensively without having to commit to more full copies of > the database. Transient replicas implement functionality similar to > upgradable and temporary replicas from the paper. > With transient replication the replication factor is increased beyond the > desired level of data redundancy by adding replicas that only store data when > sufficient full replicas are unavailable to store the data. These replicas > are called transient replicas. When incremental repair runs transient > replicas stream any data they have received to full replicas and once the > data is fully replicated it is dropped at the transient replicas. > Cheap quorums are a further set of optimizations on the write path to avoid > writing to transient replicas unless sufficient full replicas are available > as well as optimizations on the read path to prefer reading from transient > replicas. When writing at quorum to a table configured to use transient > replication the quorum will always prefer available full replicas over > transient replicas so that transient replicas don't have to process writes. > Rapid write protection (similar to rapid read protection) reduces tail > latency when full replicas are temporarily late to respond by sending writes > to additional replicas if necessary. > Transient replicas can generally service reads faster because they don't have > do anything beyond bloom filter checks if they have no data. With vnodes and > larger size clusters they will not have a large quantity of data even in > failure cases where transient replicas start to serve a steady amount of > write traffic for some of their transiently replicated ranges. -- This message was sent by Atlassian JIRA (v7.6.3#76005) --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org