Abstract- change a field for a document without

Abstract- The rapid growthin data volume, complexity, variety and velocity of data in organizations, needfor handling unstructured data is increasing continuously.

  NoSQL databases are well suited in dealingwith big data applications.  The enormousamount of data generated on web is highly unstructured in nature.  Relational database are designed to managestructured data and is not capable of managing unstructured data and high datavolume.  This paper presents comparative analysis of anOracle Database and NoSQL document oriented database management system -MongoDB.  The comparison depicts keyfeatures, theoretical differences, restrictions and focuses on basic CRUD operations in MogoDB  Key Words- Big data, NoSQL, MongoDB,RDBMS, crud I.       IntroductionThe term NoSQL was first introduced byCarlo Strozzi in year 1998.  NoSQL standsfor “Not Only SQL”.  The rapid growth of dataand having massive amount of data that comes out every day from the web and businessapplications become hard to handle for RDBMS.

Best services for writing your paper according to Trustpilot

Premium Partner
From $18.00 per page
4,8 / 5
4,80
Writers Experience
4,80
Delivery
4,90
Support
4,70
Price
Recommended Service
From $13.90 per page
4,6 / 5
4,70
Writers Experience
4,70
Delivery
4,60
Support
4,60
Price
From $20.00 per page
4,5 / 5
4,80
Writers Experience
4,50
Delivery
4,40
Support
4,10
Price
* All Partners were chosen among 50+ writing services by our Customer Satisfaction Team

 This has added interest to alternatives to RDBMS.  NoSQL databases are defined as distributed,horizontally scalable and open source. 5  Relational database management systemsdefine fixed schema and data is inserted strictly according to schema.  NoSQL databases are built to allow theinsertion of data without predefined schema, which makes it easy to makesignificant application changes in real time and makes development faster.  NoSQL databases are high performance,scalable systems 1.  It is difficult tohandle both the size of data and concurrent actions on data within standardRDBMS.  Some of the reasons to employNoSQL technique are scalability, high availability; distribute architecturesupport, flexible schema, varied data structure, fault tolerance andconsistency.

   MongoDB is an open source project heldby the 10gen.company. It is a document-oriented, schema-less database, whichstores data in BSON (Binary JSON) format.

 MongoDB can deal with structured semi structured and unstructured dataunlike RDBMS. MongoDB documents can vary in structure. Fields can vary fromdocument to document.

Similar documents are stored in collections. Here, collectioncorresponds to a table and document corresponds to a record.MongoDB can add, remove or change a field for a document without affectingother documents in the same collection. This saves the expensive ALTER tableoperations that can lead to redesigning the entire set of schemas and themigration of existing database to the new schema. MongoDB documents hold all data for agiven record in a single document as against relational databases where datafor a single record is spread across different tables. Therefore data inMongoDB is more localized, which reduces the need to JOIN separate tables 3.Joins are avoided in MongoDB by embedding documents within the document.

Theresult is increased performance and scalability as a single read to thedatabase can retrieve the entire document. MongoDB also provides horizontalscalability by a technique called Auto sharding and therefore chances of anynode failure are almost nil. Most of the research studies reveal that MongoDBis much faster than MS SQL in writing (inserts/updates) and reading (retrieval)1 II .   No SQL Databases (Classification) NoSQLdatabases are classified as6 –i.                    Documentoriented storeii.                   Key-valuestoreiii.                 Columnoriented storeiv.

                 Graphoriented store A.Document-OrientedDocument-Oriented stores are likeKey-Value stores with the distinction that values are visible and may bequeried. Data formats like JSON or XML are used to store document-orienteddatasets. Document stores give versatile schema therefore there’s no restrictionfor documents to possess a similar information or schema. In contrast toKey-Value store, it offers the indexing and querying based on values.  These databases store their data in form ofdocuments within the databases. Here the documents are recognized by a uniqueset of keys and values that are almost same as there in the Key valuedatabases. Document Stores Databases are schema free and are variable innature.

614 Other characteristics ofDocument-Oriented stores are horizontal scalability and sharding across thecluster nodes. Examples of some Document- oriented stores are MongoDB, AmazonDynamoDB, CouchDB, CouchBase, MarkLogic, OrientDB, Rethink DB, Cloudant,RavenDB and Microsoft Azure DocumentDB 6. B.

