SlideShare a Scribd company logo
INSY 5337 Data Warehousing – Term Paper
NoSQL Databases: An Introduction and Comparison between Dynamo,
MongoDB and Cassandra
Authored By-
Nitin Shewale Aditya Kashyap Akshay Vadnere Vivek Adithya Aditya Trilok
Abstract
Data volumes have been growing exponentially in recent years, this increase in data across all
the business domains have played a significant part in the analysis and structuring of data. NoSQL
databases are becoming popular as more organizations consider it as a feasible option because
of its schema-less structure along with its capability of handling BIG Data. In this paper, we talk
about various types of NoSQL databases based on implementation perspective like key store,
columnar and document oriented. This research paper covers the consolidated applied
interpretation of NoSQL system, depending on the various database features like security,
concurrency control, partitioning, replication, Read/Write implementation. We also would draw
out comparisons among the popular products and recommend a particular NoSQL solution on
the above mentioned factors.
1. Introduction
Until recently, Relational database systems have been on the forefront of data storage and
management operations. The advent of mobile applications that requires real time analysis like
GPS based services, banking and social media has led to huge unstructured data being produced
every second. Traditional RDBMS systems have found it difficult to cater to these huge chunks of
unstructured data, as RDBMS mainly stores structured data in tabular format. Also, the
unstructured data being mapped to a relational database results in increase in complexity as it
uses expensive infrastructure to model the same. Also, even if the data model fits into SQL,
platter of features provided by SQL becomes an overhead. Relational schema becomes a burden
on applications which are trying to store data in multiple forms like videos, blogs and images etc.
A new methodology for data management was introduced for the management of unstructured
data known as NoSQL (Not Only Structured Query Language).
NoSQL covers a broader topic of data structuring, storage and aggregation via various
implementation approaches. It can store unstructured data and provide real time analysis to back
up the web service applications. It gives up on conventional benchmarking of database
management principles like Atomicity, Consistency, Isolation and Durability, to attain flexible
data handling. Also, it provides inbuilt data partitioning and replication. Essentially, data across
the business domains is governed by company policies and processes for data control and quality.
NoSQL moves away from these restrictions to promote performance and scalability requirements
of particular application and services [1][2][3][4][10].
2. NoSQL Characteristics
Analogy of ACID properties in NoSQL is BASE, which is derived from CAP Theorem. CAP Theorem
assures following database management standards –
 Consistency – The given data should be available at all parts of the system at the same
time.
 Availability – The data should be available any time and should provide a response
every time.
 Partition Tolerance – Total failure of the system should not be driven by failure of one
section or partition of the system [7][8][9].
NoSQL database systems, like MongoDB and Cassandra, have strayed away from consistency to
attain greater availability and efficient partitioning. This gave rise to systems driven on BASE
principles.
 Basically Available – Data is distributed across various systems, hence the data is always
available in one of the system, even if one of the systems fail.
 Soft State – Since the data is distributed, there is no assurance of consistency.
 Eventually Consistent – The data would be consistent eventually, even if it’s not at a given
point in time [5][6][10].
3. Features of NoSQL
 Flexible Data Models – NoSQL allows horizontal data partitioning across different
distributed systems or processors. However, relational model has a fixed schema in
contrast to NoSQL. Applications based on NoSQL have data models explicitly designed
and augmented for them.
 Partial Record Updates – Data models that use NoSQL emphasize on column based
processing that enable data aggregation on more than one attributes and entities.
 Optimized MapReduce Processing – MapReduce, a native functionality for data
movement and mapping is a part of NoSQL.
 Horizontal Scalability – It allows on-the-fly addition of the processors with their own
resources. Each node is fed with a subset of data to process, thus increasing the efficiency
of the application. Horizontal scalability is more achievable in NoSQL data model as
compared to RDBMS [1].
4. Types of NoSQL Databases
 Key Value -> Key value data stores references the data using a unique key. The unique
key acts as a link to the data that is randomly and independently stored on the disk.
Addition of new data values can be done without inflicting with existing data .Thus the
key value stores are entirely schema less, the only structure that could possibly derived
from the key stores is the combination of key value pairs. In this paper we discuss our
findings on DynamoDB by Amazon.
 Document -> Document data stores references a collection of uniquely identified key-
value pairs known as Documents. Each document is recognized by its own unique ID in
the document collection. Document stores enables new documents to be stored with
different kind of attributes. In this paper we discuss our findings on MongoDB
 Column -> These are column centric data stores, where the indexing is done on every
column. It provides efficient and high speed read-write operations. Any modification or
addition of new data is stored using a timestamped version. We have introduced
Cassandra as an example for Column data store [1][10][12].
5. Comparative study between DynamoDB, Cassandra and MongoDB
5. A. DynamoDB
Dynamo was designed to provide a storage system within Amazon's platform that would be
stubborn during unforeseen circumstances.
5. A.1 Key Features of Dynamo:
 Key-Value Data Model - Data are represented as objects, and objects are determined
based on unique keys. The operations supported on the data are get/put associated with
the specified unique key.
 Eventual Consistency - The primary objective of Dynamo is to be stubborn against
unforeseen circumstances. However, it is a challenge to obtain such a consistency at the
initial phase. Hence, consistency increases eventually while all the replicas are updated in
a timely manner.
 Symmetry and Decentralization - Every node had as much responsibility as the peers in
Dynamo. Every node is equally responsible for its peers in Dynamo. Thus the probability
of failure is very low and the amount of manual intervention required would be very less
[24][26][27][28][29].
5. A.2 Operations:
Dynamo performs the following operations:
 Get - To return the object associated with the key.
 Put - To associate the object with the specified key.
5. A.3 Security:
Dynamo does not implement an efficient security mechanism, making it inefficient in handling
scenarios that require authorization [24][26][27][28][29].
5. A.4 Partitioning:
Dynamo is a highly scalable system that can adapt to varying amounts of data by adding and
removing nodes in a flexible manner. To implement partitioning, Dynamo uses a technique called
consistent hashing, every node is allocated to one or more points on a fixed ring. Each data item
is identified by a unique key. The data item is allocated to that specific node by hashing the key
of the same. The output thus obtained is a point on the ring. Ring is rotated clockwise to identify
the initial node. This derives an effective methodology of partitioning, as any deletion of node
would have an impact only on their immediate members in the ring.
5. A.5 Replication:
The data is replicated on multiple hosts, thus resulting in supreme quality, reliability and
durability. To implement replication, Dynamo replicates each data object at N nodes, where the
value of N is set by the user. Coordinator node is allocated with a key, K, data associated with the
K node is stored locally. Also, the node replicates N-1 different nodes forming a ring
[24][26][27][28][29].
5. A.6 Storage:
Every specific node in Dynamo has its own persistence engine, this engine is used for storage as
binary objects. Every instance uses its own unique persistence engine for storage. Few types of
persistence engines used by instances are MySQL and Berkeley Database (BDB). The persistence
engine makes use of pluggable components. The advantage of these pluggable engines is that
users can choose the engine based on their requirements. For instance, BDB handles relatively
small objects whereas MySQL can handle objects of large sizes [24][26][27][28][29].
5. A.7 Read/Write Implementation:
Dynamo implements a protocol that has two parameters R/W which represent the minimum
number of nodes that must participate in a read/write operation. When a write operation is to
be performed by the coordinator, it writes the data locally and then sends the write request to
the other N-1 replica nodes. If a response is obtained for at least W-1 nodes, then the operation
is said to be a success. Then, the coordinator informs the client.
When the coordinator is requested to perform a read operation, the coordinator sends a read
request to the N-1 nodes. When there is a response from at least R-1 nodes, the result is returned
to the client. If the objects received are different and if they are received from different nodes, a
list of objects is sent by the coordinator to the client rather than a single object
[24][26][27][28][29].
5. A.8 Concurrency Control:
Shared objects are allowed access concurrently among multiple clients. Before all replica nodes
are updated, write operations are returned. Hence, different versions of the same object may be
returned. Such inconsistencies are handled effectively by Dynamo [24][26][27][28][29].
B. MongoDB
MongoDB is a document key store based product developed in C++. The indexing in case of
MongoDB is done using document key structure. It is a schema-less, performance and query
optimization based product [12] [10].
5. B.1 Features of MongoDB
 Flexibility during initial phases of development and design.
 Horizontal scalability is infused an inbuilt feature in Mongo
 User friendly tools to transfer data between different databases
 Inter compatibility between implementation in various programming language [30].
5. B.2 Operations:
MongoDB allows these operations:
 Insert – Adds new documents to a collection.
 Find – Retrieves documents from a collection.
 Update– Updates documents of a collection.
 Remove – Removes a document from a collection [23][10].
