Php

Difference between MongoDB, CouchDB and MySQL

MongoDB is most popular database now days in software and web development. MongoDB (from “humongous”) is a scalable, high-performance, open source NoSQL database. This is Written in C++ languages.In this tutorial we will discuss features of mongoDB comparison between MongoDB vs CouchDB and MySQL.

Related Post
Main featured of mongo db
Document-oriented
  • Documents (objects) map nicely to programming language data types
  • Embedded documents and arrays reduce need for joins
  • Dynamically-typed (schemaless) for easy schema evolution
  • No joins and no multi-document transactions for high performance and easy scalability
High performance
  • No joins and embedding makes reads and writes fast
  • Indexes including indexing of keys from embedded documents and arrays
  • Optional streaming writes (no acknowledgements)
High availability
  • Replicated servers with automatic master failover
Easy scalability
  • Automatic sharding (auto-partitioning of data across servers)
  • Reads and writes are distributed over shards
  • No joins or multi-document transactions make distributed queries easy and fast
  • Eventually-consistent reads can be distributed over replicated servers

Checkout other Recommended Tutorials,

  • Top 6 RESTful API Frameworks for PHP
  • MongoDB vs CouchDB vs MySQL Comparison Chart

    Difference between MongoDB vs CouchDB vs MySQL

    CouchDB MongoDB MySQL
    Data Model Document-Oriented ( JSON) Document-Oriented BSON) Relational
    Data Types string,number,boolean,array,object string, int, double, boolean, date, bytearray, object, array, others link
    Large Objects (Files) Yes (attachments) Yes (GridFS) Blobs
    Horizontal partitioning scheme CouchDB Lounge Auto-sharding Partitioning
    Replication Master-master (with developer supplied conflict resolution) Master-slave and replica sets Master-slave, multi-master, and circular replication
    Object(row) Storage One large repository Collection-based Table-based
    Query Method Map/reduce of javascript functions to lazily build an index per query Dynamic; object-based query language Dynamic; SQL
    Secondary Indexes Yes Yes Yes
    Atomicity Single document Single document Yes – advanced
    Interface REST Native drivers; REST add-on Native drivers
    Server-side batch data manipulation ? Map/Reduce, server-side javascript Yes (SQL)
    Written in Erlang C++ C++
    Concurrency Control MVCC Update in Place
    Geospatial Indexes GeoCouch Yes Spatial extensions
    Distributed Consistency Model Eventually consistent (master-master replication with versioning and version reconciliation) Strong consistency.  Eventually consistent reads from secondaries are available. Strong consistency.  Eventually consistent reads from secondaries are available.

View Comments

Recent Posts

Configure and Retrieve S3 Information Using Laravel PHP-AWS-SDK

This tutorial helps integrate a PHP SDK with Laravel. We'll install aws-php-sdk into laravel application and access all aws services… Read More

2 months ago

What is the Purpose of php_eol in PHP?

in this quick PHP tutorial, We'll discuss php_eol with examples. PHP_EOL is a predefined constant in PHP and represents an… Read More

8 months ago

Laravel Table Relationship Methods With Example

This Laravel tutorial helps to understand table Relationships using Elequonte ORM. We'll explore laravel table Relationships usage and best practices… Read More

8 months ago

Exploring the Power of Laravel Eloquent Join?

We'll explore different join methods of Laravel eloquent with examples. The join helps to fetch the data from multiple database… Read More

9 months ago

Quick and Easy Installation of Laravel Valet

in this Laravel tutorial, We'll explore valet, which is a development environment for macOS minimalists. It's a lightweight Laravel development… Read More

9 months ago

What is Laravel Soft Delete and How Does it Work?

I'll go through how to use soft delete in Laravel 10 in this post. The soft deletes are a method… Read More

9 months ago

Categories