Key-ValueKey-Value Stores is a combination of 2entities: Key and Values. it’s one of the traditional databases that has givenbirth to all the other databases of NoSQL. it has a concrete applicationprogramming interface (API) and permits its users to store data in a schemalessmanner. The stored is in 2 parts: key is a unique identifier to a particulardata entry. Key shouldn’t be repeated if one used that it’s not duplicate innature.

Value is a kind of data that is pointed by a key. 14 Key-Value store is the least complexstorage paradigm amongst NoSQL databases. Key-Value Stores give bestperformance on basic CRUD (Create, Read, Update and Delete) operations. Theyadditionally offer scalability and sharding across cluster nodes. Sharding is ahorizontal partitioning technique used to partition great deal of data intosmaller and easily manageable parts/shards. However, Key-Value databases areless flexible for querying and indexing complex and connected data.

Queries forthis category are sometimes based on keys instead of values. Examples of someKey- value stores are Redis, Memcached, Riak KV, Hazelcast, Ehcached, OrientDB,Aerospike, Amazon simple db etc.6 C.Column-OrientedColumn oriented databases are alsoreferred as column family databases.

Column oriented stores are feasible oncethere is a necessity to handle distributed and huge quantity of data. Columnstores in NoSQL are primarily hybrid row/column store unlike pure relationalcolumn databases. Although it makes use of the columnar extensions but ratherstoring data in the tables it stores them in extensively distributedarchitecture. Columns are grouped according to the relationship of data. Incolumn stores, each key is related to one or more attributes (columns). AColumn oriented data storestores its data in such a fashion that it can be aggregated rapidly withless I/O activity. It focuses on high scalability in data storage.

the data isstored in the sorted sequence of the column family. In thecomparison of row oriented databases, column oriented databases have bettercapabilities to manage data and storage space. Horizontal scalability is one inevery of its trending characteristics. Some distinguished examples of columnoriented databases include bloging and event logging etc. examples ofcolumn-oriented stores are Hbase, Accumulo, Hypertable, Google Cloud Bigtable,Sqrrl, ScyllaDB, MapR-DB614 D. Graph-OrientedGraphdatabases evolved from the Graph Theory that is designed to represent entitiesand their relationships as nodes and edges respectively. The graph consists ofnodes and edges, where nodes act as the objects and edges act as therelationship between the objects.

Graph databases replace relational tableswith structured relational graphs of interconnected key-value pairings. Thegraph also consists of properties related to nodes. It uses a techniquereferred to as index free adjacency i.e. each node consists of an immediatepointer that points to the adjacent node. millions of records can be traversedusing this technique.

in a graph database, focus is on the relation establishedbetween data using pointers. Graph databases provides schema less and efficientstorage of semi structured data. The queries are expressed as traversals, thuscreating graph databases quicker than relational databases.

it is easy to scaleand whiteboard friendly. Graph databases support ACID axiom and supportrollback14.  As graphs have anexpressive power and strong modeling characteristics therefore each situationfrom the real world are often represented as graphs and it is possible to modelin graph database as well. Graph data can be queried more efficient as a resultof intensive joins don’t seem to be essentially needed in graph querylanguages. 6Fig. 1 NoSQL database types III. COMPARISON -ORACLE AND MONGODBMongoDB may be a NoSQL management systemdischarged in 2009. It stores information as JSON-like documents with dynamicschemas (the format is named BSON).

  NoSQL may be a category of management system totally different from thenormal relative informationbases therein data isn’t keep victimization mountedtable schemas. primarily its purpose is to function information system forBrobdingnagian web-scale applications wherever they vanquish ancient relativedatabasesMongoDB focussed on four factors: flexibility,power, speed and simple use.  It supportsclassification and it offers multiple programming languages drivers.information model for MongoDB is schemaless document oreinted wherease Oracleinformation supports relative model. Oracle databases possesses a standarndsearch language SQl whereas MongoDB supports API calls. MongoDB has aggregation functions. Aintrinsic  map-reduce operate are oftenwont to mixture giant amounts of information. MongoDB accepts larger information.

