1. Introduction
Nowadays, terabytes to petabytes of data that is been stored and transmitted by numerous sources and organizations have realized that these data contain tangible value that has the potential to change the fortunes of a business. Top firms leverage their business through the valuable insights gained through these data to assist them in their decision making process. The huge chucks of data consists structured, semi structured and unstructured data. Organizations have switched their focus more on exploring semi structured and unstructured data that is generated through social media activities, personal media information and geo location data.
NoSQL database is a type of database that provides a means for storage and
…show more content…
In addition to its flexibility, these databases provides horizontal scalability and distributed computing that led to adoption of NoSQL databases in the firms. The SQL databases uses Structured Query Language whereas NOSQL databases use Unstructured Query Language which varies from database to database.
1.2 Features of NoSQL Databases:
Schema on Read: There is no definite schema on the underlying data in the databases and it leads to high flexibility on the storage
Nonrelational: In traditional databases there are relations between the tables. For example, a list of transaction details can be connected to a separate list of delivery details. With a NoSQL database, this information is stored as an aggregate — a single record with everything about the transaction, including the delivery address
Commodity hardware: With a NoSQL database, cheap commodity hardware can be used. Adding more of these cheap servers allows NoSQL databases to scale to handle more data.
Highly distributable: With a NoSQL database, a cluster of servers can be used to hold a single large database
2. Different Types of NOSQL databases
There are many types of non-relational databases but more often than not, they fall under one of the following categories:
2.1 Document Model
In a document model, data is stored in documents. This uses a type of notation called JSON (JavaScript Object Notation) and is closely associated with the object
NoSQL today stands for ‘Not only SQL’ and encompasses a myriad of different database technologies that can cope up with scale and agility challenges faced by modern applications. It provides the capability to store unstructured data, which is not possible using RDBS. The major advantage of using a NoSQL DB is horizontally scalability, that is, cheap infrastructure can be newly added to improve performance instead of upgrading an already expensive system. There are four types of NoSQL databases, as follows
Key/Value Database is a type of NoSQL Database. NoSQL Database stands for Not Only SQL Database which means that the database can store heterogeneous data. The Key/Value database does not follow the conventional relational database way of storing the data. Every piece of data that needs to go into the DB, gets a key associated with it. Additionally, few other metadata also gets attached to the data. It stores data as hash table where each key is unique and the value can be string, array of strings, integer etc. Initially, data is stored in in-memory, but after particular time intervals or depending upon some specified condition, data is moved to disk in the form of Shards. Shards are nothing but XML
The data that is being stored in a database is known as Meta data. Meta data is also recognized as schema for the real world data. It expresses that what sort of data will be stored in the database, what will be size of a assured attribute of the real world data, how many and what qualities will be used to collect the data about the entity in the database.
Relational database contains data records that do not have a preset of relationships, permitting the user to define his or her relationship when accessing the data. Since users have much control over the data being accessed, relational databases can perform a variety of tasks. Such as defining the database; querying the database; adding, editing, and deleting data from the database; modifying the structure of the database; securing data from public access; communicating within the network; and exporting and importing data (Murthy, 2008).
In order to overcome these limitations, a new database model known as Not Only SQL (NoSQL) database emerged with a set of new features. The main objective of NoSQL is not to discard SQL, but to be used as an alternative database data model for new features [1] [2] [3]. NoSQL database increases the performance of relational databases by a set of new characteristics and advantages. In contrast to relational databases, NoSQL databases introduced an additional feature that provides flexible and horizontal scalability and taking advantage of new clusters. The rise of NoSQL provides cost-effective management of data in modern web applications. With its new features, NoSQL can be used with applications that have a large transaction, and require low-latency access to huge datasets, service availability while
A relational database is designed to comply with a term called normalization. Normalization is a process of organizing tables to minimize the redundancy in the database. The design of a relational database decreases the amount of space the database uses in a system. The relational database uses fields to help reduce redundancy in the tables. Relational designed database use the relational value in fields, an example would be a field for Book_ISBN and a field with Title_ISBN, could be limited to just one field naming the ISBN (Safari).
Provide reasoning to support the use of the NoSQL database as the database of choice to solve the problem faced by TWC. Identify one strength and one weakness for each of the other three kinds of databases to solve the problem for TWC.
The invention of relational databases have brought a number of changes to the business world in which they operate specially for the businesses whose prime focus is on its customers, their likes and dislikes to win more market share. There is no such concept as “one size fits all” in using this technology, it varies from industry to industry. One thing may work for some businesses and may not work for others, therefore it is advisable that one should shop around before investing in any of the technologies because it is vital to find an industry-specific solution. One technique to narrow the search for industry-specific solutions is to find out what our competitors are using to gain more customer base.
Though non-relational databases have been around since the 1960s, many companies have used relational databases to store data[2] but over the past decade with companies generating vast amounts of data, relational databases are unable to effectively manage these large data collections[1]. An ever increasing amount of companies is now, however, turning to non-relational databases known as NoSQL databases as they are more effective at handling these large amounts of data thus the reason we have seen an increase in its popularity over the past decade[2]. The term NoSQL database which stands for Not Only SQL[3] is defined as a database that
it is a collection of data items organised as a set of formally described tables from what data can be accessed.
NoSQL is best known for typically being “non-relational”, meaning that it can store and link data without any structured restrictions (Paghy, “RDBMS to NoSQL”). This gives NoSQL databases the ability to do so much more than a simple relational database could. It makes them scalable
In order to understand NoSQL databases, chapter two will describe the most significant features of NoSQL databases for solving the above mentioned requirements. Since the relational data model is not suitable for some use cases, chapter three will explain structure and flexibility of different data models offered by NoSQL databases. Chapter four will compare two of the widely used NoSQL databases which are MongoDB and Cassandra.
Some people believe that the answer to challenges posed by big data lie in a relatively new group of non-relational data storage and management products known collectively as NoSQL. However, NoSQL system development is different from traditional data warehouse development in that it is application driven. This has led some pundits to postulate that NoSQL represents a new paradigm in data warehouse design, where highly specialized data silos will replace the traditionally integrated data warehouse. Therefore it is reasonable to ask, should NoSQL be used to build big data warehouses? If yes, then should integration be discarded in favor of autonomous, application driven data silos?
Kind of database model which is designed in a hierarchy completely access to data beginning at the highest of hierarchical then changes to down such as customer to order.
The modern RDBMS advancements are not capable of supporting unstructured information with ideal space necessity. The plan winds up plainly mind-boggling and is henceforth troublesome for designers. The requirement for unstructured information administration is so annoying with conventional RDBMS arrangements (Big data in financial services industry: Market trends, challenges, and prospects 2013 - 2018). Moreover, RDBMS turns out to be an exorbitant answer for creating light-footed web applications with direct information investigation necessities. NoSQL is developing as a proficient possibility in this situation, which connects the issues related with RDBMS innovation. The market development can credit to creative dispatches of NoSQL arrangements, and collective endeavors by NoSQL sellers and clients. The endeavors of organizations, to enhance their market offerings, are creating the request of NoSQL, as a back-end bolster (Big data in financial services industry: Market trends, challenges, and prospects 2013 - 2018). The emergence of agile software development is creating the demand for NoSQL (Big data in financial services industry: Market trends, challenges, and prospects 2013 - 2018). They offer users much more avenues to accept data in many different forms. NoSQL is adaptable as SQL but offers many more uses that can apply to many organizations.