Bias Performance to Persistence


#1

Is there a way to bias the server to significantly favour persistence over cache read performance.

Here is what we are thinking about. We are considering partitioning our Couchbase Servers into two node groups.

Node Group 1 is the Read Group with current active user data pre-staged in JSON ready for the client to consume.
Node Group 2 is the Write Group - with as high a degree of write performance/integrity as possible, basic aim is to reduce the Age in the Write Cache to as close to zero as possible.

The application is ‘smart’ enough to know (via a ‘Request Signature’) when to access the Read Group and when to access the Write Group, and the Application DA layers know to fire an update of the Read Group data for a user.

My concerns are that there is a significant degree of risk of data loss once the Age extends beyond a second or so.


#2

Hey @drigby can you please advise here on what is the best approach

thanks
Laura


#3

In general Couchbase will attempt to write items in the disk write queue to disk as fast as possible. You can control the relative priority of buckets by setting the Disk I/O Optimisation on the - see http://docs.couchbase.com/admin/admin/Tasks/tasks-create-readwrite-existing.html.

Note if you are changing an existing bucket then it will need to re-warmup; i.e. it will be unavailable while the Bucket is recreated from the on-disk data.