The Oracle information supports mostprice size 4KB whereas MongoDB has most price size sixteen MB.  The integrity model utilized by Oracleinformation is ACID, whereas MongoDB uses BASE. MongoDB offers consistency,sturdiness and conditional atomicity. Oracle information provides integrityoptions that MongoDB does not offer like: isolation, transactions, denotiveintegrity and revision management.

  Inmanners of distribution each MongoDB and Oracle information ar horizontalclimbable and have support for information replication. whereas MongoDB offerssharing support, Oracle information does not. each MongoDB and Oracleinformation ar cross platform management systems. Oracle information waswritten in C++, C and Java, whereas MongoDB was written in C++. MongoDB may bea software system product, whereas licencence is required to use Oracledatabases.  17.

A.       FEATURESOF MONGODB•       MongoDB provides high performance.•       Has made query language, support all majorCRUD operations, and provides Aggregation options.

•       MongoDB provides High accessibility withauto- Replication feature. Data is restored through backup (replica) just incase failure of server.•       Provides automatic failover mechanism•       Sharding is major feature due to thathorizontal scalbility is possible.•       A record in MongoDB may be a document•      Holdscollections of documents B.            ADVANTAGESOF MONGODB•       MongoDB simple and extremely easy to installand setup.•       MongoDB provides schema-less structure. •       The document query language supported byMongoDB plays a significant role in supporting dynamic queries.

