| Mar 19, 2019

3 MIN READ

Written by Saurav Mitra
mongoDB Certification

Why did I go for MongoDB Certification?

I recently completed the MongoDB Certified Developer Associate certification. A lot of my friends and colleagues were surprised and asked me why I wanted to take up MongoDB certification since my core passion was always Business Intelligence (BI)?
Over the past 12 years of my working experience, I have primarily been a BI guy – have handled diverse BI, ETL & Data Visualization tools and Database technologies across multiple functional domains. My expertise includes, but is not limited to, Data Management & Analytics Platform. On the Database front, I have worked with all databases known to humankind (literally!). In that regard as well, MongoDB was one technology I was keen to learn and explore. Plus, in many of my customer meetings, I got asked questions about MongoDB or its latest tools. Made me realize that as a technology it has gained good traction in this market and there is a genuine, growing interest towards it. So, I had to take it up!
MongoDB is one of today’s leading general purpose database platform, designed to help developers build apps faster. It uses its natural and intuitive data model, rich querying and indexing and distributed architecture to ensure horizontal scale-out and always-on availability.
With our businesses being in the constant need to capture and process huge data in short times, MongoDB databases are a better fit. They are designed to run on large-scale clusters giving us the possibility to store larger data sets and to process large amounts of analytic data. Also, MongoDB’s document based data models in many cases are better in processing huge chunks of data.
In my current role I work on Microservices based applications. MongoDB’s appeal for a flexible data model, redundancy, and scalability attracted me to look deeper into it. MongoDB’s dynamic schema is ideal for handling the requirements of Microservices. When rolling out a new feature that changes the data model, there’s no need to update the existing records. With built-in redundancy through replica sets and automatic partitioning through sharding, MongoDB is well-suited to meet the distributed nature of Microservices.
These are the top 10 features of MongoDB that I really like:

  • High Availability: MongoDB provides high availability with replica sets. A replica set consists of two or more copies of the data. Each replica set member may act in the role of primary or secondary replica, at any time. All writes and reads are done on the primary replica by default. Secondary replicas maintain a copy of the data of the primary using built-in replication. I can deep dive into this if it interests you. Just drop in a message on Ask Ashnik, & I will write back to you.
  • Horizontal Scalability: MongoDB scales horizontally using sharding. The user chooses a shard key, which determines how the data in a collection will be distributed. The data is split into ranges (based on the shard key) and distributed across multiple shards.
  • High Performance: MongoDB provides high performance data persistence. Support for embedded data models reduces I/O activity on the database system. Indexes support faster queries and can include keys from embedded documents and arrays.
  • Indexing: Fields in a MongoDB document can be indexed with primary and secondary indices.
  • Ad hoc Queries: MongoDB supports a rich query language to support read and write operations (CRUD) as well as Data aggregation, Text search and Geospatial q
  • Aggregation: MongoDB aggregation pipeline enables users to obtain the kind of results for which the ‘SQL GROUP BY’ clause is used. Aggregation operators can be strung together to form a pipeline – analogous to Unix pipes. The aggregation framework includes the $lookup operator which can join documents from multiple documents, as well as statistical operators such as standard deviation.
  • Transactions: Support for multi-document ACID transactions were added to MongoDB with the general availability of the 4.0 release.
  • Storage Engine: MongoDB supports multiple storage engines, where different engines perform better for specific workloads. We can have replica set members that use different storage engines. WiredTiger is the default storage engine in MongoDB starting version 2. It is well-suited for most workloads and is recommended for new deployments. In-Memory Storage Engine is available in MongoDB Enterprise. Rather than storing documents on-disk, it retains them in-memory for more predictable data latencies.
  • File storage: MongoDB can be used as a file system, called GridFS, with load balancing and data replication features over multiple machines for storing files. GridFS divides a file into parts, or chunks, and stores each of those chunks as a separate document.
  • Capped collections: MongoDB supports fixed-size collections called capped collections. This type of collection maintains insertion order and, once the specified size has been reached, behaves like a circular queue.

I could go on and on because that’s exactly what I keep doing to my colleagues too. Hopefully, I have managed to convince you as to why I got excited about MongoDB and took up the certification too. If you are interested in learning MongoDB, check this out.
To conclude, I would urge you to keep an eye on the 2 new industry trends which are enabling in building better & faster apps – MongoDB Atlas & Stitch rather than spending your time and efforts in managing MongoDB databases. If you would like to discuss more about how you can use MongoDB in your projects, feel free to reach out to us at success@ashnik.com


Go to Top