cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Pavel Yaskevich (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (CASSANDRA-6746) Reads have a slow ramp up in speed
Date Tue, 25 Mar 2014 01:04:21 GMT

    [ https://issues.apache.org/jira/browse/CASSANDRA-6746?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13945950#comment-13945950
] 

Pavel Yaskevich commented on CASSANDRA-6746:
--------------------------------------------

The idea is pretty simple - we know SSTables are generally random access to locate the data
but once the data is located it's all sequential. So what the patch tries to do is to exploit
both of the properties - set whole file as FADV_RANDOM (which doesn't disable read-ahead but
limits it substantially) after that for every getSegment(position) which happens to be on
the key or column index boundary, mark first 64KB as FADV_SEQUENTIAL to extend read-ahead
for that portion of the file and FADV_WILLNEED first page because everything else is going
to be prefetched by the extended read-ahead window for that 64KB block so we don't have to
be very aggressive. Ideally we want to FADV_SEQUENTIAL the whole row but we can't really do
that, even better would be to do it on mmap'ed files as it's only required once per row or
column block.

> Reads have a slow ramp up in speed
> ----------------------------------
>
>                 Key: CASSANDRA-6746
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-6746
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>            Reporter: Ryan McGuire
>            Assignee: Benedict
>              Labels: performance
>             Fix For: 2.1 beta2
>
>         Attachments: 2.1_vs_2.0_read.png, 6746-buffered-io-tweaks.png, 6746-patched.png,
6746.blockdev_setra.full.png, 6746.blockdev_setra.zoomed.png, 6746.buffered_io_tweaks.logs.tar.gz,
6746.buffered_io_tweaks.write-flush-compact-mixed.png, 6746.buffered_io_tweaks.write-read-flush-compact.png,
6746.txt, buffered-io-tweaks.patch, cassandra-2.0-bdplab-trial-fincore.tar.bz2, cassandra-2.1-bdplab-trial-fincore.tar.bz2
>
>
> On a physical four node cluister I am doing a big write and then a big read. The read
takes a long time to ramp up to respectable speeds.
> !2.1_vs_2.0_read.png!
> [See data here|http://ryanmcguire.info/ds/graph/graph.html?stats=stats.2.1_vs_2.0_vs_1.2.retry1.json&metric=interval_op_rate&operation=stress-read&smoothing=1]



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Mime
View raw message