cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jonathan Ellis (JIRA)" <>
Subject [jira] [Resolved] (CASSANDRA-4304) Add bytes-limit clause to queries
Date Tue, 24 Jun 2014 22:26:24 GMT


Jonathan Ellis resolved CASSANDRA-4304.

    Resolution: Later

> Add bytes-limit clause to queries
> ---------------------------------
>                 Key: CASSANDRA-4304
>                 URL:
>             Project: Cassandra
>          Issue Type: New Feature
>          Components: API, Core
>            Reporter: Christian Spriegel
>         Attachments: TestImplForSlices.patch
> Idea is to add a second limit clause to (slice)queries. This would allow easy loading
of batches, even if content is variable sized.
> Imagine the following use case:
> You want to load a batch of XMLs, where each is between 100bytes and 5MB large.
> Currently you can load either
> - a large number of XMLs, but risk OOMs or timeouts
> or
> - a small number of XMLs, and do too many queries where each query usually retrieves
very little data.
> With cassandra being able to limit by size and not just count, we could do a single query
which would never OOM but always return a decent amount of data -- with no extra overhead
for multiple queries.
> Few thoughts from my side:
> - The limit should be a soft limit, not a hard limit. Therefore it will always return
at least one row/column, even if that one large than the limit specifies.
> - HintedHandoffManager:303 is already doing a InMemoryCompactionLimit/averageColumnSize
to avoid OOM. It could then simply use the new limit clause :-)
> - A bytes-limit on a range- or indexed-query should always return a complete row

This message was sent by Atlassian JIRA

View raw message