5. B.3 Security
Since Mongo data files are unencrypted, they are prone to attacks. To lessen this, the application
must actively encrypt every sensitive information before writing into the DB and also prevent
unauthorized access. As Mongo uses java script for internal language, it is also prone to potential
script injection attacks. Authentication is not provided in sharded clusters of Mongo DB [13].
5. B.4 Partitioning/ Sharding
Sharding enables segregating of data in numerous machines. MongoDB allows automated
partitioning as a built in feature. This feature allows horizontal scaling across many processors
(nodes). Sharding combined with replication leads to availability of a highly mountable cluster.
For resource hungry applications, MongoDB creates cluster of shards, and balances the nodes,
without impacting the original node [1] [10] [11] [13].
5. B.5 Storage
Data format used in storing data in Binary JSON (BSON) with a maximum size of 16MB. Data
allocation is limited to 2GB per node in a 32 bit system. Data is mapped in-memory to increase
performance. Data is transferred to the disc after every minute by default, which is customizable
.Creation of new files is followed up by immediate flushing of data to disc, thus freeing up the
memory [10][11] [14].
5. B.6 Replication
In MongoDB data replication is driven by Master-slave replication with various replica sets. Data
is replicated in asynchronous form across servers. Read operations can be performed by multiple
slave servers whereas write operation can be handled by only one server at a given point in time.
All the servers at a given point in time have a master server and a new master server is elected
in case the previous one falters. Reading from multiple slave servers leads to eventual
consistency, to achieve load balancing. The client has the ability to enforce the write operations
the master server [10][11] [14] [13].
Replicas can be created in many ways in MongoDB catering to different needs of the application-
 Secondary Replicas - These replicas are not giving the opportunity to become a Master ,
they just store data
 Hidden Replicas - These replicas are hidden from the application and cannot be elected
as Master server. These replicas perform read only operations and are given voting rights
to elect a new master server in case of failover.
 Delayed - Delayed replicas are not synced with the master and will not have the updated
data.
 Arbiters - These replicas are basically arbitrators and do not take part in any functionalities
except communicating with other members and taking part in election [11] [14].
5. B.7 Read/Write Implementation
Indexing used in Mongo allows efficient read operations but effects negatively on the write/
insert operations. Mongo allows read operations on slave servers, write operations are controlled
by master server. Data reading is performed by slave servers simultaneously in an asynchronous
manner [14].
5. B.8 Concurrency Control:
Instant update on all the nodes is done on a MongoDB database system. Mongo DB does not
support concurrency control. It exhibits eventual consistency. Data is sent out asynchronously to
slave servers, thus it is not controlled.[11][12][13][14]
5. C. Cassandra
Cassandra was designed by Facebook to cater to humongous data needs of the organization.
Cassandra essentially vouches for two BASE features i.e. availability and scalability [21] It brings
together the data structure of BigTable and high availability feature of Dynamo [25][11].
5. C.1 Features of Cassandra
 Cassandra has multiple nodes in a cluster which are identical in terms of their software
infrastructure. All the nodes are symmetric and does not need a master node. This
feature allows linear scalability.
 Hashing implemented for a new data value does not significantly impact the indexing
maintained for other data values.
 Interface provided by Cassandra is not easy to use for developers [13].
5. C.2 Operations/Read Write Implementation
1) Write -> Write function when executed by a client, it is captured by one of the nodes in
the cluster randomly. This nodes then in turn writes the data to the cluster. The write
action is then replicated on all the other nodes of the cluster via a Replication placement
strategy.
2) Append -> after the write action being passed on to the individual nodes, change in data
is proceeded to commit.
3) Update -> Update function modifies the main memory structure table with the update.
4) Read -> Client makes a read request to the random node in Cassandra, this node then
identifies the node in the cluster holding the required data and then transfers the read
request to that particular node.
[11][13][14]
5. C.3 Storage
Column based storage is the mainstay of storage system in Cassandra. Cassandra predominantly
has one table as its primary operational unit. It also has a multidimensional map which is
distributed and linked using keys. [19][20]Column families are defined in the initial phase of
launching Cassandra, column families can be infinite. Specifications of at least some of the
column families is mandatory. These families are further subdivided into columns and super
columns. These can be added on runtime to the column families. Indexing of the columns can be
done using the name which is being assigned to the column, they store numerous data values in
each row. Similarly super columns are identified by their name and consist of multiple columns
which are linked to super columns randomly [11][13]14].
5. C.4 Partitioning
Cassandra runs on nodes in a cluster which are symmetrical, hence the same data is distributed
on all the nodes. Partitioning is done using two techniques i.e. Order-preserving partitioning and
Random partitioning. Order-preserving partitioning enables efficient execution of range queries
but might cause issues in load-balancing. The nodes and their keys are evenly distributed in the
cluster in both these techniques [11][13][14].
5. C.5 Replication
Replication of data is done on all the nodes of a cluster, data set is assigned to a particular node
in the cluster. Data items are allocated to a spot in the node depending on the key of the data
item, consistent hashing is used to identify the key of the data item. (24) Each data item has a
node coordinator which coordinates the replication of that data item to other nodes. Also client
can choose the no of replicas that a particular data item can maintain [8] [11].
5. C.6 Concurrency Control
Cassandra enables Multi version concurrency control [8].
5. C.7 Security
Data files and the interactions between the client-database are unencrypted, as a result of which
any user with access to file systems can extract the information he/she desires. Also, Intra cluster
communication can be done freely whereas Inter cluster communication comes with a facility of
authentication. Security in Cassandra is loosely implemented, IP addresses of the nodes of the
cluster is the only info needed to sniff into the system [13][11].
6. Conclusion and Recommendation
We have compared three main products i.e. Dynamo, MongoDB and Cassandra on the basis of
major features that drive the selection of a NoSQL product for any organization. MongoDB and
Cassandra are supersets of Dynamo, as they also are essentially implemented on the key-value
pair indexing. Dynamo fails to maintain relatively similar attributes together, as can be done in
MongoDB through document linking. Also, horizontal scalability is better achieved in MongoDB
and Cassandra than Dynamo.
Eventually, we have figured out that MongoDB and Cassandra are better products in terms of
partitioning, replication and concurrency control than Dynamo.
 When it comes to update operations, Cassandra is much faster than MongoDB and is
independent of the size of the data.
 Read operations in Cassandra are relatively fast than MongoDB for medium sized data
sets, speed of read operations decline with increase in number of records.
 Complex queries consisting of read and update operations simultaneously are better
performed in Cassandra than MongoDB.
 Symmetric node structure in cluster formation in Cassandra serves better concurrency
control than Master slave structure in MongoDB.
 Security in NoSQL systems is loosely implemented, comparatively Cassandra provides
