当前位置:网站首页>What started mongodb? What are the application scenarios?
What started mongodb? What are the application scenarios?
2022-06-11 19:04:00 【Blue92120】
MongoDB The origin of
A few years ago 10gen The company did SaaS R & D in this area , Because the company MongoDB Ease of use of product storage interface , The user's comments were very good , The company began to develop MongoDB. Therefore 10gen The company was renamed MongoDB.
MongoDB Application
MongoDB Applicable to website data 、 Game data 、 cache 、 High scalability and other scenarios . at present , Baidu 、 Ali 、 Quick taxi 、 JD.COM 、 Catch up network 、360、CERN And many other companies have deployed MongoDB.
MongoDB Characteristics
stay Web2.0 Time , Tradition RDBMS In high performance 、 High availability 、 Under the requirement of high extensibility, I began to fall short of my ability .
As NOSQL A solution , from C++ Open source document type database system written in MongoDB Is the NOSQL shipment dynamic in Of bright star become member .MongoDB By db-engines Website (http://db-engines.com/en/ranking_trend) named 2014 The most popular database management system of the year . To sum up MongoDB The main characteristics of : Document oriented 、 Model freedom 、 High availability 、 Horizontal expansion 、 Rich support .
Document oriented
Documents are stored in MongoDB One of the records , Is a data structure composed of key value pairs . Such as {"company":"itcast","address":"Beijing"}. As document oriented (Document-Oriented) Of Count According to the library ,document And On collection,record To table.
Model freedom
The document is MongoDB The basic unit of data in , A set can be seen as a table without a schema . Model freedom (schema-free), every last Document They all contain metadata information , Each document is not forced to use the same format , At the same time, they also support various indexes . Since there is no mode to change , There is usually no need to migrate large amounts of data . For example, a student file :{"name":"C++lover","like": {"Linux System programming "," Distributed systems ","MongoDB"}}
High availability
High availability (High Availability,HA) Is to minimize downtime due to maintenance and crashes , To improve system and application availability .MongoDB Support in copy set (Replica Set) Fail over through asynchronous replication , Automatic recovery , The primary server in the cluster crashes, stops service and loses data , The backup server gets the majority of votes by election and becomes the primary node , In order to achieve high availability . In this mode, read operations are performed on the backup node to realize read / write separation , Because the backup server synchronizes the primary server in real time Oplog Write operations , Although some appropriate reads can also share the tasks of some primary nodes , But there is a risk of increasing the delay of the slave node . Abreast of the times MongoDB3.0 Provides MVCC Mechanism , It realizes document level concurrency control , Further improve the concurrency performance .
Horizontal expansion
MongoDB It is not recommended to use the slave node to expand the read performance , Instead, use Shards Shard.MongoDB Support fragmentation Technology , It can support parallel processing and horizontal expansion . Through automatic slicing technology ,Shard Ability to distribute data across multiple slices , It can make MongoDB The deployment of addresses the hardware limitations of a single server without increasing the complexity of the application , Solutions include RAM And disk I/O The limitation of , A slice is usually a replica set .
Rich support
MongoDB In addition to providing the above rich functional support , It also provides a wealth of BSON data type , official MongoDB Of Officer, Fang driver the a (C/C++、C#、Java、Node.js、Perl、PHP、Python、Ruby、Scala), In addition, the community supports MongoDB Of Go,Erlang The driver .
Besides MongoDB built-in MapReduce Engine and other aggregation frameworks , Index of spatial geographic data ,GridFS It is suitable for a variety of business needs .
MongoDB Future and thinking
Development in the era of big data will inevitably require programs to be able to handle massive amounts of data ,MongoDB With its own characteristics and with Hadoop The combination of , Undoubtedly, it has established its important position in cloud computing and big data , The market outlook is bright , Demand is naturally strong . On major recruitment websites ,C/C++ Most server engineers have “ be familiar with NOSQL(MongoDB、Redis etc. ) first ” Other requirements .
边栏推荐
- Visual slam lecture notes-10-2
- collect.stream().collect()方法的使用
- 视觉SLAM十四讲笔记-10-1
- 干货丨MapReduce的工作流程是怎样的?
- Use canvas to add text watermark to the page
- 今天睡眠质量记录60分
- The 2023 MBA (Part-time) of Beijing University of Posts and telecommunications has been launched
- An adaptive chat site - anonymous online chat room PHP source code
- 【图像去噪】基于马尔可夫随机场实现图像去噪附matlab代码
- Uni app Muke hot search project (I) production of tabbar
猜你喜欢

Experience of remote office communication under epidemic situation | community essay solicitation

电子商务(njupt)

cf:D. Black and White Stripe【连续k个中最少的个数 + 滑动窗口】

「案例分享」基于 AM57x+ Artix-7 FPGA开发板——PRU开发手册详解
MySQL in-depth and complete learning - stage 1 - overview of learning

金字塔测试原理:写好单元测试的8个小技巧,一文总结

全国院校MBA、EMBA、MPA、MEM、提前面试(预面试)时间批次已出(持续更新中)-文都管联院
![[image denoising] image denoising based on Markov random field with matlab code](/img/ef/d28b89a47723b43705fca07261c958.png)
[image denoising] image denoising based on Markov random field with matlab code

MOS transistor 24n50 parameters of asemi, 24n50 package, 24n50 size

Web3 Games: exploring and reshaping the game experience
随机推荐
leetcode:剑指 Offer 59 - II. 队列的最大值[deque + sortedlist]
SQL注入漏洞学习之一:phpstudy集成环境搭建DVWA靶场
开发中必备的文件的上传与下载
SAP BTP 上 workflow 和 Business Service 的 project 管理
疫情下远程办公沟通心得|社区征文
Performance of MOS transistor 25n120 of asemi in different application scenarios
Quanzhi T3 development board (4-core arm cortex-a7) - detailed explanation of logo display during system startup
leetcode:66.加一
Use canvas to add text watermark to the page
实现可以继续上局
【Multisim仿真】利用运算放大器产生锯齿波
cf:C. Restoring the Duration of Tasks【找规律】
【图像分割】基于马尔可夫随机场实现图像分割附matlab代码
leetcode:66. add one-tenth
在 SAP Kyma 上部署一个 Go MSSQL API Endpoint
Teach you how to learn the first set and follow set!!!! Hematemesis collection!! Nanny level explanation!!!
Experience of remote office communication under epidemic situation | community essay solicitation
Do you know that public fields are automatically filled in
Visual slam lecture notes-10-1
7-3 combinatorial problems (*)