You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+54-1Lines changed: 54 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1360,7 +1360,60 @@ When we say **schemaless**, we actually mean **dynamically typed schema**, as op
1360
1360
<b><a href="#">↥ back to top</a></b>
1361
1361
</div>
1362
1362
1363
-
#### Q. ***What is a Storage Engine in MongoDB?***
1363
+
## Q. ***What is a Storage Engine in MongoDB?***
1364
+
1365
+
The storage engine is the component of the database that is responsible for managing how data is stored, both in memory and on disk. MongoDB supports multiple storage engines, as different engines perform better for specific workloads.
MongoDB supports mainly 3 storage engines whose performance differ in accordance to some specific workloads. The storage engines are:
1392
+
1393
+
* WiredTiger Storage Engine
1394
+
* In-Memory Storage Engine
1395
+
* MMAPv1 Storage Engine
1396
+
1397
+
**1. WiredTiger Storage Engine**
1398
+
1399
+
`WiredTiger` is the default storage engine starting in MongoDB 3.2. It is well-suited for most workloads and is recommended for new deployments. WiredTiger provides a document-level concurrency model, checkpointing, and compression, among other features. The WiredTiger storage engine has both configurations of a `B-Tree` Based Engine and a `Log Structured Merge Tree` Based Engine.
1400
+
1401
+
**2. In-Memory Storage Engine**
1402
+
1403
+
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.
1404
+
1405
+
**3. MMAPv1 Storage Engine**
1406
+
1407
+
MMAPv1 is a B-tree based system which powers many of the functions such as storage interaction and memory management to the operating system. Its name comes from the fact that it uses memory mapped files to access data. It does so by directly loading and modifying file contents, which are in a virtual memory through a `mmap()``syscall` methodology.
0 commit comments