better authentication and authorization mechanisms than what we have in MongoDB
[8][11][14].
We would recommend Cassandra as an overall better product when compared on the basis of
replication, concurrency control, Partitioning and Read/Write Implementation. Cassandra is tried
and tested, it is being used by more than 1500 companies [25].
References
[1] NoSQL Systems for Big Data Management- 2014 IEEE 10th World Congress on Services- Venkat N
Gudivada Weisburg Division of Computer Science Marshall University Huntington, WV, USA
gudivada@marshall.edu Dhana Rao Biological Sciences Department Marshall University Huntington,
WV, USA raod@marshall.edu Vijay V. Raghavan Center for Advanced Computer Studies University of
Louisiana at Lafayette Lafayette, LA, USA vijay@cacs.louisiana.edu
[2] R. Cattell, “Scalable sql and nosql data stores,” SIGMOD Rec., vol. 39, no. 4, pp. 12–27, May 2011.
[3] V. Benzaken, G. Castagna, K. Nguyen, and J. Siméon, “Static and dynamic semantics of NoSQL
languages,” SIGPLAN Not., vol. 48, no. 1, pp. 101–114, Jan. 2013.
[4] F. Cruz, F. Maia, M. Matos, R. Oliveira, J. a. Paulo, J. Pereira, and R. Vilaça, “MeT: Workload aware
elasticity for NoSQL, booktitle = Proceedings of the 8th ACM European Conference on Computer
Systems, series = EuroSys ’13, year = 2013, isbn = 978-1-4503-1994-2, location = Prague, Czech Republic,
pages = 183–196, numpages = 14, publisher = ACM, address = New York, NY, USA.”
[5] REDUCE, YOU SAY: What NoSQL can do for Data Aggregation and BI in Large Repositories - 2011 22nd
International Workshop on Database and Expert Systems Applications - Laurent Bonnet1,2 , Anne
Laurent1 , Michel Sala1 1LIRMM Universite Montpellier 2 – CNRS ´ 161 rue Ada, 34095 Montpellier –
France name.surname@lirmm.fr Ben´ edicte Laurent ´ 2 2Namae Concept Cap Omega 34000
Montpellier – France b.laurent@namaconcept.com Nicolas Sicard3 3LRIE – EFREI 30-32 av. de la
republique ´ 94 800 Villejuif – France nicolas.sicard@efrei.fr
[6] P. A. Bernstein and N. Goodman. Multiversion concurrency control – theory and algorithms. ACM
Trans. Database Syst., 8:465–483, December 1983.
[7] NoSQL Database: New Era of Databases for Big data Analytics - Classification, Characteristics and
Comparison - International Journal of Database Theory and Application Vol. 6, No. 4. 2013 - A B M
Moniruzzaman and Syed Akhter Hossain Department of Computer Science and Engineering Daffodil
International University abm.mzkhan@gmail.com, aktarhossain@daffodilvarsity.edu.bd
[8] NoSQL Databases: MongoDB vs Cassandra - Veronika Abramova Polytechnic Institute of Coimbra
ISEC - Coimbra Institute of Engineering Rua Pedro Nunes, 3030-199 Coimbra, Portugal Tel. ++351 239
790 200 a21190319@alunos.isec.pt Jorge Bernardino Polytechnic Institute of Coimbra ISEC - Coimbra
Institute of Engineering Rua Pedro Nunes, 3030-199 Coimbra, Portugal Tel. ++351 239 790 200
jorge@isec.pt
[9] Jing Han; Haihong, E.; Guan Le; Jian Du, "Survey on NoSQL database," Pervasive Computing and
Applications (ICPCA), 2011 6th International Conference on , vol., no., pp.363,366, 26-28 Oct. 2011.
doi:10.1109/ICPCA.2011.6106531.
[10] NoSQL Evaluation A Use Case Oriented Survey - 2011 International Conference on Cloud and Service
Computing - Robin Hecht Chair ofApplied Computer Science IV University of Bayreuth Bayreuth,
Germany robin.hecht@uni -bayreuth.de, Stefan Jablonski Chair ofApplied Computer Science IV
University ofBayreuth Bayreuth, Germany stefan.jablonski@uni-bayreuth.de
[11] A Comparative Analysis of Different NoSQL Databases on Data Model, Query Model and Replication
Model-> Clarence J. M. Tauro1,∗, Baswanth Rao Patil2 and K. R. Prashanth3 - 1Christ University, Hosur
Road, Bangalore, India. 2Department of Computer Science, Christ University, Hosur Road, Bangalore,
India. 3Department of Computer Science, Christ University, Hosur Road, Bangalore, India. e-mail:
clarence.tauro@res.christuniversity.in; baswanth.rao@cs.christuniversity.in;
prashanth.r@cs.christuniversity.in
[12] 2012 Third International Conference on Emerging Intelligent Data and Web Technologies -
MongoDB vs Oracle - database comparison - Alexandru Boicea, Florin Radulescu, Laura Ioana Agapin
Faculty of Automatic Control and Computer Science , Politehnical University of Bucharest,Bucharest,
Romania . alexandru.boicea@cs.pub.ro, florin.radulescu@cs.pub.ro, lauraioana.agapin@gmail.com
[13] Security Issues in NoSQL Databases - 2011 International Joint Conference of IEEE TrustCom-11/IEEE
ICESS-11/FCST-11 - Lior Okman Deutsche Telekom Laboratories at Ben-Gurion University, Beer-Sheva,
Israel, Nurit Gal-Oz, Yaron Gonen, Ehud Gudes Deutsche Telekom Laboratories at Ben-Gurion University,
and Dept of Computer Science, Ben-Gurion University, Beer-Sheva, Israel, Jenny Abramov Deutsche
Telekom Laboratories at Ben-Gurion University and Dept of Information Systems Eng. Ben-Gurion
University, Beer-Sheva, Israel.
[14] NoSQL Databases: MongoDB vs Cassandra - Veronika Abramova Polytechnic Institute of Coimbra
ISEC - Coimbra Institute of Engineering Rua Pedro Nunes, 3030-199 Coimbra, Portugal Tel. ++351 239
790 200 a21190319@alunos.isec.pt, Jorge Bernardino Polytechnic Institute of Coimbra ISEC - Coimbra
Institute of Engineering Rua Pedro Nunes, 3030-199 Coimbra, Portugal Tel. ++351 239 790 200
jorge@isec.pt
[15] E. Brewer. (2000, Jun.) Towards robust distributed systems. [Online]. Available:
http://www.cs.berkeley.edu/ brewer/cs262b-2004/PODCkeynote.pdf
[16] S. Gilbert and N. Lynch, “Brewer’s conjecture and the feasibility of consistent, available, partition-
tolerant web services,” SIGACT News, vol. 33, pp. 51–59, June 2002. [Online]. Available:
http://doi.acm.org/10.1145/564585.56460
[17] Jing Han; Haihong, E.; Guan Le; Jian Du, "Survey on NoSQL database," Pervasive Computing and
Applications (ICPCA), 2011 6th International Conference on , vol., no., pp.363,366, 26-28 Oct. 2011.
doi:10.1109/ICPCA.2011.6106531.
[18] Tudorica, B.G.; Bucur, C., "A comparison between several NoSQL databases with comments and
notes," Roedunet International Conference (RoEduNet), 2011 10th , vol., no., pp.1,5, 23-25 June 2011.
doi:10.1109/RoEduNet.2011.5993686.
[19] Lakshman, Avinash, Malik and Prashant, Cassandra – A Decentralized Structured Storage
System. In: SIGOPS Operating Systems Review, vol. 44, pp. 35–40, April (2010).
[20] Lakshman and Avinash, Cassandra – A structured storage system on a P2P Network. August
(2008).
[21] The apache software foundation, The Apache Cassandra Project (2011).
http://cassandra.apache.org/, last accessed on January (2011).
[22] David Karger, Eric Lehman, Tom Leighton, Rina Panigrahy, Matthew Levine and Daniel
Lewin, Consistent hashing and random trees: distributed caching protocols for relieving
hotspots on the WorldWideWeb .In Proceedings of the twenty-ninth annual ACM symposium
on Theory of computing, STOC’97, pp. 654–663, New York, NY, USA (1997) ACM.
[23] https://www.mongodb.org/ - https://docs.mongodb.org/manual/
[24] https://aws.amazon.com/dynamodb/
[25] http://cassandra.apache.org/
[26] Dynamo and BigTable – Review and Comparison - 2041 IEEE 28-th Convention of Electrical and
Electronics Engineers in Israel - Grisha Weintraub Dept. of Mathematics and Computer Science The
Open University Raanana, Israel
[27] Neal Leavitt: Will NoSQL Databases Live Up to Their Promise?. IEEE Computer (COMPUTER)
43(2):12-14 (2010)
[28] G. DeCandia et a l.: Dynamo: amazon's highly available keyvalue store. SOSP 2007:205-220
[29] Rick Cattell: Scalable SQL and NoSQL data stores. SIGMOD Record (SIGMOD) 39(4):12-27 (2010)
[30] 2012 Third International Conference on Emerging Intelligent Data and Web Technologies -
MongoDB vs Oracle - database comparison- Alexandru Boicea, Florin Radulescu, Laura Ioana Agapin
Faculty of Automatic Control and Computer Science Politehnica University of Bucharest Bucharest,
Romania alexandru.boicea@cs.pub.ro, florin.radulescu@cs.pub.ro, lauraioana.agapin@gmail.com

More Related Content

What's hot

Cassandra NoSQL Tutorial
Cassandra NoSQL TutorialCassandra NoSQL Tutorial
Cassandra NoSQL Tutorial
Michelle Darling
 
Cassandra tutorial
Cassandra tutorialCassandra tutorial
Cassandra tutorial
Ramakrishna kapa
 
Why Cassandra?
Why Cassandra?Why Cassandra?
Why Cassandra?
Tayfun Sevimli
 
Relational databases vs Non-relational databases
Relational databases vs Non-relational databasesRelational databases vs Non-relational databases
Relational databases vs Non-relational databases
James Serra
 
NoSQL Data Architecture Patterns
NoSQL Data ArchitecturePatternsNoSQL Data ArchitecturePatterns
NoSQL Data Architecture Patterns
Maynooth University
 
Cassandra
CassandraCassandra
Cassandra
Edureka!
 
NoSQL Consepts
NoSQL ConseptsNoSQL Consepts
NoSQL Consepts
Maynooth University
 
