cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jonathan Ellis (JIRA)" <j...@apache.org>
Subject [jira] Commented: (CASSANDRA-579) Add support to io.Streaming API for sending Streams
Date Fri, 22 Jan 2010 17:09:21 GMT

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

Jonathan Ellis commented on CASSANDRA-579:
------------------------------------------

one side has to compact eventually, so it should be the sending side that compacts, since
that gets you reduced bandwidth; there's no benefit by having receiver compact.  it would
be quite easy to compact to a socket stream instead of a disk one.  (you lose transferTo,
but receiver can still do transferFrom.  and we could special case only-a-single-source-sstable
with transferTo if that is worth it...)

> Add support to io.Streaming API for sending Streams
> ---------------------------------------------------
>
>                 Key: CASSANDRA-579
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-579
>             Project: Cassandra
>          Issue Type: Improvement
>            Reporter: Stu Hood
>             Fix For: 0.6
>
>
> The io.Streaming API currently requires a file on disk to stream, which means that bootstrap
and repairs need to perform an anti-compaction that writes a bunch of data to disk, only to
have it be deleted after the streaming has finished.
> Ideally, the Streaming API should allow for streaming from an InputStream (or any other
class we think we need to design to make the streaming as efficient as possible). That way,
anti-compaction for repair/bootstrap does not perform any writing: it simply streams the relevant
portion of the file to the neighbor.
> Additionally, this opens up interesting possibilities, such as providing the Streaming
API as a (Java only?) client API. One use case would be for a Hadoop OutputFormat: rather
than writing BinaryMemtables, the OutputFormat could literally write an SSTable to the stream.
This might require better integration with gossip, to ensure that you aren't writing to the
completely wrong node.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message