-
Essay / Selection Criteria for Nosql Databases
A NoSQL database (originally referring to "non-SQL" or "non-relational") provides a data storage and retrieval mechanism modeled by other means than the tabular relationships used in relational databases. . NoSQL databases are increasingly used in Big Data and real-time web applications. Some popular No-Sql databases include MongoDB, Redis, Couch DB, etc. But the question remains how to select which No-Sql database for optimal performance according to your needs? Say no to plagiarism. Get a tailor-made essay on “Why Violent Video Games Should Not Be Banned”? Get an Original Essay To demystify the theory on this subject, let us look at the following points which are major factors while selecting No-SQL databases: Storage TypeA good indicator towards making the right choice of NoSQL database is its type of storage. For example, get, put, and delete functions are better supported by Key Value systems. Aggregation becomes much easier using column-oriented systems compared to conventional row-oriented databases. They use tables but don't have joins. Data mapping becomes easy from object-oriented software using a document-oriented NoSQL database such as XML or JSON because they use structure document formats. Concurrency Control Concurrency control defines how two users can modify the same bit simultaneously. information. Quite often, one of the users is locked out and cannot edit or perform other actions until the active user has completed their edits. For example: Keep in mind: This is just an example. Get a personalized article from our expert writers now. Get a personalized essay. Locks prevent more than one active user from modifying an entity such as a document, row, or object. MVCC (Multi-Version Concurrency Control), guarantees a consistent reading view of the database, but results in conflicting versions of an entity if several users modify it at the same time. MVCC allows a transaction to occur transparently by maintaining many different versions of the object. ReplicationReplication ensures that mirror copies are always in sync. Synchronous Mode – Although this is a costly approach as there is a dependency on the second server to respond, but it still ensures consistency. After receiving the response from the second server, the first server sends the ACK back to the client. This ensures that data is placed in multiple nodes at the same time. Asynchronous mode: In this mode, one database is updated without waiting for the response from the other database. Two databases may not be consistent within milliseconds.