MongoDB是什么意思?干嘛用的

2022-03-2615:28:48MongoDB是什么意思?干嘛用的已關閉評論

MongoDB教程

MongoDB是一個基于文檔的數據庫。一般來說,人們稱之為NoSQL,因為它不是基于SQL的數據庫,或者我們不必編寫SQL查詢。為了搜索或獲取,我們可以編寫一個正則表達式查詢。MongoDB以類似JSON的格式(稱為BSON)存儲數據。它支持索引、負載平衡和分片。在MongoDB中,有一些集合可以將相似或不同的數據存儲到其中。由于它在通過服務器端語言從MongoDB獲取數據后存儲了類似JSON的格式,因此無需再次將其轉換為JSON格式。

為什么我們需要學習MongoDB

我們學習MongoDB有多種原因

  • 首先,我們可以輕松安裝和運行我們的系統</李>
  • 由于MongoDB沒有任何模式,我們不必擔心MongoDB的模式,當我們根據插入的字段運行代碼時,許多記錄將在MongoDB集合中創建,這也減少了內存大小</李>
  • 因為它將數據保存在BSON(Binay JSON)中,所以向服務器提供數據的速度非常快,因為服務器直接獲取所需的數據,而不是解析數據,然后將其發送到客戶端</李>
  • 由于文檔查詢的支持,它是一個偉大的動態查詢</李>
  • 我們可以輕松地擴展MongoDB</李>
  • 我們不必擔心像SQL這樣復雜的連接查詢</李>
  • 因為有了NoSQL,我們不必擔心sql注入,所以安全問題更少</李>
  • 我們可以很容易地在MongoDB中實現負載平衡</李>
  • 我們可以通過正則表達式和字段在MongoDB中進行搜索</李>
  • 我們可以將MongoDB用作windows服務</李>
  • 運行MongoDB不需要VM</李>
  • MongoDB中提供了對切分的支持</李>

注意:分片是存儲數據的一種方式。在這種情況下,如果數據大小增加,它可以被縮放,在這里縮放發生水平。簡單地說,如果一臺機器不能保存數據,我們可以使用多臺機器來保存數據。

MongoDB的應用

MongoDB主要用于Web應用程序中存儲數據。它主要被express JS、NodeJS和AngularJS高度使用,因為Node JS是Javascript,我們知道Javascript更適合JSON,我們知道MongoDB已經是JSON了。

范例

讓我向您解釋一個從MongoDB集合獲取數據的簡短示例。假設我們的收藏名為“問題”。在下面的示例中,我們從一個名為issues的集合中獲取數據,并使用pretty()函數以更好的格式顯示數據。
db。問題。查找({})。漂亮的
輸出:
{
\\“\\u id\\”:ObjectId(\\“5da83b2f8cd630aadaa38806\\”,
\\“狀態\\”:“打開\\”,
\\“所有者”:“Ravan”,
\\“已創建”:ISODate(\\“2016-08-15T00:00:00Z\\”),
\\“努力”:5,
\\“完成日期”:未定義,
\\“標題\\”:“單擊“添加”時控制臺出錯”
}
{
\\“\\u id\\”:ObjectId(\\“5da83b2f8cd630aadaa38807\\”,
\\“狀態\\”:“已分配\\”,
\\“所有者”:“埃迪”,
\\“已創建”:ISODate(\\“2016-08-16T00:00:00Z\\”),
\\“努力”:14,
\\“完工日期”:ISODate(\\“2016-08-30T00:00:00Z\\”),
\\“標題\\”:“面板上缺少底部邊框”
}
{
\\“_id\\”:ObjectId(\\“5da83dde93c7770c2beb6d57\\”,
\\“所有者”:“Ravan”,
\\“標題”:“買些餅干”,
\\“狀態\\”:“打開\\”,
\\“created\\”:ISODate(\\“2019-10-17T10:09:34.294Z\\”),
\\“竣工日期”:ISODate(\\“2019-12-08T18:30:00Z\\”),
\\“努力”:1
}

輸出

先決條件

因此,要學習MongoDB,您不需要了解SQL查詢,您需要對數據和正則表達式操作有基本的了解。

目標受眾

下面給出了兩個目標受眾:
數據庫管理員:數據庫管理員可以處理創建新用戶、授予這些用戶一些訪問權限、檢查性能和擴展MongoDB。
Web開發者:Web開發者可以存儲從各種來源獲取的數據,也可以向各種最終用戶顯示存儲的數據,還可以編寫腳本。