•       Very easy to scale.•       In MongoDB no complex joins are required.Because data kept in BSON format – key value pair method. •       It uses internal memory for storage of data dueto this quicker access of data is possible in MongoDB. •       In MongoDB improvement in performance areoften done easily compared to any relational databases.•       No need of mappingthe application objects to the data objects.•      MongoDBsupport Sharding ends up in the horizontal scaling. relative databases supportvertical scaling.

 Table 1 Comparison of MongoDB and Oracle 14 Key Feature Oracle MongoDB Data Model Data Stores in form of tables.  Follow fixed schema structure. Follow Document based model for representing the data. It is schema less and can handle unstructured data efficiently Scalability Providing both vertical as  well as horizontal scalability Provide an effective horizontal scalability Transaction reliability follow ACID rule hence are more reliable follow BASE rule Complexity More Complex Less Complex Security Very secure mechanism Less Secure Crash Recovery Ensure crash recovery through its ACID properties depends on replication as back up to recover from crash. Cloud Not suitable for cloud applications Suitable for cloud applications Big Data Handling Unable to handle big data problem Designed to deal with the Big Data problem effectively.  IV . Crud Operations  Thissection focuses on the basic operations of CRUD. Two databases, one usingOracle and one in MongoDB are created to compare the way that data will becreated, selected, inserted and deleted in both databases 21.

  MongoDB is a fastresponding database management system. If you want a simple database that willrespond very fast, MongoDB is best choice. MongoDB support all major CRUD operations, and provides Aggregationfeatures.  Following are the major CRUDoperations –   Table 2 CRUD Operations Operations Oracle MongoDB Create Table CREATE TABLE Accounts (first_name` VARCHAR(64) NULL , `last_name` VARCHAR(45) NULL , PRIMARY KEY (`id`) ); db.accounts.insert({ name:”abc”, age:26, address:”indore”}) Delete a Table Drop table accounts; db.

accounts.drop() Insert Insert into accounts( name, age, address ) VALUES ( “abc”, 26, “indore”) db.accounts.insert({ name:”abc”, age:26, address:”indore”}) Select Select * from accounts db.accounts.find() Select fields Select first_name, last_name  from accounts db.

accounts.find({ }, { first_name: 1, last_name: 1 }) Conditional Select Select * from Accounts where dep_wid=”D” and balance>5000 db.accounts.find({dep_wid:”d”, balance:{$gt:5000}}) Ordered Select ascending Select * from accounts order by user_id asc db.

accounts.find({}).sort({user_id : 1}) Ordered Select descending Select * from accounts order by user_id desc db.accounts.find({}).sort({user_id: -1 }) Select with count Select count(*) from users db.articles.

count() Update update table student set section=”F”  where marks<30; db.Student.update({marks:{lt:30}}, {$set:{Section:"F"}}) Delete delete from Student db.Student.remove( ) Delete with condition delete from Student where section="a" db.student.delete({section:"a"})  V . RelatedWork            Severaldatabase technologies were developed to handle the present explosive growth ofdata.

Many NoSQL databases evolved over time like Mongo DB, Cassandra, Hbase,Couch base etc for dealing huge unstructured data. This paper analyzes thedeployment of MongoDB- a popular NoSQL database in different industrialapplication areas for the better understanding of its scope and to explore thereasons for employing MongoDB.  Unstructuredbig data related web or mobile application that requires horizontal scaling andwhich needs fast and rich querying capabilities, MongoDB is the mostlypreferred NoSQL database.

1As the number of records in documentdatabase increases, the difference between the execution time taken bydifferent databases for the computation of different database operations iswhat we are looking for.  For the dataretrieval operation, data updation, data creation operation and data deletionthe performance of which NoSQL document database is better for the differentnumbers of records or as the number of records increases.  So far relational databases are used for storingthe data for the applications but now there is need to store huge amount ofdata to store and manage which cannot stored by relational databases. NoSQLtechnology over comes this problem. The operations are performed to explore theresults as distinguish between both NoSql databases.

The study shows theperformance of Mongodb and CouchDB. Results prove that CouchDB is more powerfulthan Mongodb to load and process on big data and processing very fast ascompare to Mongodb. 2 NoSQL systems are relatively new andmost of them implement their own query language or interface. Developers needto learn to use these constructs. If a company needs to train its employees anew technology this also adds to the costs of the database system. Eventually aquery language for NoSQL data stores. One should carefully research if NoSQL database are reasonable to useinhis application scenario.

However, there is no sign of NoSQL databasesdisappearing. In any case we therefore need to carefully monitor these systems,as they will become more mature and will surpass traditional relationaldatabase systems in even more domains. Because of the vast amount of available NoSQLdata stores there will be some consolidation in the market eventually.413 Developers have to evaluatetheir data in order to identify a suitable data model to avoid unnecessarycomplexity due to transformation or mapping tasks. Queries which should besupported by the database have to be considered at the same time, because theserequirements massively influence the design of the data model.

Since no commonquery language is available, every store differs in its supported query featureset. Afterwards, developers have to trade between high performance throughpartitioning and load balanced replica servers, high availability supported byasynchronous replication and strict consistency. If partitioning is required,the selection of different partition strategies depends on the supportedqueries and cluster complexity. Beside these different requirements, alsodurability mechanism, community support and useful features like versioninginfluence the database selection.

In general, key value stores should be usedfor very fast and simple operations, document stores offer a flexible datamodel with great query possibilities, column family stores are suitable forvery large datasets which have to be scaled at large size, and graph databasesshould be used in domains, where entities are as important as the relationshipsbetween them.8 NoSQL databases are databasemanagement system which uses few or no SQL commands to query, store and deletedata.  They are used for situations onwhich traditional relational database managements were not designed for, suchas horizontal scaling and storing large amount of complex objects, which aredifficult to store on tables.  Nasal hassome advantages to be used for large amount of data.

  Nasal may be good option applications whichdeal to large transactions to persist complex data objects. 7 NoSQL databases different inmany aspects from traditional databases like structured schema, transactionsmethodology, complexity, crash recovery and dealing with storing big data whichthe feature lead to use NoSQL in cloud computing and may be data warehouse.  NoSQL has shortage in security mainly becausetheir designer focuses on other purposes than security and generally the NoSQLdatabases solution still fresh it didn’t reach the full maturity yet, for allthat we can find many security vulnerabilities in it.1215 VI.   ConclusionThispaper explores NoSQL databases, its types, key features and need. Comparingthese with relational databases and list various advantages and features ofNoSQL databases.

Also the comparative study of Oracle Database andNoSQL MongoDB has been presented.   Basic CRUD operations in MogoDB and Oracleare being analyzed.  VII.

            Future WorkMongoDB is well suited for big data applications and also satisfying theneeds of this digital world, but still lacks maturity compared to relationaldatabases. Relational Databases have a standard development process.  NoSQL lacks standard development methodology.In future there is an exigent need of investigating development methodologiesfor NoSQL databases also.