当前位置:网站首页>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 .
边栏推荐
- Niu Ke's questions -- two sorting methods
- 【Multisim仿真】利用运算放大器产生锯齿波
- Overall process of software development
- Today's sleep quality record is 60 points
- cf:A. Print a Pedestal (Codeforces logo?) [simple traversal simulation]
- 5g communication test manual based on Ti am5728 + artix-7 FPGA development board (dsp+arm)
- leetcode:926. 将字符串翻转到单调递增【前缀和 + 模拟分析】
- Specific methods for JS to realize full screen display
- 2022-2023 MEM pre approval interview notice of School of management, Xi'an Jiaotong University
- ASEMI的MOS管25N120在不同应用场景的表现
猜你喜欢

Swagger2 easy to use
![Leetcode: sword finger offer 59 - ii Maximum value of queue [deque + sortedlist]](/img/6b/f2e04cd1f3aaa9fe057c292301894a.png)
Leetcode: sword finger offer 59 - ii Maximum value of queue [deque + sortedlist]

Niu Ke's questions -- two sorting methods
Mysql从0到1的完全深入学习--阶段二---基础篇

【图像分割】基于马尔可夫随机场实现图像分割附matlab代码
![[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

On the translation of rich text storage database format
![[image segmentation] image segmentation based on Markov random field with matlab code](/img/62/874b0ac3e1cbb7cad9c3a77da391d7.png)
[image segmentation] image segmentation based on Markov random field with matlab code

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

Gmail:如何撤回发出的邮件?
随机推荐
Cf:e. price maximization [sort + take mod + double pointer + pair]
[Multisim Simulation] generate square wave and triangular wave generators by operational amplifier
【题解】Codeforces Round #798 (Div. 2)
Bottomsheetdialog usage details, setting fillet, fixed height, default full screen, etc
视觉SLAM十四讲笔记-10-1
leetcode:66.加一
2022-2023年西安交通大学管理学院MEM提前批面试网报通知
Function development of user information management
ASEMI的MOS管25N120在不同应用场景的表现
求数据库设计毕业信息管理
Financial bank_ Introduction to collection system
疫情下远程办公沟通心得|社区征文
Analysis of runtime instantiation of XML view root node in SAP ui5
2022成年礼,致每一位高考学子
The 2023 MBA (Part-time) of Beijing University of Posts and telecommunications has been launched
关于富文本储存数据库格式转译问题
cf:G. Count the Trains【sortedset + bisect + 模拟维持严格递减序列】
Web3游戏:游戏体验的探寻与重塑
Quanzhi T3 development board (4-core arm cortex-a7) - detailed explanation of logo display during system startup
kubernetes 二进制安装(v1.20.15)(八)部署 网络插件