日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

非关型数据库之MongoDB

發布時間:2025/3/8 数据库 19 豆豆
生活随笔 收集整理的這篇文章主要介紹了 非关型数据库之MongoDB 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

目錄

1 MongoDB簡介

1.1 初識MongoDB

1.2 MongoDB與傳統的關系型數據庫的區別

1.3 MongoDB存儲結構

1.4 BSON支持的數據類型

2? MongoDB Shell操作

3 MongoDB集群操作


1 MongoDB簡介

1.1 初識MongoDB

? ? ? ? MongoDB來源自英文單詞"Humongous”,譯為“龐大的”從中可見MongoDB的存儲容量不可謂小,MongoDB是一個開源的文檔數據庫,使用C++語言編寫。其中主要的功能特性為:面向集合存儲,易于存儲數據類型的數據,模式自由,支持動態查詢,支持完全索引,支持復制和故障恢復,使用高效的二進制數據存儲,文件存儲格式為BSON(JSON的一種二進制形式的存儲格式)。

1.2 MongoDB與傳統的關系型數據庫的區別

存儲結構對應關系
存儲結構關型數據庫MongoDB
數據庫databasedatabase
數據表/集合tablecollection
行/文檔rowdocument
列/字段(屬性)columnfield
主鍵primary keyprimary key
表連接table join不支持連接
嵌套關系不支持嵌套字段(屬性)可以嵌套其他文檔

結構上區別
關型數據庫MongoDB
存儲結構(從大到小)數據庫、表、行數據庫、集合、文檔、鍵值對
結構類型表結構需要預定義文檔的結構是可變的
事務特性ACIDBASE

ACID:原子性(Atomicity)、一致性(Consistency)、隔離性(Isolation)、持久性(Durability)

BASE:基本可用(Basically Available)、軟狀態(Soft-state)、最終一致性(Eventually Consistent)

1.3 MongoDB存儲結構

💥鍵值對

????????MongoDB存儲結構的基本結構單位是鍵值對,鍵的格式一般是字符串,值的格式可以是字符串、數值、文檔等,當值的格式是文檔時就是我們所說的嵌套鍵值對,其他都是基本鍵值對。鍵(Key)起到唯一索引的作用,區分大小寫;值(Value)是鍵所對應的數據,通過鍵來獲取其內容。

💥文檔

? ? ? ? 文檔是由多個鍵值對的有序集合,使用{ }符號進行包裹鍵值對的順序確定一個文檔,也就是說就算兩個文檔的鍵值對內容完全一樣,但是鍵值對順序不一樣,依然是兩個文檔。一個文檔中的鍵重復時,后面的值覆蓋前面的文檔必須有一個“_id”的鍵來唯一標識該文檔,自己創建或者默認生成。MongoDB中文檔之間的關系包括嵌入和引用兩種:

引用就是在一個文檔里引用另一個文檔里的值:

{ id: "joe", name: "joe Bookreader" }{ patron_id: "joe", street: "123 Fake Street", city: "Faketon", state: "MA", zip: "123456" }

嵌入就是常說的嵌套鍵值對:

{ id: "joe", name: "joe Bookreader" address: {patron_id: "joe",street: "123 Fake Street",city: "Faketon",state: "MA",zip: "123456"} }

💥集合

? ? ? ? 集合是由多個文檔構成的對象,許多文檔儲存在一個集合中。

💥數據庫

? ? ? ? 數據庫是由許多的集合組成

1.4 BSON支持的數據類型

類型描述
NULL空值或不存在的字段 {"x":null}
Booleantrue和false {"x":true}
StringBSON編碼是utf-8 {"x":"文檔數據庫"}
Number數值(默認64位浮點數) {"x":3.14}
Array數組 {"x":["a","b","c"]}
Object內嵌文檔 {"x":{"y":4.23}}
ObjectId文檔的唯一標識 {"x":ObjectId()}
Binary Data二進制數據
JavaScript代碼
Date日期 {"x":new Date()}
Timstamp時間戳?
Regular Expression正則表達式

2? MongoDB Shell操作

參考博客:

?????c??????MongoDB Shell操作_扎哇太棗糕的博客-CSDN博客

3 MongoDB集群操作

參考博客:

MongoDB副本集、分片集的偽分布式部署(保姆級教程)_扎哇太棗糕的博客-CSDN博客

總結

以上是生活随笔為你收集整理的非关型数据库之MongoDB的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。