Overview
NoSQL is generally interpreted as “Not only SQL” [1]. It is a class of database management systems that are used for non-relational database. Typically NoSQL database does not use two-dimensional table to store data. The four generally categories of NoSQL database are key-values database, column databases, document databases, and graph databases [2]. NoSQL database is an indispensable part of big data. Most company choose NoSQL database because it yields better performance when compared to relation database. Many relational databases have been existing for more than 20 years, while most NoSQL databases have a history of less than 5 years. Because NoSQL databases are so young, they exposes lots of security issues. Many NoSQL databases are still focusing on adding features and improving performance, while strength security mechanism is still a low priority task. There were already two data breaches happened in companies that are using NoSQL databases (MongoHQ in 2013 and LinkedIn in 2012 [3]).
Detailed result
NoSQL database characteristics
The problem of relational database is that its performance degrade significantly while handling exponential growth of semi-structured data or unstructured data [4]. The NoSQL databases possess properties called BASE (Basically available, Soft state, and eventually consistent) that makes it much more scalable than relational databases. As the CAP theorem [5] said, a database system cannot have high consistency, high availability,
* Instructors with administrative rights must sign an agreement and are responsible for their own support.
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
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 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.
For the purpose of this paper, we are going to focus on these three type of NoSQL database BigTable, Cassandra, DynamoDB.
Over many ago relational databases reside most of the data but after the introduction of NoSQL database had changed this procedure. Most of the unstructured data had been sent to NoSQL database. Relational database systems, which showed good performance before the birth of internet and cloud computing era is now unable to control the heat of new technologies. To stabilize this situation new requirements were set to design by RDBMS. To meet these challenges they need highly scalable and unstructured data model with high performance; so they choose NoSQL database (Muhammad Mughees, 2013).
Abstract- The multidimensional growth in computing systems and technologies have resulted in advanced scalable, portable and large scale integrated systems and technologies. Datacenters, virtualization, cloud and WEB2 technologies are the frontiers of such growth. [1] Cloud computing represents an important step towards realizing McCarthy’s dream that all aspects of computation may someday be organized as a public utility service. Both public and private cloud platforms are looking to deliver the benefits of cloud computing to their customers. The database is a critical part of this platform. Therefore cloud database need to be compatible with cloud computing. [5] Though cloud computing offers huge opportunities to the IT industry, there are many issues still to be addressed in the current scenario.[6]
MongoDB is one of numerous cross-stage archive situated databases. Named a NoSQL database, MongoDB shuns the customary table-based social database structure for JSON-like archives with element constructions (MongoDB calls the organization BSON), making the combination of information in specific sorts of utilizations less demanding and quicker. Discharged under a mix of the GNU Affero General Public License and the Apache License, MongoDB is free and open-source programming.
NoSQL was created in the response to relational databases not being able to handle the scale and changing challenges of modern applications, they also cannot take advantage of the cheap, easy storage abilities and also the processing power accessible now. NoSQL includes a variety of different technologies that were developed in response to the surge of data stored by users, objects and products. They were also developed to contend with the rising frequency that the data is accessed and the performance and processing needs. [7]
A lot of speculations have been raised on whether modern NoSQL database is vulnerable to NoSQL attacks or not. The aim of the paper was to research on this issue and after thorough, the paper identified that modern NoSQL database is vulnerable to NoSQL attacks. The problem in the research paper was to identify how modern NoSQL database is vulnerable to NoSQL attacks. Use of JSON to inject NoSQL attacks, lack of admin authorization use of clear text and use of PHP applications to inject NoSQL attacks on the database are some of the reasons that were identified to cause the big problem of NoSQL attacks in the modern NoSQL database. However, solutions to the above problems were identified in the research. Some of these solutions include use of encrypted texts, use admin passwords, input validation and Bind the NoSQL process to only a single interface/IP among others.
With its dispatch in 2015 the AWB uses devices like Kinesis, which is for continuous spouting, S3 which is for basic accumulating stage and DynamoDB – it is immense limit with respect to NoSQL database.
NoSQL databases are a significant departure from the relational model that has dominated the business world for the past few decades. Standing for “Not Only SQL,” these products are all some variation of a non-relational, key-value pair database, and they are becoming very popular with companies that use Big Data and prioritize speed or availability over consistency of data.
STRUCTURE OF DATA: The data structure of a relational database comprises of table structure. Every table is identified by a unique name or label. The data tables are described as the collection of rows and columns. Each row of the table is known as the record and each column is known as the field of the specific data table. All the data sets are well organized and logical linked to each other through definite and unique relationships. A table, therefore can also be defined as the “structured collection of relationships”. The fundamental aim of developing No SQL database systems is to easily and effectively handle vast quantity of data or information in advanced web-scale applications. In order to achieve this purpose, the No SQL systems are designed as the schema-free database systems. There are different modes to define the No SQL databases that typically depend on the requirements of the data that has to be managed. The main No SQL data structures include column database, key-value store database, document store database, graph database and
A No-SQL (often interpreted as Not Only SQL) database provides a mechanism for storage and retrieval of data that is modelled in means other than the tabular relations used in relational databases. Motivations for this approach include simplicity of design, horizontal scaling and finer control over availability.
Tracking the concept of Big Data management from Relational Databases Management Systems to the current NoSQL database, this paper surveys the Big Data challenges from the perspective of its characteristics Volume, Variety and Velocity, and attempts to study how each of these challenges are addressed by various NoSQL systems. NoSQL is not a single system that can solve every single Big Data problem; it is an eco-system of technologies where different type of NoSQL databases are optimized to address various types of big data challenges by providing schema-less modeling and automatic