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
<onmstes...@zoho.com.invalid> wrote:

> Read this:
> https://docs.datastax.com/en/cql/3.3/cql/cql_reference/batch_r.html
> 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 <https://www.zoho.com/mail/>
>
>
> ============ Forwarded message ============
> From : wxn...@zjqunshuo.com
> To : "user"<user@cassandra.apache.org>
> 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,
> -Simon
>
>

Reply via email to