Friday 7 July 2017

Features of Apache Cassandra

* Elastic scalability - Cassandra is highly scalable; it allows to add more hardware to accommodate more customers and more data as per requirement.

* Always on architecture - Cassandra has no single point of failure and it is continuously available for business-critical applications that cannot afford a failure.

* Fast linear-scale performance - Cassandra is linearly scalable, i.e., it increases your throughput as you increase the number of nodes in the cluster. Therefore it maintains a quick response time.

* Flexible data storage - Cassandra accommodates all possible data formats including: structured, semi-structured, and unstructured. It can dynamically accommodate changes to your data structures according to your need.

* Easy data distribution - Cassandra provides the flexibility to distribute data where you need by replicating data across multiple data centers.

* Transaction support - Cassandra supports properties like Atomicity, Consistency, Isolation, and Durability (ACID).

* Fast writes - Cassandra was designed to run on cheap commodity hardware. It performs blazingly fast writes and can store hundreds of terabytes of data, without sacrificing the read efficiency.

Advantages of Apache Cassandra

* It is scalable, fault-tolerant, and consistent.

* It is a column-oriented database.

* Its distribution design is based on Amazon’s Dynamo and its data model on Google’s Bigtable.

* Created at Facebook, it differs sharply from relational database management systems.

* Cassandra implements a Dynamo-style replication model with no single point of failure, but adds a more powerful “column family” data model.

* Cassandra is being used by some of the biggest companies such as Facebook, Twitter, Cisco, Rackspace, ebay, Twitter, Netflix, and more.

What is Apache Cassandra

What is Apache Cassandra?

* Apache Cassandra is an open source, distributed and decentralized/distributed storage system (database), for managing very large amounts of structured data spread out across the world.

* It provides highly available service with no single point of failure.

What is mongo DB

MongoDB:

* MongoDB is a cross-platform document-oriented database system that avoids using the traditional table-based relational database structure in favor of JSON-like documents with dynamic schemas making the integration of data in certain types of applications easier and faster.

What is Apache HBase

Apache HBase :

* HBase is an open source, non-relational, distributed database modeled after Google’s BigTable and is written in Java.

* It is developed as a part of Apache Hadoop project and runs on top of HDFS, providing BigTable-like capabilities for Hadoop.

Differences between NoSql and relationship database

NoSQL vs. Relational Database

The following table lists the points that differentiate a relational database from a NoSQL database.

Relational Database:

1. Relational Database DatabaseSupports powerful query language.

2. It has a fixed schema.

3. Follows ACID (Atomicity, Consistency, Isolation, and Durability).

4. Supports transactions.

NoSql:

1. Supports very simple query language.

2. No fixed schema.

3. It is only “eventually consistent”.

4. Does not support transactions.

Tuesday 4 July 2017

What is HAL or hardware abstraction layer l

* HAL hardware abstraction layer is used by the operating system to interact with the hardware.

* It is simply a dll call HAL.dll.

* What does HAL.dll does is that it provides the necessary drivers for your operating system to interact with hardware.

* The problem with a HAl.dll is that when you restore your operating system you need to use identical hardware for successful restore this was huge drawback with HAL.dll

* In new your operating system such as Windows 10 this dependency on HAL.dll is removed.

* Now when you restore your operating system the BIOS will detect the existing hardware or the new hardware on which the operating system is being restored.

* To configure this dynamic HAL you need to use a tool call BCDedit.

Bcdedit /set {current} detecthal yes

Sunday 2 July 2017

What is Data Model in Couch DB

Data Model

* Database is the outermost data structure/container in CouchDB.

* Each database is a collection of independent documents.

* Each document maintains its own data and self-contained schema.

* Document metadata contains revision information, which makes it possible to merge the differences occurred while the databases were disconnected.

* CouchDB implements multi version concurrency control, to avoid the need to lock the database field during writes.

Types of NoSql DB

These NoSQL databases are classified into three types and they are explained below.

1. Key-value Store − These databases are designed for storing data in key-value pairs and these databases will not have any schema. In these databases, each data value consists of an indexed key and a value for that key.

Examples − BerkeleyDB, Cassandra, DynamoDB, Riak.

2. Column Store − In these databases, data is stored in cells grouped in columns of data, and these columns are further grouped into Column families. These column families can contain any number of columns.

Examples − BigTable, HBase, and HyperTable.

3. Document Store − These are the databases developed on the basic idea of key-value stores where "documents" contain more complex data. Here, each document is assigned a unique key, which is used to retrieve the document. These are designed for storing, retrieving, and managing document-oriented information, also known as semi-structured data.

Examples − CouchDB and MongoDB.

What is NoSql DB

NoSQL Databases

* A NoSQL database (sometimes called as Not Only SQL) is a database that provides a mechanism to store and retrieve data other than the tabular relations used in relational databases.

* These databases are schema-free, support easy replication, have simple API, eventually consistent, and can handle huge amounts of data (big data).

* The primary objective of a NoSQL database is to have the following −

1. Simplicity of design,
2.Horizontal scaling, and
3.Finer control over availability.

Advantages of CouchDB for Big Data

Why CouchDB?

* CouchDB have an HTTP-based REST API, which helps to communicate with the database easily. And the simple structure of HTTP resources and methods (GET, PUT, DELETE) are easy to understand and use.

* As we store data in the flexible document-based structure, there is no need to worry about the structure of the data.

* Users are provided with powerful data mapping, which allows querying, combining, and filtering the information.

* CouchDB provides easy-to-use replication, using which you can copy, share, and synchronize the data between databases and machines.

What is CouchDB

What is CouchDB?

* CouchDB is an open source database developed by Apache software foundation. The focus is on the ease of use, embracing the web. It is a NoSQL document store database.

* It uses JSON, to store data (documents), java script as its query language to transform the documents, http protocol for api to access the documents, query the indices with the web browser.