[
https://issues.apache.org/jira/browse/CASSANDRA-9304?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14633984#comment-14633984
]
David Kua edited comment on CASSANDRA-9304 at 7/20/15 8:44 PM:
---------------------------------------------------------------
https://github.com/dkua/cassandra/tree/9304
In the above branch are my improvements to COPY TO. Which basically amounts to
figuring out the token ranges from the token ring, starting some subprocesses,
giving each subprocess a subset of the ranges, and have them perform the
queries asynchronously and pass each formatted page back to the parent process
to write to the CSV file.
The resulting CSV is unordered so changes to the dtests needed to be made, see
here: https://github.com/dkua/cassandra-dtest/tree/bulk_export They have also
been submitted to the dtest repo on Github as a PR.
-----
A small benchmark was done on a table of 10M rows inside of a Vagrant box with
8 cores. The table was created using the following command
`tools/bin/cassandra-stress write n=10M -rate threads=50`.
The original single proc version took about 30 minutes to export the table.
The multi proc version takes about 7 minutes.
[~brianmhess]'s cassandra-unloader takes a little over 2 minutes.
was (Author: dkua):
https://github.com/dkua/cassandra/tree/9304
In the above branch are my improvements to COPY TO. Which basically amounts to
figuring out the token ranges from the token ring, starting some subprocesses,
giving each subprocess a subset of the ranges, and have them perform the
queries asynchronously and pass each formatted page back to the parent process
to write to the CSV file.
The resulting CSV is unordered so changes to the dtests needed to be made, see
here: https://github.com/dkua/cassandra-dtest/tree/bulk_export They have also
been submitted to the dtest repo on Github as a PR.
-----
A small benchmark was done on a table of 10M rows inside of a Vagrant box with
8 cores. The table was created using the following command
`tools/bin/cassandra-stress write n=10M -rate threads=50`.
The original single proc version took about 30 minutes to export the table.
The multi proc version takes about 7 minutes.
> COPY TO improvements
> --------------------
>
> Key: CASSANDRA-9304
> URL: https://issues.apache.org/jira/browse/CASSANDRA-9304
> Project: Cassandra
> Issue Type: Improvement
> Components: Core
> Reporter: Jonathan Ellis
> Assignee: David Kua
> Priority: Minor
> Labels: cqlsh
> Fix For: 2.1.x
>
>
> COPY FROM has gotten a lot of love. COPY TO not so much. One obvious
> improvement could be to parallelize reading and writing (write one page of
> data while fetching the next).
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)