NoSQL Seminer
NoSQL SeminerNoSQL Seminer
NoSQL Seminer
Partha Das
 
NoSQL databases pros and cons
NoSQL databases pros and consNoSQL databases pros and cons
NoSQL databases pros and cons
Fabio Fumarola
 
Cassandra DataTables Using RESTful API
Cassandra DataTables Using RESTful APICassandra DataTables Using RESTful API
Cassandra DataTables Using RESTful API
Simran Kedia
 
Characteristics of no sql databases
Characteristics of no sql databasesCharacteristics of no sql databases
Characteristics of no sql databases
Dipti Borkar
 
Presentation of Apache Cassandra
Presentation of Apache Cassandra Presentation of Apache Cassandra
Presentation of Apache Cassandra
Nikiforos Botis
 
Scalable relational database with SQL Azure
Scalable relational database with SQL AzureScalable relational database with SQL Azure
Scalable relational database with SQL Azure
Shy Engelberg
 
Introduction to couchbase
Introduction to couchbaseIntroduction to couchbase
Introduction to couchbase
Dipti Borkar
 
Cassandra at eBay - Cassandra Summit 2012
Cassandra at eBay - Cassandra Summit 2012Cassandra at eBay - Cassandra Summit 2012
Cassandra at eBay - Cassandra Summit 2012
Jay Patel
 
Altoros using no sql databases for interactive_applications
Altoros using no sql databases for interactive_applicationsAltoros using no sql databases for interactive_applications
Altoros using no sql databases for interactive_applications
Jeff Harris
 
Project Voldemort
Project VoldemortProject Voldemort
Project Voldemort
Gregory Pence
 
Databases in the Cloud
Databases in the CloudDatabases in the Cloud
Databases in the Cloud
Amazon Web Services
 
NoSql
NoSqlNoSql
Webinar: DataStax Training - Everything you need to become a Cassandra Rockstar
Webinar: DataStax Training - Everything you need to become a Cassandra RockstarWebinar: DataStax Training - Everything you need to become a Cassandra Rockstar
Webinar: DataStax Training - Everything you need to become a Cassandra Rockstar
DataStax
 

What's hot (20)

Cassandra NoSQL Tutorial
Cassandra NoSQL TutorialCassandra NoSQL Tutorial
Cassandra NoSQL Tutorial
 
Cassandra tutorial
Cassandra tutorialCassandra tutorial
Cassandra tutorial
 
Why Cassandra?
Why Cassandra?Why Cassandra?
Why Cassandra?
 
Relational databases vs Non-relational databases
Relational databases vs Non-relational databasesRelational databases vs Non-relational databases
Relational databases vs Non-relational databases
 
NoSQL Data Architecture Patterns
NoSQL Data ArchitecturePatternsNoSQL Data ArchitecturePatterns
NoSQL Data Architecture Patterns
 
Cassandra
CassandraCassandra
Cassandra
 
NoSQL Consepts
NoSQL ConseptsNoSQL Consepts
NoSQL Consepts
 
NoSQL Seminer
NoSQL SeminerNoSQL Seminer
NoSQL Seminer
 
NoSQL databases pros and cons
NoSQL databases pros and consNoSQL databases pros and cons
NoSQL databases pros and cons
 
Cassandra DataTables Using RESTful API
Cassandra DataTables Using RESTful APICassandra DataTables Using RESTful API
Cassandra DataTables Using RESTful API
 
Characteristics of no sql databases
Characteristics of no sql databasesCharacteristics of no sql databases
Characteristics of no sql databases
 
Presentation of Apache Cassandra
Presentation of Apache Cassandra Presentation of Apache Cassandra
Presentation of Apache Cassandra
 
Scalable relational database with SQL Azure
Scalable relational database with SQL AzureScalable relational database with SQL Azure
Scalable relational database with SQL Azure
 
Introduction to couchbase
Introduction to couchbaseIntroduction to couchbase
Introduction to couchbase
 
Cassandra at eBay - Cassandra Summit 2012
Cassandra at eBay - Cassandra Summit 2012Cassandra at eBay - Cassandra Summit 2012
Cassandra at eBay - Cassandra Summit 2012
 
Altoros using no sql databases for interactive_applications
Altoros using no sql databases for interactive_applicationsAltoros using no sql databases for interactive_applications
Altoros using no sql databases for interactive_applications
 
Project Voldemort
Project VoldemortProject Voldemort
Project Voldemort
 
Databases in the Cloud
Databases in the CloudDatabases in the Cloud
Databases in the Cloud
 
NoSql
NoSqlNoSql
NoSql
 
Webinar: DataStax Training - Everything you need to become a Cassandra Rockstar
Webinar: DataStax Training - Everything you need to become a Cassandra RockstarWebinar: DataStax Training - Everything you need to become a Cassandra Rockstar
Webinar: DataStax Training - Everything you need to become a Cassandra Rockstar
 

Viewers also liked

Project Risk Management
Project Risk ManagementProject Risk Management
Project Risk Management
Nimat Khattak
 
NoSql Databases
NoSql DatabasesNoSql Databases
NoSql Databases
Nimat Khattak
 
Sql ppt
Sql pptSql ppt
Sql ppt
Roni Roy
 
Introduction to NoSQL Databases
Introduction to NoSQL DatabasesIntroduction to NoSQL Databases
Introduction to NoSQL Databases
Derek Stainer
 
Dynamo and BigTable - Review and Comparison
Dynamo and BigTable - Review and ComparisonDynamo and BigTable - Review and Comparison
Dynamo and BigTable - Review and Comparison
Grisha Weintraub
 
Nosql databases
Nosql databasesNosql databases
Nosql databases
Fayez Shayeb
 

Viewers also liked (6)

Project Risk Management
Project Risk ManagementProject Risk Management
Project Risk Management
 
NoSql Databases
NoSql DatabasesNoSql Databases
NoSql Databases
 
Sql ppt
Sql pptSql ppt
Sql ppt
 
Introduction to NoSQL Databases
Introduction to NoSQL DatabasesIntroduction to NoSQL Databases
Introduction to NoSQL Databases
 
Dynamo and BigTable - Review and Comparison
Dynamo and BigTable - Review and ComparisonDynamo and BigTable - Review and Comparison
Dynamo and BigTable - Review and Comparison
 
Nosql databases
Nosql databasesNosql databases
Nosql databases
 

Similar to NoSQL Databases: An Introduction and Comparison between Dynamo, MongoDB and Cassandra

Quantitative Performance Evaluation of Cloud-Based MySQL (Relational) Vs. Mon...
Quantitative Performance Evaluation of Cloud-Based MySQL (Relational) Vs. Mon...Quantitative Performance Evaluation of Cloud-Based MySQL (Relational) Vs. Mon...
Quantitative Performance Evaluation of Cloud-Based MySQL (Relational) Vs. Mon...
Darshan Gorasiya
 
No sql database
No sql databaseNo sql database
No sql database
vishal gupta
 
No Sql Databases
No Sql DatabasesNo Sql Databases
No Sql Databases
Jessica Cannella
 
Data Partitioning in Mongo DB with Cloud
Data Partitioning in Mongo DB with CloudData Partitioning in Mongo DB with Cloud
Data Partitioning in Mongo DB with Cloud
IJAAS Team
 
3170722_BDA_GTU_Study_Material_Presentations_Unit-3_29092021094744AM.pdf
3170722_BDA_GTU_Study_Material_Presentations_Unit-3_29092021094744AM.pdf3170722_BDA_GTU_Study_Material_Presentations_Unit-3_29092021094744AM.pdf
3170722_BDA_GTU_Study_Material_Presentations_Unit-3_29092021094744AM.pdf
KrishnaShah908060
 
Assignment_4
Assignment_4Assignment_4
Assignment_4
Kirti J
 
EVALUATING CASSANDRA, MONGO DB LIKE NOSQL DATASETS USING HADOOP STREAMING
EVALUATING CASSANDRA, MONGO DB LIKE NOSQL DATASETS USING HADOOP STREAMINGEVALUATING CASSANDRA, MONGO DB LIKE NOSQL DATASETS USING HADOOP STREAMING
EVALUATING CASSANDRA, MONGO DB LIKE NOSQL DATASETS USING HADOOP STREAMING
ijiert bestjournal
 
Data management in cloud study of existing systems and future opportunities
Data management in cloud study of existing systems and future opportunitiesData management in cloud study of existing systems and future opportunities
Data management in cloud study of existing systems and future opportunities
Editor Jacotech
 
Rise of NewSQL
Rise of NewSQLRise of NewSQL
Rise of NewSQL
Sushant Choudhary
 
