WHAT IS CASSANDRA?

Cassandra is defined as an open-source NoSQL data storage system that   leverages a distributed architecture to enable high availability, scalability, and reliability, managed by the Apache non-profit organization.

Cassandra is distributed database that manages large amounts of data  across commodity servers. It is a decentralized, scalable storage system  designed to handle vast volumes of data across multiple commodity servers, providing high availability without a single point of failure. 

HISTORY OF CASSANDRA

Cassandra was created for Facebook but was open-sourced and released to become an Apache project (maintained by the American non-profit, Apache Software Foundation) in 2008. After that, it found top priority in 2010 and is now among the best NoSQL database systems in the world. Cassandra is trusted and used by thousands of companies because of the ease of expansion and, better still, its lack of a single point of failure. Currently, the solution has been deployed to handle databases for Netflix, Twitter, Reddit etc.

In 2010, Cassandra was launched in its 0.6.13 version. It has since crossed twelve iterations. The latest version 4.1.1, was launched in early 2023. Each version has come with key updates such as the addition of self-tuning memtables, Cassandra Query language (CQL), improved compactions, compression, and read performance among others.  

KEY FEATURES OF CASSANDRA

1. Open-source availability

Nothing is more exciting than getting a handy product for free. This is probably one of the significant factors behind Cassandra's far-reaching popularity and acceptance.

2. Distributed footprint 

Another feature of Cassandra is that it is well distributed and meant to run over multiple nodes as opposed to a central system. All the nodes are equal in significance, and without a master node, no bottleneck slows are equal in significance, and without a master node, no bottleneck slows the process down.

3. Scalability

Cassandra has elastic scalability. This means that it can be scaled up or down without much difficulty or resistance. Cassandra's scalability once again is due to the nodal architecture. Scaling-up in Cassandra is very easy and not limited to location.

4. Cassandra Query Language

Cassandra is not a relational database and does not use the standard query language or SQL. It uses the Cassandra Query Language (CQL). This would have posed a problem for admits as they would have to master a whole new language but the good thing about Cassandra Query Language is that it is very similar to SQL.

5. Fault tolerance

Cassandra is fault-tolerant primarily because of its data replicate ability. Data replication denotes the ability of the system to store the same information at multiple locations or nodes. This makes it highly available and tolerant of faults in the system.

6. Schema free

SQL is a fixed schema database language making it rigid and fixed. However, Cassandra is a schema-optional data model and allows the operator to create as many rows and columns as is deemed necessary.

LIMITATIONS OF CASSANDRA

  • There is no official documentation from Apache, which makes it necessary to take the risk of sourcing the tool from third-party platforms.
  • Cassandra does not provide support for relational and ACID database properties.
  • While Cassandra provides superior performance in write operations, read operations are sub-optimal.
  • Latency issues are a common problem when managing large amounts of data and requests.
  • Cassandra also does not provide support for aggregates and subqueries.
  • Cassandra stores the same data multiple times as it is based on queries, which in turn results in Java Memory Model (JVM) issues.

APPLICATIONS OF CASSANDRA

  • E-commerce
  • Entertainment websites
  • Internet of things (IoT) and edge computing
  • Authentication and fraud detection
  • Messaging
  • Logistics and asset management
  • Handle high speed Applications



Comments