Question

Reading this somewhat old page about Cassandra 1.1 features, it seems that it's possible to configure tables to go to a certain storage medium. After trying to search through the documentation, I could not find any information on it.

How should Cassandra's storage configuration be to support this sort of setup?


Thanks so much!

Was it helpful?

Solution

Cassandra 1.1 and later releases provide fine-grained control of table storage on disk, writing tables to disk
using separate table directories within each keyspace directory. Data files are stored using this directory
and file naming format:
/var/lib/cassandra/data/ks1/cf1/ks1-cf1-hc-1-Data.db
The new file name format includes the keyspace name to distinguish which keyspace and table the file
contains when streaming or bulk loading data. Cassandra creates a subdirectory for each table, which
allows you to symlink a table to a chosen physical drive or data volume. This provides the capability to
move very active tables to faster media, such as SSD’s for better performance, and also divvy up tables
across all attached storage devices for better I/O balance at the storage layer.

With this , hope you can understand what they mean by that. You shall create symlinks to the tables that will contain media or any other data. Since cassandra stores all the column family information in a particular manner , that is predictable. This facilitates this usage.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top