Is this possible?

All reads and writes for a given key will always go to the same node from a client. It seems the only thing needed is to allow the clients to compute which node is the closes replica for the given key using the same algorithm C* uses. When the first replica receives the write request, it will write to itself which should complete before any of the other replicas and then return. The loads should still stay balanced if using random partitioner. If the first replica becomes unavailable (however that is defined), then the clients can send to the next repilca in the ring and switch from ONE write/reads to QUORUM write/reads temporarily until the first replica becomes available again. QUORUM is required since there could be some replicas that were not updated after the first replica went down.

Will this work? The goal is to have strong consistency with a read/write consistency level as low as possible while secondarily a network performance boost.

Reply via email to