Show Menu

Apache Cassandra CQL Cheat Sheet by

My most common CQLs for developing and administrating
apache     database     cassandra     cql

Symbolic Link to an Encrypted LVM Volume

ls -lrtah /var/lib/cassandra
lrwxrwxrwx 1 cassandra cassandra 34 Sep 9 19:13 /var/lib/cassandra -> /media/SecureDataStore/cassandra
sudo chown -R cassandra:cassandra /var/lib/cassandra
sudo chown -R cassandra:cassandra /media/SecureDataStore/cassandra

Logging Into CQLSH

export CQLSH_HOST=<rpc address>
export CQLSH_PORT=9042
cqlsh -u cassandra
Password:
cassandra@cqlsh> exit

Creating DB Users, Roles, and Access

https://www.datastax.com/dev/blog/role-based-access-control-in-cassandra

CREATE ROLE supervisor;
GRANT MODIFY ON warehouse.orders TO supervisor;
GRANT SELECT ON warehouse.addresses TO supervisor;

CREATE ROLE bob WITH PASSWORD = 'password' AND LOGIN = true;
GRANT supervisor TO bob;

LIST ALL PERMISSIONS OF bob;

CREATE ROLE office_admin;
GRANT SELECT ON KEYSPACE office TO office_admin;
GRANT MODIFY ON KEYSPACE office TO office_admin;
GRANT office_admin TO bob;

REVOKE MODIFY ON KEYSPACE office TO office_admin;

Exploring Key Spaces and Tables

DESCRIBE keypsaces;
USE <yourkeyspace>;
DESCRIBE tables;
 

Minimum Dev Config­uration

sudo nano /etc/cassandra/cassandra.yaml
cluster_name: 'Name of Cluster'
rpc_address: <Your IP. Do not use a FQDN>
authenticator: PasswordAuthenticator

sudo chmod 777 /etc/security/limits.conf
echo "* - memlock unlimited" >> /etc/security/limits.conf
echo "* - nofile 100000" >> /etc/security/limits.conf
echo "* - nproc 32768" >> /etc/security/limits.conf
echo "* - as unlimited" >> /etc/security/limits.conf
sudo chmod 644 /etc/security/limits.conf

Start Stop Service

sudo -u cassandra cassandra
ps -ef | grep cassandra
sudo kill -9 <PID of cassandra>

Python Batch Inserts

from cassandra.auth import PlainTextAuthProvider
from cassandra.cluster import Cluster
from cassandra.query import BatchStatement
auth_provider_omni = PlainTextAuthProvider(
    username=settings.cassandra_username,
    password=settings.cassandra_password
)
cluster_omni = Cluster(
    [settings.cassandra_host],
    auth_provider=auth_provider_omni,
    port=settings.cassandra_port
    # ssl_options=ssl_opts
)
conn = self.cluster_omni.connect(
    settings.cassandra_keyspace_name
)

batch = BatchStatement()
sql_str = (
                'INSERT INTO ' + TABLE_PREFIX + '_' +
                location.lower() + '_' +
                demographic.lower() +
                ' (date,value) VALUES (?,?)'
)
sql = conn.prepare(sql_str)
for value in values:
    batch.add(sql, value['date'], value['value'])
conn.execute(batch)
batch.clear()
conn.shutdown()

Download the Apache Cassandra CQL Cheat Sheet

2 Pages
//media.cheatography.com/storage/thumb/edendekker_apache-cassandra-cql.750.jpg

PDF (recommended)

Alternative Downloads

Share This Cheat Sheet!

 

Comments

No comments yet. Add yours below!

Add a Comment

Your Comment

Please enter your name.

    Please enter your email address

      Please enter your Comment.

          Related Cheat Sheets

          mod_rewrite Cheat Sheet
          MySQL Cheat Sheet
          Selenium WebDriver Cheat Sheet Cheat Sheet

          More Cheat Sheets by edendekker

          Jenkins CLI Cheat Sheet