Cassandra is a distributed database which is highly scalable and designed to manage substantial amounts of structured data.
If you are looking for an opportunity to become an expert in Cassandra, you must have a good grip on the concepts and be well trained in the subject. For this, improving your technical skills and knowing the thoughts in and out is essential.
Here are some top interview questions from the experts on Cassandra.
These are frequently asked questions that will help you gain a grip on the concepts of the subject. The detailed answers will help you understand Cassandra easily.
If you want to enrich your career as a Cassandra Architect
then go through our Cassandra Online Training
Top Cassandra Interview Questions and Answers
1) Why is Apache Cassandra developed?
Ans: Cassandra is a distributed database management system. It is initially developed at Facebook to improve its performance, and it is a tool made to power the Facebook inbox search feature. Due to its outstanding technical features, Cassandra became very popular and a top-level project.
2) What is Apache Cassandra?
Ans: Cassandra is an open-source, distributed and decentralized database. It is also used for managing a large amount of structured data which is spread out everywhere.
3) Describe the benefits of using Cassandra?
Ans: Cassandra has features which are very beneficial as it is easy to work with; Some of those are high performance, fault tolerance, predictable scaling, distributed database. It has high scores on these parameters, and it is also preferred because its an open-source distributed and NoSQL database management system.
4) What are the applications of Cassandra?
Ans: Cassandra has become the primary choice for many companies when it comes to app development and data management. Even new start-ups are preferring it because of the ease with which an operator can work.
Cassandra is a great application where data is collected at high speed from different kinds of sources. As the internet of things application could use Cassandra. It could also be used in a product and retail apps, messaging, social media analytics, and even by a recommendation engine.
5) Explain Apache Cassandra vs Traditional Databases
Ans: Although traditional databases provide you with many other features here are some highlights and benefits only a database like Cassandra have:
|Traditional databases||Cassandra database|
|Data is written in mostly one location.||Data is written in many locations.|
|Data volumes are moderate.||Processing data volumes are high.|
|It can handle only moderate incoming data.||It can handle high incoming data volumes.|
|Supports complex transactions||Supports simple transactions.|
|Lines up for just read scalability.||Supports both read and write scalability.|
6) Name the features of Cassandra.
Ans: Cassandra has become famous for its outstanding technical features. Here are some features you must know:
- Elastic scalability
- Always on architecture
- Fast linear and scale performance
- Flexible in data storage
- Easy to do data distribution
- Excellent transaction support.
7) What are the main components of Cassandra?
The components of Cassandra include:
- Data cluster
- Commit log
- Bloom filter
8) What are the functions of Cassandra?
Ans: This database supports two main categories of functions:
Scalar functions: Its primary purpose is taking some groups of values and producing an output with it.
Aggregate functions: Its primary function is producing a combined result using selected multiple rows.
9) What are the key terms in Cassandra?
Ans: They go as follows:
- Data centre
- Commit log
To gain more knowledge of Cassandra, check out Cassandra Tutorial
10) What is a node?
Ans: A node is a basic unit of Cassandra, and it is a system which is part of a cluster. Node is the main area where the data is stored.
Subscribe to our youtube channel to get new updates..!
And the units of a node is represented as computer/server
11) What is the data centre?
Ans: A data centre is a collection of Cassandra nodes.The data in a datacenter is stored in the form of a cluster, where the cluster is also referred to as a collection of nodes.
12) Describe what is memtable?
Ans: MemTable is a location where data is written and stored temporarily. Data is written in memtable after the data is completed in the commit log.
Memtable is a storage engine in Cassandra. Data in MemTable is classified into a key, and where the data is retrieved using the key as each column category has its own MemTable. When the write memory is full, it deletes the messages automatically.
13) What is SSTable?
Ans: SSTable also means 'Sorted String Table'. SSTable is a data file in Cassandra, and its main function is to save data which is flushed from memtable. Unlike MemTable, SSTbale doesn't delete any data or lets any further addition once data is written.
14) What is the difference between memtable and SSTable?
Ans: In MemTable it doesn't store the data. It temporarily accumulates ‘write data’, but it cannot store it into the disk.
Whereas in SStable, it is used to store the data from Memtable into Cassandra database. The data stored in SSTable is permanent and cannot be changed.
15) How is data distribution done?
Ans: Cassandra database is a highly-available database, and it stores data by evenly dividing the data around its nodes. For this, it uses the Murmur3 partitioning function to distribute given data in nodes evenly.
16) How does Cassandra store data?
Ans: The data storage path in Cassandra begins with the memtable where the data is stored temporarily and is also called a commit log. And once committed, the data is periodically flushed and written into SSTable
17) What are the general operations of Cassandra CQL?
Ans: There are two types of operations carried by Cassandra:
- Read operation and
- Write operation
18) What is a direct request?
Ans: Direct request in Cassandra is a part of the read operation. In this, the coordinator node contacts the replica node.
19) Define digest request?
Ans: When the coordinator node contacts replicas, it actually requests those nodes which reply fastest. Then these contacted nodes respond with a digest of the data required.
20) Explain read repair request?
Ans: When the coordinator node sends requests, it checks in the nodes for any outdated data. This data is sent for a background read and repair and is replaced with the updated data. Read and repair requests, is a method to keep the data updated, and it also makes sure that the requested row is consistent on all replicas.
21) What is a write operation?
Ans: There is step by step operations in writing, which goes as follows.
Step1: It is as soon as it receives its request it sends the data to the commit log to save the data.
Step2: Data is inserted upon request and then sent to commit log to save data.
Step3: If the memtable reaches its limit then data is flushed to SSTable.
22) What is Cassandra: CAP Theorem?
Ans: The CAP theorem, also knowns Brewer's theorem, states that a distributed computer system can't use all its three properties at the same time which are
23) What do you mean by ACID?
Ans: ACID stands for
Atomicity: Which means either your transaction can fail or commit
Consistency: Its definition changes from software to software or an application to application, but its general meaning is that data has to stay consistent.
Isolation: Data has to be isolated and separated from each other
Durability: It assures you that once the database receives data, it should ensure that the data is processed. So it is an advantage if the database fails, then the data will not be lost.
24) What is BASE?
Ans: Not every application or software needs this strong consistency, so this is where base comes into action. The BASE stands for Basically Available Soft-state Eventually-consistent properties.NoSQL databases basically use these models.
25) Explain, what is tunable consistency?
Ans: Consistency refers to updating and synchronizing a row of Cassandra data in all of its replicas. By offering tunable consistency for a given operation (read/write), helps the application to decide the right consistency of data.
26) What is the relation between tunable consistency and Cassandra?
Ans: Tunable consistency ensures proper levels of consistency for its reads and writes which is the main reason why Cassandra prefers NoSQL databases.
27) What are the best monitor tools of Cassandra?
Ans: Although Cassandra comes with built-in tolerance features, it still needs to be monitored for effective results. Here are some tools which Cassandra uses to monitor its databases:
- Solarwind server and application monitor
- Machine engine applications manager.
28) What is the NoSQL database?
Ans: The primary purpose of usage of NoSQL databases is because it provides smooth handling of large data. Its simplicity of design and simplicity in horizontal scaling to clusters and fine control are few of the reasons why Cassandra uses a NoSQL database.
29) What are the objectives of NoSQL?
Ans: The primary objectives of NoSQL DB are:
- To have the simplicity of design
- More exceptional control over availability and
- Horizontal scaling
30) Describe a bloom filter?
Ans: A bloom filter is a tool used by Cassandra. The read path of Cassandra has to go through Memtable and the row cache. A bloom filter is a partition cache, and its role is the read path is to avoid checking every SStable to find one particular data.
31) What is CQL?
Initially, Cassandra required an API to do some of the basic tasks like insert, get and delete. But over time, these basic queries were improved and then named Cassandra Query Language. (CQL).
CQL provides a great set of built-in data types, and it also helps the applications to make their own custom data types. Cassandra is also classified as a NoSQL database.
32) Name the key roles of CQL?
It is very necessary to provide different types of users with different kinds of roles depending upon their requirements. It ensures the security of database users. and their key roles goes as follows:
- Create a role
- Alter role
- Drop role
- Grant role
- Revoke role
- List role
33) What is a cluster in Cassandra?
A cluster is a collection of nodes. This collection of nodes represents a single system. It is the outermost structure of the ring in Cassandra.
34) What are CRUD operations?
These operations are used to make changes in the Cassandra database.
CRUD stands for
- Create operation
- Read operation
- Update operation and
- Delete/drop operation.
35) Describe Keyspace.
Ans: A keyspace is a part of the cluster which controls the replication of the data in a database. A cluster contains one keyspace per node.
36) Name the types of Keyspace in Cassandra?
Ans: Cassandra keyspace contains 3 types of operations which go as follows:
- Create keyspace
- Alter keyspace
- Drop keyspace
37) Define column family in Cassandra?
Ans: Column family in Cassandra is defined as the collection of rows in an ordered and systematic way. It is used to represent the stored data in a structured manner. These are contained in a keyspace, at least one column family in a keyspace
38) What are the characteristics of a column family?
Ans: There are many characteristics of a column family, and few of them goes as follows:
- Key cached
- Rows cached
- Preload row cache
39) Explain about the super column in Cassandra?
Ans: A super column in Cassandra is an extraordinary and important column. It has so much value because it has the roadmap to all the sub-columns in the database.
These super columns are used to improve the performance of the database
These are some important interview questions on Cassandra for beginners and experienced candidates. I hope these questions will help you get familiarise with the concepts and insights of Cassandra and help you prepare for the interviews as well.
Please comment below if you have any queries.