Was this page helpful?
Bulk loads SSTables from a directory to a ScyllaDB cluster via the CQL API.
Note
This tool is different than Apache Cassandra’s sstableloader, which uses an internal RPC protocol to load data.
Note
sstableloader does not support loading from encrypted files. For restoring data from encrypted files, see Migration to ScyllaDB.
Note
ScyllaDB does not support local counters used by Apache Cassandra 2.0. If you are migrating from Cassandra 2.0 or a later Cassandra version upgraded from 2.0, using SSTableLoader to migrate local counters to ScyllaDB will not work.
ScyllaDB supports global counters, which are used by Cassandra 2.1 and later.
SSTableLoader can be used to restore data from ScyllaDB or Apache Cassandra backups or to clone data from cluster to cluster. It is especially useful when the number of nodes or token range distribution between the source and target cluster are not the same. ScyllaDB takes care of distributing the data via the CQL API.
See Apache Cassandra to ScyllaDB Migration Process for an example of usage.
sstableloader [options] <dir_path>
Bulk loads the SSTables found in the specified directory (<dir_path>
) to the configured cluster. The parent directories of
<dir_path>
are used as the target keyspace/table
name. For instance, to load an SSTable named Standard1-g-1-Data.db
into
Keyspace1/Standard1
, you will need to have the files Standard1-g-1-Data.db
and Standard1-g-1-Index.db
in
the /path/to/Keyspace1/Standard1/
directory.
-alg,--ssl-alg <ALGORITHM>
- Client SSL: algorithm (default: SunX509).
-bs,--batch-size <Number of bytes above which batch is being sent out>
- Does not work with -nb
.
-ciphers,--ssl-ciphers <CIPHER-SUITES>
- Client SSL: comma-separated list of encryption suites to use.
-cl,--consistency-level <consistency level (default: ONE)>
- Sets the consistency level for statements.
-cph,--connections-per-host <connectionsPerHost>
- Number of concurrent connections-per-host.
-d,--nodes <initial hosts>
- Required. Try to connect to these hosts (comma separated) initially for ring information.
-f,--conf-path <path to config file>
- Path to cassandra.yaml file for streaming throughput and client/server SSL.
-g,--ignore-missing-columns <COLUMN NAMES...>
- Ignores the specified missing columns in tables.
-h,--help
- Displays this help message.
-i,--ignore <NODES>
- Comma-separated list of nodes to ignore (not to stream to).
-ic,--ignore-dropped-counter-data
- Ignores dropping local and remote counter shard data.
-ir,--no-infinite-retry
- Disables infinite retry policy.
-j,--threads-count <Number of threads to execute tasks>
- Runs tasks in parallel.
-ks,--keystore <KEYSTORE>
- Client SSL: full path to keystore.
-kspw,--keystore-password <KEYSTORE-PASSWORD>
- Client SSL: password of the keystore
-nb,--no-batch
- Prevents using batch statement updates for the same partition key.
--no-progress
- Prevents displaying progress.
-nx,--no-prepared
- Prevents using prepared statements.
-p,--port <port>
- Port used for connections (default: 9042).
-prtcl,--ssl-protocol <PROTOCOL>
- Client SSL: connections protocol to use (default: TLS).
-pt,--partitioner <class>
- Partitioner type to use, defaults to the cluster value.
-pw,--password <password>
- Password for ScyllaDB authentication.
-s,--ssl <SSL>
- Enables using the SSL connection(s).
-sim,--simulate
- simulate. Only print CQL generated
-st,--store-type <STORE-TYPE>
- Client SSL: type of store.
-t,--throttle <throttle>
- Throttles the speed in Mbits (unlimited by default).
-tr,--token-ranges <<lo>:<hi>,...>
- Imports only partitions that satisfy lo < token(partition) <= hi.
-translate,--translate <mapping list>
- Comma-separated list of column name mappings.
-ts,--truststore <TRUSTSTORE>
- Client SSL: full path to truststore.
-tspw,--truststore-password <TRUSTSTORE-PASSWORD>
- Client SSL: password to the truststore.
--use-unset
- Enables using unset` values in prepared statements.
--username <username>
- Username for ScyllaDB authentication.
-v,--verbose <LEVEL>
- Enables verbose output.
Was this page helpful?
On this page