MongoDB是什么
MongoDB是用C++語言編寫的,是一個局域分布式文件存儲的開源數據系統。
在高負載的情況下, 添加跟多的節點,可以保證服務器的性能。
MongoDB旨在為Web應用提供可擴展的高性能數據存儲解決方案。
MongoDB將數據存儲為一個文檔,數據結構有鍵值對(key=value)組成,MongoDB文檔類似于JSON對象,字段值可以包含其他文檔,數組以及文檔數組。
MongoDB特點
1、MongoDB提供了一個面向文檔存儲,操作起來比較簡單和容易
2、可以在MongoDB記錄中設置任何屬性的索引來實現更快的排序
3、可以通過本地或者網絡創建數據鏡像,這使得MongoDB有更強的擴展性
4、如果負載增加(需要更多的存儲空間和更強的處理能力),它可以分布在計算機網絡中的其他節點上(分片)
5、MongoDB支持豐富的查詢表達式,查詢指令使用JSON形式的標記,可以輕松查詢文檔中內嵌的對象以及數組
6、MongoDB使用update()命令來實現替換完成的文檔(數據)或者一些指定的數據字段
7、MongoDB中Map/reduce主要是用來對數據進行批量處理和聚合操作
8、Map函數調用emit(key,value)遍歷集合中所有的記錄,將key與value傳給Reduce函數來進行處理
9、Map函數和Reduce函數是使用JavaScript編寫的,并可以通過db.runCommand或者mapreduce命令來執行MapReduce操作。
10、GridFS是MongoDB中的一個內置功能,可以用于存放大量小文件。
11、MongoDB允許在服務器端執行腳本,可以用JavaScript編寫某個函數,直接再服務器端執行,也可以把函數的定義存放在服務器端,下次可以直接調用
12、MongoDB支持多種編程語言:Ruby、Python、Java、C++、PHP、C#等
13、MongDB的安裝非常簡單