Challenges Management and Opportunities of Cloud DBA
Challenges Management and Opportunities of Cloud DBAChallenges Management and Opportunities of Cloud DBA
Challenges Management and Opportunities of Cloud DBA
inventy
 
access.2021.3077680.pdf
access.2021.3077680.pdfaccess.2021.3077680.pdf
access.2021.3077680.pdf
neju3
 
A Seminar on NoSQL Databases.
A Seminar on NoSQL Databases.A Seminar on NoSQL Databases.
A Seminar on NoSQL Databases.
Navdeep Charan
 
Introduction to MongoDB and its best practices
Introduction to MongoDB and its best practicesIntroduction to MongoDB and its best practices
Introduction to MongoDB and its best practices
AshishRathore72
 
No sql
No sqlNo sql
Analysis and evaluation of riak kv cluster environment using basho bench
Analysis and evaluation of riak kv cluster environment using basho benchAnalysis and evaluation of riak kv cluster environment using basho bench
Analysis and evaluation of riak kv cluster environment using basho bench
StevenChike
 
NoSQL On Social And Sematic Web
NoSQL On Social And Sematic WebNoSQL On Social And Sematic Web
NoSQL On Social And Sematic Web
Stefan Prutianu
 
No Sql On Social And Sematic Web
No Sql On Social And Sematic WebNo Sql On Social And Sematic Web
No Sql On Social And Sematic Web
Stefan Ceriu
 
Modern databases and its challenges (SQL ,NoSQL, NewSQL)
Modern databases and its challenges (SQL ,NoSQL, NewSQL)Modern databases and its challenges (SQL ,NoSQL, NewSQL)
Modern databases and its challenges (SQL ,NoSQL, NewSQL)
Mohamed Galal
 
Unit 3 MongDB
Unit 3 MongDBUnit 3 MongDB
Unit 3 MongDB
Praveen M Jigajinni
 
Introduction to NoSQL
Introduction to NoSQLIntroduction to NoSQL
Introduction to NoSQL
balwinders
 

Similar to NoSQL Databases: An Introduction and Comparison between Dynamo, MongoDB and Cassandra (20)

Quantitative Performance Evaluation of Cloud-Based MySQL (Relational) Vs. Mon...
Quantitative Performance Evaluation of Cloud-Based MySQL (Relational) Vs. Mon...Quantitative Performance Evaluation of Cloud-Based MySQL (Relational) Vs. Mon...
Quantitative Performance Evaluation of Cloud-Based MySQL (Relational) Vs. Mon...
 
No sql database
No sql databaseNo sql database
No sql database
 
No Sql Databases
No Sql DatabasesNo Sql Databases
No Sql Databases
 
Data Partitioning in Mongo DB with Cloud
Data Partitioning in Mongo DB with CloudData Partitioning in Mongo DB with Cloud
Data Partitioning in Mongo DB with Cloud
 
3170722_BDA_GTU_Study_Material_Presentations_Unit-3_29092021094744AM.pdf
3170722_BDA_GTU_Study_Material_Presentations_Unit-3_29092021094744AM.pdf3170722_BDA_GTU_Study_Material_Presentations_Unit-3_29092021094744AM.pdf
3170722_BDA_GTU_Study_Material_Presentations_Unit-3_29092021094744AM.pdf
 
Assignment_4
Assignment_4Assignment_4
Assignment_4
 
EVALUATING CASSANDRA, MONGO DB LIKE NOSQL DATASETS USING HADOOP STREAMING
EVALUATING CASSANDRA, MONGO DB LIKE NOSQL DATASETS USING HADOOP STREAMINGEVALUATING CASSANDRA, MONGO DB LIKE NOSQL DATASETS USING HADOOP STREAMING
EVALUATING CASSANDRA, MONGO DB LIKE NOSQL DATASETS USING HADOOP STREAMING
 
Data management in cloud study of existing systems and future opportunities
Data management in cloud study of existing systems and future opportunitiesData management in cloud study of existing systems and future opportunities
Data management in cloud study of existing systems and future opportunities
 
Rise of NewSQL
Rise of NewSQLRise of NewSQL
Rise of NewSQL
 
Challenges Management and Opportunities of Cloud DBA
Challenges Management and Opportunities of Cloud DBAChallenges Management and Opportunities of Cloud DBA
Challenges Management and Opportunities of Cloud DBA
 
access.2021.3077680.pdf
access.2021.3077680.pdfaccess.2021.3077680.pdf
access.2021.3077680.pdf
 
A Seminar on NoSQL Databases.
A Seminar on NoSQL Databases.A Seminar on NoSQL Databases.
A Seminar on NoSQL Databases.
 
Introduction to MongoDB and its best practices
Introduction to MongoDB and its best practicesIntroduction to MongoDB and its best practices
Introduction to MongoDB and its best practices
 
No sql
No sqlNo sql
No sql
 
Analysis and evaluation of riak kv cluster environment using basho bench
Analysis and evaluation of riak kv cluster environment using basho benchAnalysis and evaluation of riak kv cluster environment using basho bench
Analysis and evaluation of riak kv cluster environment using basho bench
 
NoSQL On Social And Sematic Web
NoSQL On Social And Sematic WebNoSQL On Social And Sematic Web
NoSQL On Social And Sematic Web
 
No Sql On Social And Sematic Web
No Sql On Social And Sematic WebNo Sql On Social And Sematic Web
No Sql On Social And Sematic Web
 
Modern databases and its challenges (SQL ,NoSQL, NewSQL)
Modern databases and its challenges (SQL ,NoSQL, NewSQL)Modern databases and its challenges (SQL ,NoSQL, NewSQL)
Modern databases and its challenges (SQL ,NoSQL, NewSQL)
 
Unit 3 MongDB
Unit 3 MongDBUnit 3 MongDB
Unit 3 MongDB
 
Introduction to NoSQL
Introduction to NoSQLIntroduction to NoSQL
Introduction to NoSQL
 

More from Vivek Adithya Mohankumar

Vivek Adithya Mohankumar Resume
Vivek Adithya Mohankumar ResumeVivek Adithya Mohankumar Resume
Vivek Adithya Mohankumar Resume
Vivek Adithya Mohankumar
 
Yahoo Answers! Answer Evaluation
Yahoo Answers! Answer EvaluationYahoo Answers! Answer Evaluation
Yahoo Answers! Answer Evaluation
Vivek Adithya Mohankumar
 
Career Opportunities in Business Analytics - What it needs to take there?
Career Opportunities in Business Analytics - What it needs to take there?Career Opportunities in Business Analytics - What it needs to take there?
Career Opportunities in Business Analytics - What it needs to take there?
Vivek Adithya Mohankumar
 
Time Series Study on Bitcoin and Crude Oil Prices
Time Series Study on Bitcoin and Crude Oil PricesTime Series Study on Bitcoin and Crude Oil Prices
Time Series Study on Bitcoin and Crude Oil Prices
Vivek Adithya Mohankumar
 
Enterprise Process Integeratioin
Enterprise Process IntegeratioinEnterprise Process Integeratioin
Enterprise Process Integeratioin
Vivek Adithya Mohankumar
 
Vivek Adithya Mohankumar - Resume
Vivek Adithya Mohankumar - ResumeVivek Adithya Mohankumar - Resume
Vivek Adithya Mohankumar - Resume
Vivek Adithya Mohankumar
 

More from Vivek Adithya Mohankumar (6)

Vivek Adithya Mohankumar Resume
Vivek Adithya Mohankumar ResumeVivek Adithya Mohankumar Resume
Vivek Adithya Mohankumar Resume
 
Yahoo Answers! Answer Evaluation
Yahoo Answers! Answer EvaluationYahoo Answers! Answer Evaluation
Yahoo Answers! Answer Evaluation
 
Career Opportunities in Business Analytics - What it needs to take there?
Career Opportunities in Business Analytics - What it needs to take there?Career Opportunities in Business Analytics - What it needs to take there?
Career Opportunities in Business Analytics - What it needs to take there?
 
Time Series Study on Bitcoin and Crude Oil Prices
Time Series Study on Bitcoin and Crude Oil PricesTime Series Study on Bitcoin and Crude Oil Prices
Time Series Study on Bitcoin and Crude Oil Prices
 
Enterprise Process Integeratioin
Enterprise Process IntegeratioinEnterprise Process Integeratioin
Enterprise Process Integeratioin
 
Vivek Adithya Mohankumar - Resume
Vivek Adithya Mohankumar - ResumeVivek Adithya Mohankumar - Resume
Vivek Adithya Mohankumar - Resume
 

Recently uploaded

