Aug 29, 2010

What is Fault Tolerance ?

An application having n software modules and n servers is able to function properly even if any of the server or module fails is known as 'fault tolerant'.

What is five nine's availability ?

Very commonly we come across the figure 99.999 % uptime or availabilty. But what actually does it means in practical terms. Here is the explanation :
60 seconds * 60 minutes * 24 hours * 365 = 31,536,000 seconds.in a year
99.999/100*31,536,000 = 31535684.64 seconds
Now : 31,536,000 - 31,536,000 = 315.36 seconds of downtime or approximately 6 minutes of downtime in a year.

What is Scalability ?

In common terms, you develop an application expecting that it will at max can have a concurrency of 100 users or approx. 3000 hits per day and contrary to that, same application starts to get hit in excess of 10000 users daily and is increasing by day. 

If you are able to cover up this increase in no.of users by adding more machines then you are doing 'Horizontal Scaling' on the other hand if you are adding up more powerful CPU or RAM then you are doing 'Vertical Scaling'. Hence, scaling is nothing but increasing resources to accommodate the increase in load.
When a system or web application is able or flexible enough to allow this increase in resources it is known as 'Scalable' and is known to have 'Scalability'.

Aug 28, 2010

Installing Cassandra on Ubuntu

Installing Cassandra

Download and extract Thrift :

1. Install dependencies (Ubuntu)
sudo apt-get install libboost-dev automake libtool flex bison pkg-config g++
 
2. Change to Thrift Directory 
./configure
make
make install
This should install thrift on your system. 



1. Go to http://cassandra.apache.org. On home page there is a link to download the latest stable release. Download the latest version.

2. Save the downloaded file......lets say in /home/Downloads (ubuntu ) .

3. Extract the file to /whereveryoulike/. I use /home/Cassandra62.

4. Change into the directory ... $ cd cassandra62

5. $avemaria-laptop:/home/cassandra62 # : ls

6. Output should be something like this -

bin          conf     DISCLAIMER.txt  lib          NOTICE.txt  test
build.xml    contrib  interface       LICENSE.txt  README.txt
CHANGES.txt  debian   ivy.xml         NEWS.txt     src


_____________________


Now the installation of Cassandra which is pretty easy and straightforward :

cd into directory named 'bin' :
and ./cassandra -f
This will run your cassandra and the output will be shown of the foreground hence the flag -f.


If you see 'Cassandra Starting up' that means your Cassandra is up and running and you are ready to play with her...