Apache Cassandra™ 1.2

Commit log archive configuration

Cassandra provides commitlog archiving and point-in-time recovery.

You configure this feature in the commitlog_archiving.properties configuration file, which is located in the following directories:

  • Cassandra Packaged installs: /etc/cassandra/conf
  • Cassandra Binary installs: <install_location>/conf
  • DataStax Enterprise Packaged installs: /etc/dse/cassandra
  • DataStax Enterprise Binary installs: <install_location>/resources/cassandra/conf

The commands archive_command and restore_command expect only a single command with arguments. The parameters must be entered verbatim. STDOUT and STDIN or multiple commands cannot be executed. To workaround, you can script multiple commands and add a pointer to this file. To disable a command, leave it blank.

Procedure

  • Archive a commitlog segment:
    Command archive_command=
    Parameters %path Fully qualified path of the segment to archive.
    %name Name of the commit log.
    Example archive_command=/bin/ln %path /backup/%name
  • Restore an archived commitlog:
    Command restore_command=
    Parameters %from Fully qualified path of the an archived commitlog segment from the <restore_directories>.
    %to Name of live commit log directory.
    Example restore_command=cp -f %from %to
  • Set the restore directory location:
    Command restore_directories=
    Format restore_directories=<restore_directory_location>
  • Restore mutations created up to and including the specified timestamp:
    Command restore_point_in_time=
    Format <timestamp> (YYYY:MM:DD HH:MM:SS)
    Example restore_point_in_time=2013:12:11 17:00:00
    Restore stops when the first client-supplied timestamp is greater than the restore point timestamp. Because the order in which Cassandra receives mutations does not strictly follow the timestamp order, this can leave some mutations unrecovered.
Show/hide