20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
Matthew Sinclair
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Paige Cruz
 
Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
mikeeftimakis1
 
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
SOFTTECHHUB
 
GraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracyGraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracy
Tomaz Bratanic
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
Safe Software
 
GenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizationsGenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizations
kumardaparthi1024
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
Octavian Nadolu
 
Serial Arm Control in Real Time Presentation
Serial Arm Control in Real Time PresentationSerial Arm Control in Real Time Presentation
Serial Arm Control in Real Time Presentation
tolgahangng
 
Driving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success StoryDriving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success Story
Safe Software
 
20240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 202420240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 2024
Matthew Sinclair
 
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Speck&Tech
 
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfUnlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Malak Abu Hammad
 
Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
Aftab Hussain
 
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
Neo4j
 
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc
 
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
Neo4j
 
UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
DianaGray10
 
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
Edge AI and Vision Alliance
 
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
Neo4j
 

Recently uploaded (20)

20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
 
Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
 
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
 
GraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracyGraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracy
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
 
GenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizationsGenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizations
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
 
Serial Arm Control in Real Time Presentation
Serial Arm Control in Real Time PresentationSerial Arm Control in Real Time Presentation
Serial Arm Control in Real Time Presentation
 
Driving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success StoryDriving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success Story
 
20240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 202420240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 2024
 
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
 
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfUnlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
 
Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
 
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
 
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy Survey
 
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
 
UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
 
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
 
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
 

