[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: A quick question on unlogged batch

Thank you all. Now I understand whether to use batch or asynchronous writes really depends on use case. Till now batch writes work for me in a 8 nodes cluster with over 500 million requests per day.

Date: 2018-11-02 01:14
To: user
Subject: Re: A quick question on unlogged batch
I know this is the official recommendation, and has been for a while.  I highly recommend testing it for yourself though, as our own testing has shown that for _most_ versions of Cassandra (not all), unlogged batch meaningfully outperforms parallel execution of individual statements, especially at scale, and creates lower memory pressure on both the clients and cluster. 

The biggest major downside to unlogged batches are that the unit of retry during failure is the entire batch.  So if you use a retry policy, write timeouts will tip over your cluster a lot faster than individual statements.  Bounding your batch sizes helps mitigate this risk.  

On Thu, Nov 1, 2018 at 2:04 AM onmstester onmstester <onmstester@xxxxxxxx.invalid> wrote:
Please use batch (any type of batch) for statements that only concerns a single partition, otherwise it cause a lot of performance degradation on your cluster and after a while throughput would be alot less than parallel single statements with executeAsync.

Sent using Zoho Mail

============ Forwarded message ============
Date : Thu, 01 Nov 2018 10:48:33 +0330
Subject : A quick question on unlogged batch
============ Forwarded message ============

Hi All,

What's the difference between logged batch and unlogged batch? I'm asking this question it's because I'm seeing the below WARNINGs after a new app started writting to the cluster. 

WARNING in system.log:
Unlogged batch covering 135 partitions detected against table [cargts.eventdata]. You should use a logged batch for atomicity, or asynchronous writes for performance

Best regards,