MongoDB : About & Case-study

MongoDB : About & Case-study

What is MongoDB?

MongoDB is one of many cross-platform document-oriented databases. Classified as a NoSQL database. MongoDB eschews the traditional table-based relational database structure in favor of JSON-like documents with dynamic schemas making the integration of data in certain types of applications easier and faster.

Key Features

? High Performance

MongoDB provides high performance data persistence. In particular,

  • Support for embedded data models reduces I/O activity on database system.
  • Indexes support faster queries and can include keys from embedded documents and arrays.

? Rich Query Language

MongoDB supports a rich query language to support?read and write operations (CRUD)?as well as:

? High Availability

MongoDB's replication facility, called?replica set, provides:

  • automatic?failover
  • data redundancy.

A?replica set?is a group of MongoDB servers that maintain the same data set, providing redundancy and increasing data availability.

? Horizontal Scalability

MongoDB provides horizontal scalability as part of its?core?functionality:

  • Sharding?distributes data across a cluster of machines.
  • Starting in 3.4, MongoDB supports creating?zones?of data based on the?shard key. In a balanced cluster, MongoDB directs reads and writes covered by a zone only to those shards inside the zone. See the?Zones?manual page for more information.

? Support for Multiple Storage Engines

MongoDB supports?multiple storage engines:

In addition, MongoDB provides pluggable storage engine API that allows third parties to develop storage engines for MongoDB.

Companies using MongoDB

MongoDB have data on 49,572 companies that use it. The companies using MongoDB are most often found in?United States?and in the?Computer Software?industry. MongoDB is most often used by companies with?10-50?employees and?1M-10M?dollars in revenue.

?? MongoDB Case Study: foursquare

No alt text provided for this image

Foursquare is a location-based social network which has grown rapidly since its inception in 2009, requiring efficient ways to scale with limited engineering resources. As its user profile and activity stream data increased, foursquare made the strategic decision to migrate storage of venues and check-ins to MongoDB as a long-term scalable solution to the company's continued expansion.

Originally, the foursquare application relied on a single relational database. As the company experienced rapid growth, they split the data to two nodes: one for check-ins (the biggest data set) and one for everything else. However, it was clear that in time, check-ins alone would increase beyond what a single machine could handle. MongoDB not only solved the initial problem, but also provided the tools for agile development.

Foursquare can now take advantage of MongoDB's built-in auto-sharding. MongoDB’s auto-sharding partitions the database, allowing foursquare to scale writes and spin up new nodes as their application grows. Instead of writing its own sharding layer, foursquare can rely on MongoDB’s automated scaling infrastructure, enabling engineers to focus on building their application.

MongoDB has allowed foursquare it to?dramatically simplify?its data model. For instance, rather than storing tags (“has wifi”, “great for dates”, “hotspot”, etc) in a separate table, in MongoDB tags are embedded directly into the document representing a venue. This is both more efficient at run-time and easier for engineers to understand and manipulate.

As Harry Heymann, Lead Server Engineer at foursquare, explained, ...MongoDB is a practical database for practical problems that engineers in the real world have…it's only going to continue to evolve into a database that just makes our jobs easier as application developers, which is fantastic.” To learn more, visit the?case study?or hear directly from?Heymann?about how MongoDB has made a difference at foursquare.

More case studies . . .

Harshal Thakare

ATSE@RedHat || Openshift || 3x RedHat Certified || DevOps(Docker??, Kubernetes?, Jenkins????) || Ansible || Cloud Computing ?(AWS) |||

3 年

Good Job Shashwat Pathak

要查看或添加评论,请登录

Shashwat Pathak的更多文章

社区洞察

其他会员也浏览了