NoSQL Databases: An Introduction and Comparison between Dynamo, MongoDB and Cassandra

  • 1. INSY 5337 Data Warehousing – Term Paper NoSQL Databases: An Introduction and Comparison between Dynamo, MongoDB and Cassandra Authored By- Nitin Shewale Aditya Kashyap Akshay Vadnere Vivek Adithya Aditya Trilok Abstract Data volumes have been growing exponentially in recent years, this increase in data across all the business domains have played a significant part in the analysis and structuring of data. NoSQL databases are becoming popular as more organizations consider it as a feasible option because of its schema-less structure along with its capability of handling BIG Data. In this paper, we talk about various types of NoSQL databases based on implementation perspective like key store, columnar and document oriented. This research paper covers the consolidated applied interpretation of NoSQL system, depending on the various database features like security, concurrency control, partitioning, replication, Read/Write implementation. We also would draw out comparisons among the popular products and recommend a particular NoSQL solution on the above mentioned factors.
  • 2. 1. Introduction Until recently, Relational database systems have been on the forefront of data storage and management operations. The advent of mobile applications that requires real time analysis like GPS based services, banking and social media has led to huge unstructured data being produced every second. Traditional RDBMS systems have found it difficult to cater to these huge chunks of unstructured data, as RDBMS mainly stores structured data in tabular format. Also, the unstructured data being mapped to a relational database results in increase in complexity as it uses expensive infrastructure to model the same. Also, even if the data model fits into SQL, platter of features provided by SQL becomes an overhead. Relational schema becomes a burden on applications which are trying to store data in multiple forms like videos, blogs and images etc. A new methodology for data management was introduced for the management of unstructured data known as NoSQL (Not Only Structured Query Language). NoSQL covers a broader topic of data structuring, storage and aggregation via various implementation approaches. It can store unstructured data and provide real time analysis to back up the web service applications. It gives up on conventional benchmarking of database management principles like Atomicity, Consistency, Isolation and Durability, to attain flexible data handling. Also, it provides inbuilt data partitioning and replication. Essentially, data across the business domains is governed by company policies and processes for data control and quality. NoSQL moves away from these restrictions to promote performance and scalability requirements of particular application and services [1][2][3][4][10].
  • 3. 2. NoSQL Characteristics Analogy of ACID properties in NoSQL is BASE, which is derived from CAP Theorem. CAP Theorem assures following database management standards –  Consistency – The given data should be available at all parts of the system at the same time.  Availability – The data should be available any time and should provide a response every time.  Partition Tolerance – Total failure of the system should not be driven by failure of one section or partition of the system [7][8][9]. NoSQL database systems, like MongoDB and Cassandra, have strayed away from consistency to attain greater availability and efficient partitioning. This gave rise to systems driven on BASE principles.  Basically Available – Data is distributed across various systems, hence the data is always available in one of the system, even if one of the systems fail.  Soft State – Since the data is distributed, there is no assurance of consistency.  Eventually Consistent – The data would be consistent eventually, even if it’s not at a given point in time [5][6][10]. 3. Features of NoSQL  Flexible Data Models – NoSQL allows horizontal data partitioning across different distributed systems or processors. However, relational model has a fixed schema in
  • 4. contrast to NoSQL. Applications based on NoSQL have data models explicitly designed and augmented for them.  Partial Record Updates – Data models that use NoSQL emphasize on column based processing that enable data aggregation on more than one attributes and entities.  Optimized MapReduce Processing – MapReduce, a native functionality for data movement and mapping is a part of NoSQL.  Horizontal Scalability – It allows on-the-fly addition of the processors with their own resources. Each node is fed with a subset of data to process, thus increasing the efficiency of the application. Horizontal scalability is more achievable in NoSQL data model as compared to RDBMS [1]. 4. Types of NoSQL Databases  Key Value -> Key value data stores references the data using a unique key. The unique key acts as a link to the data that is randomly and independently stored on the disk. Addition of new data values can be done without inflicting with existing data .Thus the key value stores are entirely schema less, the only structure that could possibly derived from the key stores is the combination of key value pairs. In this paper we discuss our findings on DynamoDB by Amazon.  Document -> Document data stores references a collection of uniquely identified key- value pairs known as Documents. Each document is recognized by its own unique ID in
  • 5. the document collection. Document stores enables new documents to be stored with different kind of attributes. In this paper we discuss our findings on MongoDB  Column -> These are column centric data stores, where the indexing is done on every column. It provides efficient and high speed read-write operations. Any modification or addition of new data is stored using a timestamped version. We have introduced Cassandra as an example for Column data store [1][10][12]. 5. Comparative study between DynamoDB, Cassandra and MongoDB 5. A. DynamoDB Dynamo was designed to provide a storage system within Amazon's platform that would be stubborn during unforeseen circumstances. 5. A.1 Key Features of Dynamo:  Key-Value Data Model - Data are represented as objects, and objects are determined based on unique keys. The operations supported on the data are get/put associated with the specified unique key.  Eventual Consistency - The primary objective of Dynamo is to be stubborn against unforeseen circumstances. However, it is a challenge to obtain such a consistency at the initial phase. Hence, consistency increases eventually while all the replicas are updated in a timely manner.
  • 6.  Symmetry and Decentralization - Every node had as much responsibility as the peers in Dynamo. Every node is equally responsible for its peers in Dynamo. Thus the probability of failure is very low and the amount of manual intervention required would be very less [24][26][27][28][29]. 5. A.2 Operations: Dynamo performs the following operations:  Get - To return the object associated with the key.  Put - To associate the object with the specified key. 5. A.3 Security: Dynamo does not implement an efficient security mechanism, making it inefficient in handling scenarios that require authorization [24][26][27][28][29]. 5. A.4 Partitioning: Dynamo is a highly scalable system that can adapt to varying amounts of data by adding and removing nodes in a flexible manner. To implement partitioning, Dynamo uses a technique called consistent hashing, every node is allocated to one or more points on a fixed ring. Each data item is identified by a unique key. The data item is allocated to that specific node by hashing the key of the same. The output thus obtained is a point on the ring. Ring is rotated clockwise to identify the initial node. This derives an effective methodology of partitioning, as any deletion of node would have an impact only on their immediate members in the ring.
  • 7. 5. A.5 Replication: The data is replicated on multiple hosts, thus resulting in supreme quality, reliability and durability. To implement replication, Dynamo replicates each data object at N nodes, where the value of N is set by the user. Coordinator node is allocated with a key, K, data associated with the K node is stored locally. Also, the node replicates N-1 different nodes forming a ring [24][26][27][28][29]. 5. A.6 Storage: Every specific node in Dynamo has its own persistence engine, this engine is used for storage as binary objects. Every instance uses its own unique persistence engine for storage. Few types of persistence engines used by instances are MySQL and Berkeley Database (BDB). The persistence engine makes use of pluggable components. The advantage of these pluggable engines is that users can choose the engine based on their requirements. For instance, BDB handles relatively small objects whereas MySQL can handle objects of large sizes [24][26][27][28][29]. 5. A.7 Read/Write Implementation: Dynamo implements a protocol that has two parameters R/W which represent the minimum number of nodes that must participate in a read/write operation. When a write operation is to be performed by the coordinator, it writes the data locally and then sends the write request to the other N-1 replica nodes. If a response is obtained for at least W-1 nodes, then the operation is said to be a success. Then, the coordinator informs the client.
  • 8. When the coordinator is requested to perform a read operation, the coordinator sends a read request to the N-1 nodes. When there is a response from at least R-1 nodes, the result is returned to the client. If the objects received are different and if they are received from different nodes, a list of objects is sent by the coordinator to the client rather than a single object [24][26][27][28][29]. 5. A.8 Concurrency Control: Shared objects are allowed access concurrently among multiple clients. Before all replica nodes are updated, write operations are returned. Hence, different versions of the same object may be returned. Such inconsistencies are handled effectively by Dynamo [24][26][27][28][29]. B. MongoDB MongoDB is a document key store based product developed in C++. The indexing in case of MongoDB is done using document key structure. It is a schema-less, performance and query optimization based product [12] [10]. 5. B.1 Features of MongoDB  Flexibility during initial phases of development and design.  Horizontal scalability is infused an inbuilt feature in Mongo  User friendly tools to transfer data between different databases  Inter compatibility between implementation in various programming language [30].
  • 9. 5. B.2 Operations: MongoDB allows these operations:  Insert – Adds new documents to a collection.  Find – Retrieves documents from a collection.  Update– Updates documents of a collection.  Remove – Removes a document from a collection [23][10]. 5. B.3 Security Since Mongo data files are unencrypted, they are prone to attacks. To lessen this, the application must actively encrypt every sensitive information before writing into the DB and also prevent unauthorized access. As Mongo uses java script for internal language, it is also prone to potential script injection attacks. Authentication is not provided in sharded clusters of Mongo DB [13]. 5. B.4 Partitioning/ Sharding Sharding enables segregating of data in numerous machines. MongoDB allows automated partitioning as a built in feature. This feature allows horizontal scaling across many processors (nodes). Sharding combined with replication leads to availability of a highly mountable cluster. For resource hungry applications, MongoDB creates cluster of shards, and balances the nodes, without impacting the original node [1] [10] [11] [13]. 5. B.5 Storage Data format used in storing data in Binary JSON (BSON) with a maximum size of 16MB. Data allocation is limited to 2GB per node in a 32 bit system. Data is mapped in-memory to increase
  • 10. performance. Data is transferred to the disc after every minute by default, which is customizable .Creation of new files is followed up by immediate flushing of data to disc, thus freeing up the memory [10][11] [14]. 5. B.6 Replication In MongoDB data replication is driven by Master-slave replication with various replica sets. Data is replicated in asynchronous form across servers. Read operations can be performed by multiple slave servers whereas write operation can be handled by only one server at a given point in time. All the servers at a given point in time have a master server and a new master server is elected in case the previous one falters. Reading from multiple slave servers leads to eventual consistency, to achieve load balancing. The client has the ability to enforce the write operations the master server [10][11] [14] [13]. Replicas can be created in many ways in MongoDB catering to different needs of the application-  Secondary Replicas - These replicas are not giving the opportunity to become a Master , they just store data  Hidden Replicas - These replicas are hidden from the application and cannot be elected as Master server. These replicas perform read only operations and are given voting rights to elect a new master server in case of failover.  Delayed - Delayed replicas are not synced with the master and will not have the updated data.
  • 11.  Arbiters - These replicas are basically arbitrators and do not take part in any functionalities except communicating with other members and taking part in election [11] [14]. 5. B.7 Read/Write Implementation Indexing used in Mongo allows efficient read operations but effects negatively on the write/ insert operations. Mongo allows read operations on slave servers, write operations are controlled by master server. Data reading is performed by slave servers simultaneously in an asynchronous manner [14]. 5. B.8 Concurrency Control: Instant update on all the nodes is done on a MongoDB database system. Mongo DB does not support concurrency control. It exhibits eventual consistency. Data is sent out asynchronously to slave servers, thus it is not controlled.[11][12][13][14] 5. C. Cassandra Cassandra was designed by Facebook to cater to humongous data needs of the organization. Cassandra essentially vouches for two BASE features i.e. availability and scalability [21] It brings together the data structure of BigTable and high availability feature of Dynamo [25][11].
  • 12. 5. C.1 Features of Cassandra  Cassandra has multiple nodes in a cluster which are identical in terms of their software infrastructure. All the nodes are symmetric and does not need a master node. This feature allows linear scalability.  Hashing implemented for a new data value does not significantly impact the indexing maintained for other data values.  Interface provided by Cassandra is not easy to use for developers [13]. 5. C.2 Operations/Read Write Implementation 1) Write -> Write function when executed by a client, it is captured by one of the nodes in the cluster randomly. This nodes then in turn writes the data to the cluster. The write action is then replicated on all the other nodes of the cluster via a Replication placement strategy. 2) Append -> after the write action being passed on to the individual nodes, change in data is proceeded to commit. 3) Update -> Update function modifies the main memory structure table with the update. 4) Read -> Client makes a read request to the random node in Cassandra, this node then identifies the node in the cluster holding the required data and then transfers the read request to that particular node. [11][13][14]
  • 13. 5. C.3 Storage Column based storage is the mainstay of storage system in Cassandra. Cassandra predominantly has one table as its primary operational unit. It also has a multidimensional map which is distributed and linked using keys. [19][20]Column families are defined in the initial phase of launching Cassandra, column families can be infinite. Specifications of at least some of the column families is mandatory. These families are further subdivided into columns and super columns. These can be added on runtime to the column families. Indexing of the columns can be done using the name which is being assigned to the column, they store numerous data values in each row. Similarly super columns are identified by their name and consist of multiple columns which are linked to super columns randomly [11][13]14]. 5. C.4 Partitioning Cassandra runs on nodes in a cluster which are symmetrical, hence the same data is distributed on all the nodes. Partitioning is done using two techniques i.e. Order-preserving partitioning and Random partitioning. Order-preserving partitioning enables efficient execution of range queries but might cause issues in load-balancing. The nodes and their keys are evenly distributed in the cluster in both these techniques [11][13][14]. 5. C.5 Replication Replication of data is done on all the nodes of a cluster, data set is assigned to a particular node in the cluster. Data items are allocated to a spot in the node depending on the key of the data item, consistent hashing is used to identify the key of the data item. (24) Each data item has a
  • 14. node coordinator which coordinates the replication of that data item to other nodes. Also client can choose the no of replicas that a particular data item can maintain [8] [11]. 5. C.6 Concurrency Control Cassandra enables Multi version concurrency control [8]. 5. C.7 Security Data files and the interactions between the client-database are unencrypted, as a result of which any user with access to file systems can extract the information he/she desires. Also, Intra cluster communication can be done freely whereas Inter cluster communication comes with a facility of authentication. Security in Cassandra is loosely implemented, IP addresses of the nodes of the cluster is the only info needed to sniff into the system [13][11]. 6. Conclusion and Recommendation We have compared three main products i.e. Dynamo, MongoDB and Cassandra on the basis of major features that drive the selection of a NoSQL product for any organization. MongoDB and Cassandra are supersets of Dynamo, as they also are essentially implemented on the key-value pair indexing. Dynamo fails to maintain relatively similar attributes together, as can be done in MongoDB through document linking. Also, horizontal scalability is better achieved in MongoDB and Cassandra than Dynamo. Eventually, we have figured out that MongoDB and Cassandra are better products in terms of partitioning, replication and concurrency control than Dynamo.
  • 15.  When it comes to update operations, Cassandra is much faster than MongoDB and is independent of the size of the data.  Read operations in Cassandra are relatively fast than MongoDB for medium sized data sets, speed of read operations decline with increase in number of records.  Complex queries consisting of read and update operations simultaneously are better performed in Cassandra than MongoDB.  Symmetric node structure in cluster formation in Cassandra serves better concurrency control than Master slave structure in MongoDB.  Security in NoSQL systems is loosely implemented, comparatively Cassandra provides better authentication and authorization mechanisms than what we have in MongoDB [8][11][14]. We would recommend Cassandra as an overall better product when compared on the basis of replication, concurrency control, Partitioning and Read/Write Implementation. Cassandra is tried and tested, it is being used by more than 1500 companies [25]. References [1] NoSQL Systems for Big Data Management- 2014 IEEE 10th World Congress on Services- Venkat N Gudivada Weisburg Division of Computer Science Marshall University Huntington, WV, USA gudivada@marshall.edu Dhana Rao Biological Sciences Department Marshall University Huntington, WV, USA raod@marshall.edu Vijay V. Raghavan Center for Advanced Computer Studies University of Louisiana at Lafayette Lafayette, LA, USA vijay@cacs.louisiana.edu
  • 16. [2] R. Cattell, “Scalable sql and nosql data stores,” SIGMOD Rec., vol. 39, no. 4, pp. 12–27, May 2011. [3] V. Benzaken, G. Castagna, K. Nguyen, and J. Siméon, “Static and dynamic semantics of NoSQL languages,” SIGPLAN Not., vol. 48, no. 1, pp. 101–114, Jan. 2013. [4] F. Cruz, F. Maia, M. Matos, R. Oliveira, J. a. Paulo, J. Pereira, and R. Vilaça, “MeT: Workload aware elasticity for NoSQL, booktitle = Proceedings of the 8th ACM European Conference on Computer Systems, series = EuroSys ’13, year = 2013, isbn = 978-1-4503-1994-2, location = Prague, Czech Republic, pages = 183–196, numpages = 14, publisher = ACM, address = New York, NY, USA.” [5] REDUCE, YOU SAY: What NoSQL can do for Data Aggregation and BI in Large Repositories - 2011 22nd International Workshop on Database and Expert Systems Applications - Laurent Bonnet1,2 , Anne Laurent1 , Michel Sala1 1LIRMM Universite Montpellier 2 – CNRS ´ 161 rue Ada, 34095 Montpellier – France name.surname@lirmm.fr Ben´ edicte Laurent ´ 2 2Namae Concept Cap Omega 34000 Montpellier – France b.laurent@namaconcept.com Nicolas Sicard3 3LRIE – EFREI 30-32 av. de la republique ´ 94 800 Villejuif – France nicolas.sicard@efrei.fr [6] P. A. Bernstein and N. Goodman. Multiversion concurrency control – theory and algorithms. ACM Trans. Database Syst., 8:465–483, December 1983. [7] NoSQL Database: New Era of Databases for Big data Analytics - Classification, Characteristics and Comparison - International Journal of Database Theory and Application Vol. 6, No. 4. 2013 - A B M Moniruzzaman and Syed Akhter Hossain Department of Computer Science and Engineering Daffodil International University abm.mzkhan@gmail.com, aktarhossain@daffodilvarsity.edu.bd [8] NoSQL Databases: MongoDB vs Cassandra - Veronika Abramova Polytechnic Institute of Coimbra ISEC - Coimbra Institute of Engineering Rua Pedro Nunes, 3030-199 Coimbra, Portugal Tel. ++351 239 790 200 a21190319@alunos.isec.pt Jorge Bernardino Polytechnic Institute of Coimbra ISEC - Coimbra
  • 17. Institute of Engineering Rua Pedro Nunes, 3030-199 Coimbra, Portugal Tel. ++351 239 790 200 jorge@isec.pt [9] Jing Han; Haihong, E.; Guan Le; Jian Du, "Survey on NoSQL database," Pervasive Computing and Applications (ICPCA), 2011 6th International Conference on , vol., no., pp.363,366, 26-28 Oct. 2011. doi:10.1109/ICPCA.2011.6106531. [10] NoSQL Evaluation A Use Case Oriented Survey - 2011 International Conference on Cloud and Service Computing - Robin Hecht Chair ofApplied Computer Science IV University of Bayreuth Bayreuth, Germany robin.hecht@uni -bayreuth.de, Stefan Jablonski Chair ofApplied Computer Science IV University ofBayreuth Bayreuth, Germany stefan.jablonski@uni-bayreuth.de [11] A Comparative Analysis of Different NoSQL Databases on Data Model, Query Model and Replication Model-> Clarence J. M. Tauro1,∗, Baswanth Rao Patil2 and K. R. Prashanth3 - 1Christ University, Hosur Road, Bangalore, India. 2Department of Computer Science, Christ University, Hosur Road, Bangalore, India. 3Department of Computer Science, Christ University, Hosur Road, Bangalore, India. e-mail: clarence.tauro@res.christuniversity.in; baswanth.rao@cs.christuniversity.in; prashanth.r@cs.christuniversity.in [12] 2012 Third International Conference on Emerging Intelligent Data and Web Technologies - MongoDB vs Oracle - database comparison - Alexandru Boicea, Florin Radulescu, Laura Ioana Agapin Faculty of Automatic Control and Computer Science , Politehnical University of Bucharest,Bucharest, Romania . alexandru.boicea@cs.pub.ro, florin.radulescu@cs.pub.ro, lauraioana.agapin@gmail.com [13] Security Issues in NoSQL Databases - 2011 International Joint Conference of IEEE TrustCom-11/IEEE ICESS-11/FCST-11 - Lior Okman Deutsche Telekom Laboratories at Ben-Gurion University, Beer-Sheva, Israel, Nurit Gal-Oz, Yaron Gonen, Ehud Gudes Deutsche Telekom Laboratories at Ben-Gurion University, and Dept of Computer Science, Ben-Gurion University, Beer-Sheva, Israel, Jenny Abramov Deutsche
  • 18. Telekom Laboratories at Ben-Gurion University and Dept of Information Systems Eng. Ben-Gurion University, Beer-Sheva, Israel. [14] NoSQL Databases: MongoDB vs Cassandra - Veronika Abramova Polytechnic Institute of Coimbra ISEC - Coimbra Institute of Engineering Rua Pedro Nunes, 3030-199 Coimbra, Portugal Tel. ++351 239 790 200 a21190319@alunos.isec.pt, Jorge Bernardino Polytechnic Institute of Coimbra ISEC - Coimbra Institute of Engineering Rua Pedro Nunes, 3030-199 Coimbra, Portugal Tel. ++351 239 790 200 jorge@isec.pt [15] E. Brewer. (2000, Jun.) Towards robust distributed systems. [Online]. Available: http://www.cs.berkeley.edu/ brewer/cs262b-2004/PODCkeynote.pdf [16] S. Gilbert and N. Lynch, “Brewer’s conjecture and the feasibility of consistent, available, partition- tolerant web services,” SIGACT News, vol. 33, pp. 51–59, June 2002. [Online]. Available: http://doi.acm.org/10.1145/564585.56460 [17] Jing Han; Haihong, E.; Guan Le; Jian Du, "Survey on NoSQL database," Pervasive Computing and Applications (ICPCA), 2011 6th International Conference on , vol., no., pp.363,366, 26-28 Oct. 2011. doi:10.1109/ICPCA.2011.6106531. [18] Tudorica, B.G.; Bucur, C., "A comparison between several NoSQL databases with comments and notes," Roedunet International Conference (RoEduNet), 2011 10th , vol., no., pp.1,5, 23-25 June 2011. doi:10.1109/RoEduNet.2011.5993686. [19] Lakshman, Avinash, Malik and Prashant, Cassandra – A Decentralized Structured Storage System. In: SIGOPS Operating Systems Review, vol. 44, pp. 35–40, April (2010). [20] Lakshman and Avinash, Cassandra – A structured storage system on a P2P Network. August (2008).
  • 19. [21] The apache software foundation, The Apache Cassandra Project (2011). http://cassandra.apache.org/, last accessed on January (2011). [22] David Karger, Eric Lehman, Tom Leighton, Rina Panigrahy, Matthew Levine and Daniel Lewin, Consistent hashing and random trees: distributed caching protocols for relieving hotspots on the WorldWideWeb .In Proceedings of the twenty-ninth annual ACM symposium on Theory of computing, STOC’97, pp. 654–663, New York, NY, USA (1997) ACM. [23] https://www.mongodb.org/ - https://docs.mongodb.org/manual/ [24] https://aws.amazon.com/dynamodb/ [25] http://cassandra.apache.org/ [26] Dynamo and BigTable – Review and Comparison - 2041 IEEE 28-th Convention of Electrical and Electronics Engineers in Israel - Grisha Weintraub Dept. of Mathematics and Computer Science The Open University Raanana, Israel [27] Neal Leavitt: Will NoSQL Databases Live Up to Their Promise?. IEEE Computer (COMPUTER) 43(2):12-14 (2010) [28] G. DeCandia et a l.: Dynamo: amazon's highly available keyvalue store. SOSP 2007:205-220 [29] Rick Cattell: Scalable SQL and NoSQL data stores. SIGMOD Record (SIGMOD) 39(4):12-27 (2010) [30] 2012 Third International Conference on Emerging Intelligent Data and Web Technologies - MongoDB vs Oracle - database comparison- Alexandru Boicea, Florin Radulescu, Laura Ioana Agapin Faculty of Automatic Control and Computer Science Politehnica University of Bucharest Bucharest, Romania alexandru.boicea@cs.pub.ro, florin.radulescu@cs.pub.ro, lauraioana.agapin@gmail.com