Cassandra – First Touch
Download
Go to Apache Cassandra download page, and get yourself a latest copy.
Link: http://cassandra.apache.org/download/
Once downloaded, extract the zip file to some directory, say, D:\iLabs\apache-cassandra-0.6.1
Minimal Setup
Cassandra keeps all important information in storage-conf.xml. We will talk about this in details later, for now, let’s just tell Cassandra where to store Logs and Data?
- Let’s create a directory,
D:\iLabs\cassanra-data - Create 2 subdirectories, one for Logs and another for Data.
D:\iLabs\cassanra-data\commitlog D:\iLabs\cassanra-data\data - Modify
D:/Lab/Cassandra/conf/storage-conf.xmlfor following information:<CommitLogDirectory>D:\iLabs\cassanra-data\commitlog</CommitLogDirectory> <DataFileDirectories> <DataFileDirectory>D:\iLabs\cassanra-data\data</DataFileDirectory> </DataFileDirectories>
Ignite the engine
- Make sure that you have
JAVA_HOMEset correctly. - Also, make sure that port 8080 and 9160 is available. Generally, 9160 remains free, and Tomcat or Jboss might be running on 8080. Please shut down, Tomcat/Jboss or whatever server you have on 8080.
- Open command prompt, and go to Cassandra directory:
D:\iLabs\apache-cassandra-0.6.1 - Run:
D:\iLabs\apache-cassandra-0.6.1>bin\cassandra.bat -f Starting Cassandra Server Listening for transport dt_socket at address: 8888 INFO 13:09:00,234 Auto DiskAccessMode determined to be standard INFO 13:09:00,531 Sampling index for D:\iLabs\cassanra-data\data\ Keyspace1\Standard1-1-Data.db INFO 13:09:00,559 Sampling index for D:\iLabs\cassanra-data\data\ system\LocationInfo-1-Data.db INFO 13:09:00,567 Replaying D:\iLabs\cassanra-data\commitlog\ CommitLog-1274081403711.log INFO 13:09:00,607 Creating new commitlog segment D:/iLabs/cassanra-data/ commitlog\CommitLog-1274081940607.log INFO 13:09:00,748 LocationInfo has reached its threshold; switching in a freshMemtable at CommitLogContext(file='D:/iLabs/cassanra-data/commitlog\ CommitLog-1274081940607.log', position=133) INFO 13:09:00,752 Enqueuing flush of Memtable(LocationInfo)@20827431 INFO 13:09:00,756 Writing Memtable(LocationInfo)@20827431 INFO 13:09:00,948 Completed flushing D:\iLabs\cassanra-data\data\system\ LocationInfo-2-Data.db INFO 13:09:00,996 Log replay complete INFO 13:09:01,046 Saved Token found: 23289801966927000784786040626191443480 INFO 13:09:01,047 Saved ClusterName found: Test Cluster INFO 13:09:01,061 Starting up server gossip INFO 13:09:01,128 Binding thrift service to localhost/127.0.0.1:9160 INFO 13:09:01,136 Cassandra starting up...
Hallelujah! Engine is revved up.
Note: it’s listening to localhost/port:9160.
Let’s prance!
Cassandra distribution comes with Cassandra CLI, which is interactive command line tool. We will use this tool to test our server.
- Open another command prompt, and go to Cassandra directory:
D:\iLabs\apache-cassandra-0.6.1 - Run:
D:\iLabs\apache-cassandra-0.6.1>bin\cassandra-cli.bat Starting Cassandra Client Welcome to cassandra CLI. Type 'help' or '?' for help. Type 'quit' or 'exit' to quit. cassandra> - Now, connect with the server:
cassandra> connect localhost/9160 Connected to: "Test Cluster" on localhost/9160 - Insert a key/value:
cassandra> set Keyspace1.Standard1['0']['msg'] = 'Hello World!' Value inserted. - Query it back:
cassandra> get Keyspace1.Standard1['0']['msg'] => (column=6d7367, value=Hello World!, timestamp=1274086005825000)
We have successfully connected to Cassandra server, inserted a value, and fetched it back. But, few things might have been overwhelming, right? Let’s try to understand that.
Let’s have a quick look at the schema. Remember, it is defined in the same file we modified earlier in the setup step: D:/Lab/Cassandra/conf/storage-conf.xml
You will notice below entry there:
<Keyspace Name="Keyspace1">
<ColumnFamily Name="Standard1" CompareWith="BytesType" />
...
</Keyspace>
Keyspace1 is the name of the schema, Standard1 is a collection of rows, and each row has an ordered set of key-value pairs. We will learn more about Keyspaces and Data Schemas in the next blog.





I am not able to connect Cassandra server.
I downloaded the latest version of Cassandra and I followed the above steps but I am not able to connect.
When I start with a command D:\cassandra\bin>cassandra.bat -f :
The final log I copied here..it is showing in the log but I did not seen anywhere in the log Cassandra starting up…
INFO 15:09:31,796 Binding thrift service to localhost/127.0.0.1:9160
INFO 15:09:31,796 Using TFastFramedTransport with a max frame size of 15728640
bytes.
INFO 15:09:31,796 Using synchronous/threadpool thrift server on localhost/127.0
.0.1 : 9160
INFO 15:09:31,812 Listening for thrift clients…
After this it is stopped..
When I connect like this i.e if i used connect (connect localhost/9160): below is the log i am getting that means it is not showing any message.
[default@unknown] connect localhost/9160
…
Please help me where i need to do any changes from my end..or any other problem.
sureshkv484
January 2, 2012 at 3:19 pm
Which cassandra version you are using?
Animesh
February 14, 2012 at 10:37 am