Posts Tagged ‘Apache Cassandra’

PC & OS -Information

vijay@hp-15-notebook-pc:~$ uname -a
Linux vijay.cluster.node1 3.16.0-33-generic #44~14.04.1-Ubuntu SMP Fri Mar 13 10:33:29 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux

vijay@hp-15-notebook-pc:~$ lsb_release -a
No LSB modules are available.
Distributor ID:    Ubuntu
Description:    Ubuntu 14.04.2 LTS
Release:    14.04
Codename:    trusty

RAM      : 4 GB (3.3 GiB available)
Processor : AMD A8-6410 APU with AMD Radeon R5 Graphics × 4
OS type      : 64 bit
Disk      : 109.6 GB

Download

http://apache.cs.utah.edu/cassandra/2.0.15/apache-cassandra-2.0.15-bin.tar.gz

Make Sure Java is available

vijay@hp-15-notebook-pc:~/developer/installations$ java -version
java version “1.7.0_45”
Java(TM) SE Runtime Environment (build 1.7.0_45-b18)
Java HotSpot(TM) 64-Bit Server VM (build 24.45-b08, mixed mode)

Unzip

vijay@hp-15-notebook-pc:~/developer/installations$ tar -xf apache-cassandra-2.0.15-bin.tar.gz

vijay@hp-15-notebook-pc:~/developer/installations$ ls -l
total 17704
drwxrwxr-x 9 vijay vijay     4096 May 20 21:24 apache-cassandra-2.0.15
-rw-rw-r– 1 vijay vijay 18111795 May 20 21:22 apache-cassandra-2.0.15-bin.tar.gz
drwxr-xr-x 8 vijay vijay     4096 Oct  8  2013 jdk1.7.0_45
drwxr-xr-x 5 vijay vijay     4096 Apr 19 20:27 sublime
vijay@hp-15-notebook-pc:~/developer/installations$ rm -r apache-cassandra-2.0.15-bin.tar.gz
vijay@hp-15-notebook-pc:~/developer/installations$ ls
apache-cassandra-2.0.15  jdk1.7.0_45  sublime
vijay@hp-15-notebook-pc:~/developer/installations$ cd apache-cassandra-2.0.15/
vijay@hp-15-notebook-pc:~/developer/installations/apache-cassandra-2.0.15$ ls
bin  CHANGES.txt  conf  interface  javadoc  lib  LICENSE.txt  NEWS.txt  NOTICE.txt  pylib  tools
vijay@hp-15-notebook-pc:~/developer/installations/apache-cassandra-2.0.15$ ls -l
total 320
drwxr-xr-x 2 vijay vijay   4096 May 20 21:24 bin
-rw-r–r– 1 vijay vijay 220336 May 13 21:17 CHANGES.txt
drwxr-xr-x 3 vijay vijay   4096 May 20 21:24 conf
drwxr-xr-x 2 vijay vijay   4096 May 20 21:24 interface
drwxr-xr-x 4 vijay vijay   4096 May 20 21:24 javadoc
drwxr-xr-x 3 vijay vijay   4096 May 20 21:24 lib
-rw-r–r– 1 vijay vijay  11609 May 13 21:17 LICENSE.txt
-rw-r–r– 1 vijay vijay  60141 May 13 21:17 NEWS.txt
-rw-r–r– 1 vijay vijay   2030 May 13 21:17 NOTICE.txt
drwxr-xr-x 3 vijay vijay   4096 May 20 21:24 pylib
drwxr-xr-x 4 vijay vijay   4096 May 13 21:17 tools
vijay@hp-15-notebook-pc:~/developer/installations/apache-cassandra-2.0.15$ pwd
/home/vijay/developer/installations/apache-cassandra-2.0.15
vijay@hp-15-notebook-pc:~/developer/installations/apache-cassandra-2.0.15$ cd bin/
vijay@hp-15-notebook-pc:~/developer/installations/apache-cassandra-2.0.15/bin$ ls
cassandra          cassandra.in.sh  debug-cql.bat     nodetool.bat      sstablekeys.bat    sstablescrub.bat  sstableupgrade.bat
cassandra.bat      cqlsh            json2sstable      sstable2json      sstableloader      sstablesplit      stop-server
cassandra-cli      cqlsh.bat        json2sstable.bat  sstable2json.bat  sstableloader.bat  sstablesplit.bat
cassandra-cli.bat  debug-cql        nodetool          sstablekeys       sstablescrub       sstableupgrade
vijay@hp-15-notebook-pc:~/developer/installations/apache-cassandra-2.0.15/bin$

Change Directory Permissions

Next, make sure that the folders Cassandra accesses, such as the log folder, exists and that Cassandra has the right to write on it:

sudo mkdir /var/lib/cassandra
sudo mkdir /var/log/cassandra
sudo chown -R $USER:$GROUP /var/lib/cassandra
sudo chown -R $USER:$GROUP /var/log/cassandra

Set Cassandra Path and Home

vijay@cluster-01:~$ sudo vim ~/.bashrc
vijay@cluster-01:~$ source ~/.bashrc
vijay@cluster-01:~$ tail ~/.bashrc

#——— Cassandra

export export CASSANDRA_HOME=/home/vijay/developer/installations/apache-cassandra-2.0.15
export PATH=$PATH:$CASSANDRA_HOME/bin
vijay@cluster-01:~$

Start Cassandra:

restart terminal session and run below command.

vijay@cluster-01:~$ cassandra -p

STOP Cassandra:

vijay@cluster-01:~$ jps
4180 CassandraDaemon
4414 Jps
vijay@cluster-01:~$ sudo kill -9 4180   (or) pkill -f CassandraDaemon
[sudo] password for vijay:
vijay@cluster-01:~$ jps
4439 Jps

Start Cassandra and start CLI – cqlsh

vijay@cluster-01:~$ cqlsh
Connected to Test Cluster at localhost:9160.
[cqlsh 4.1.1 | Cassandra 2.0.15 | CQL spec 3.1.1 | Thrift protocol 19.39.0]
Use HELP for help.

Create a keyspace — a namespace of tables.
cqlsh> CREATE KEYSPACE mykeyspace
… WITH REPLICATION = { ‘class’ : ‘SimpleStrategy’, ‘replication_factor’ : 1 };

Help
cqlsh> help

Documented shell commands:
===========================
CAPTURE      COPY  DESCRIBE  EXPAND  SHOW    TRACING
CONSISTENCY  DESC  EXIT      HELP    SOURCE

CQL help topics:
================
ALTER                        CREATE_TABLE_OPTIONS  SELECT
ALTER_ADD                    CREATE_TABLE_TYPES    SELECT_COLUMNFAMILY
ALTER_ALTER                  CREATE_USER           SELECT_EXPR
ALTER_DROP                   DELETE                SELECT_LIMIT
ALTER_RENAME                 DELETE_COLUMNS        SELECT_TABLE
ALTER_USER                   DELETE_USING          SELECT_WHERE
ALTER_WITH                   DELETE_WHERE          TEXT_OUTPUT
APPLY                        DROP                  TIMESTAMP_INPUT
ASCII_OUTPUT                 DROP_COLUMNFAMILY     TIMESTAMP_OUTPUT
BEGIN                        DROP_INDEX            TRUNCATE
BLOB_INPUT                   DROP_KEYSPACE         TYPES
BOOLEAN_INPUT                DROP_TABLE            UPDATE
COMPOUND_PRIMARY_KEYS        DROP_USER             UPDATE_COUNTERS
CREATE                       GRANT                 UPDATE_SET
CREATE_COLUMNFAMILY          INSERT                UPDATE_USING
CREATE_COLUMNFAMILY_OPTIONS  LIST                  UPDATE_WHERE
CREATE_COLUMNFAMILY_TYPES    LIST_PERMISSIONS      USE
CREATE_INDEX                 LIST_USERS            UUID_INPUT
CREATE_KEYSPACE              PERMISSIONS
CREATE_TABLE                 REVOKE

cqlsh> USE mykeyspace;
cqlsh:mykeyspace>

Create table

cqlsh> USE mykeyspace;
cqlsh:mykeyspace> CREATE TABLE users (
…   user_id int PRIMARY KEY,
…   fname text,
…   lname text
… );

 

Insert the data

cqlsh:mykeyspace> INSERT INTO users (user_id,  fname, lname)
…   VALUES (1745, ‘john’, ‘smith’);
cqlsh:mykeyspace> INSERT INTO users (user_id,  fname, lname)
…   VALUES (1744, ‘john’, ‘doe’);
cqlsh:mykeyspace> INSERT INTO users (user_id,  fname, lname)
…   VALUES (1746, ‘john’, ‘smith’);

Check the entries

cqlsh:mykeyspace> SELECT * FROM users;

user_id | fname | lname
———+——-+——-
1745 |  john | smith
1744 |  john |   doe
1746 |  john | smith

(3 rows)

cqlsh:mykeyspace>

Indexing

—You can retrieve data about users whose last name is smith by creating an index, then querying the table as follows:

cqlsh:mykeyspace> CREATE INDEX ON users (lname);
cqlsh:mykeyspace> SELECT * FROM users WHERE lname = ‘smith’;

user_id | fname | lname
———+——-+——-
1745 |  john | smith
1746 |  john | smith

(2 rows)

cqlsh:mykeyspace>

Node tool

vijay@cluster-01:~$ nodetool -h localhost  status
Note: Ownership information does not include topology; for complete information, specify a keyspace
Datacenter: datacenter1
=======================
Status=Up/Down
|/ State=Normal/Leaving/Joining/Moving
—  Address    Load       Tokens  Owns   Host ID                               Rack
UN  127.0.0.1  117.04 KB  256     100.0%  971c1a4f-4e49-4400-801a-2e27d46af032  rack1
vijay@cluster-01:~$

For GUI Installation 

http://downloads.datastax.com/community/opscenter-5.0.tar.gz

free : https://github.com/tomekkup/helenos