MongoDB概念

1.mongodb 與 普通sql 之間的抽象類比

mongodb 與 關(guān)系型數(shù)據(jù)庫(kù)sql之間的類比關(guān)系


sql表與mongo集合


RDBMS 與 MongoDB 對(duì)應(yīng)的術(shù)語(yǔ)


2.查詢數(shù)據(jù)庫(kù)相關(guān)命令:

? ?顯示所有數(shù)據(jù)庫(kù):show dbs

? ? 顯示當(dāng)前數(shù)據(jù)庫(kù):db

? ? 使用test數(shù)據(jù)庫(kù):use test


3.MongoDB文檔

? ??文檔是一組鍵值(key-value)對(duì)(即BSON)县貌。MongoDB 的文檔不需要設(shè)置相同的字段凛俱,并且相同的字段不需要相同的數(shù)據(jù)類型搪柑,這與關(guān)系型數(shù)據(jù)庫(kù)有很大的區(qū)別,也是 MongoDB 非常突出的特點(diǎn)收捣。

? 注意:


????? 1. 文檔中的鍵/值對(duì)是有序的。

? ? ?2. 文檔中的值不僅可以是在雙引號(hào)里面的字符串庵楷,還可以是其他幾種數(shù)據(jù)類型(甚至可以是整個(gè)嵌入的文檔)罢艾。

? ? ?3. MongoDB區(qū)分類型和大小寫。

? ? ?4. MongoDB的文檔不能有重復(fù)的鍵尽纽。

? ? ?5.文檔的鍵是字符串咐蚯。除了少數(shù)例外情況,鍵可以使用任意UTF-8字符弄贿。

文檔鍵命名規(guī)范:


? ?1. 鍵不能含有\(zhòng)0 (空字符)春锋。這個(gè)字符用來(lái)表示鍵的結(jié)尾。

? ?2.? .和$有特別的意義挎春,只有在特定環(huán)境下才能使用看疙。

? ?3.? 以下劃線"_"開頭的鍵是保留的(不是嚴(yán)格要求的)。


4.MongoDB集合

????集合就是 MongoDB 文檔組直奋,類似于 RDBMS (關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng):Relational Database Management System)中的表能庆。

????集合存在于數(shù)據(jù)庫(kù)中,集合沒(méi)有固定的結(jié)構(gòu)脚线。

????這意味著你在對(duì)集合可以插入不同格式和類型的數(shù)據(jù)搁胆,但通常情況下我們插入集合的數(shù)據(jù)都會(huì)有一定的關(guān)聯(lián)性。

? ??合法的集合名


? ? ? ? 1.集合名不能是空字符串""邮绿。

? ? ? ? 2.集合名不能含有\(zhòng)0字符(空字符)渠旁,這個(gè)字符表示集合名的結(jié)尾。

? ? ? ? 3.集合名不能以"system."開頭船逮,這是為系統(tǒng)集合保留的前綴顾腊。

? ? ? ? 4.用戶創(chuàng)建的集合名字不能含有保留字符。有些驅(qū)動(dòng)程序的確支持在集合名里面包含挖胃,這是因?yàn)槟承┫到y(tǒng)生成的集合中包含該字符杂靶。除非你要訪問(wèn)這種系統(tǒng)創(chuàng)建的集合梆惯,否則千萬(wàn)不要在名字里出現(xiàn)$。


5. capped collections

????Capped collections 就是固定大小的collection吗垮。

? ??它有很高的性能以及隊(duì)列過(guò)期的特性(過(guò)期按照插入的順序). 有點(diǎn)和 "RRD" 概念類似垛吗。

????Capped collections是高性能自動(dòng)的維護(hù)對(duì)象的插入順序。

????它非常適合類似記錄日志的功能 和標(biāo)準(zhǔn)的collection不同烁登,你必須要顯式的創(chuàng)建一個(gè)capped collection怯屉, 指定一個(gè)collection的大小,單位是字節(jié)饵沧。

????collection的數(shù)據(jù)存儲(chǔ)空間值提前分配的锨络。

????要注意的是指定的存儲(chǔ)大小包含了數(shù)據(jù)庫(kù)的頭信息。

????在capped collection中捷泞,你能添加新的對(duì)象足删。

????能進(jìn)行更新,然而锁右,對(duì)象不會(huì)增加存儲(chǔ)空間失受。如果增加,更新就會(huì)失敗 咏瑟。

????數(shù)據(jù)庫(kù)不允許進(jìn)行刪除拂到。使用drop()方法刪除collection所有的行。

????注意: 刪除之后码泞,你必須顯式的重新創(chuàng)建這個(gè)collection兄旬。

????在32bit機(jī)器中,capped collection最大存儲(chǔ)為1e9( 1X109)個(gè)字節(jié)余寥。


6.特殊的數(shù)據(jù)類型

主鍵ObjectId:

? ??MongoDB 中存儲(chǔ)的文檔必須有一個(gè) _id 鍵领铐。這個(gè)鍵的值可以是任何類型的,默認(rèn)是個(gè) ObjectId 對(duì)象

? ??ObjectId 類似唯一主鍵宋舷,可以很快的去生成和排序绪撵,包含 12 bytes,含義是:

????前 4 個(gè)字節(jié)表示創(chuàng)建?unix時(shí)間戳,格林尼治時(shí)間?UTC?時(shí)間祝蝠,比北京時(shí)間晚了 8 個(gè)小時(shí)

????接下來(lái)的 3 個(gè)字節(jié)是機(jī)器標(biāo)識(shí)碼

????緊接的兩個(gè)字節(jié)由進(jìn)程 id 組成 PID

????最后三個(gè)字節(jié)是隨機(jī)數(shù)

字符串:

? ??BSON 字符串都是 UTF-8 編碼音诈。

日期:

????表示當(dāng)前距離 Unix新紀(jì)元(1970年1月1日)的毫秒數(shù)。日期類型是有符號(hào)的, 負(fù)數(shù)表示 1970 年之前的日期绎狭。

> var mydate1 = new Date() //格林尼治時(shí)間

> mydate1ISODate("2018-03-04T14:58:51.233Z")

? ??這樣創(chuàng)建的時(shí)間是日期類型细溅,可以使用 JS 中的 Date 類型的方法。

????返回一個(gè)時(shí)間類型的字符串:

> var mydate1str = mydate1.toString()

> mydate1str

? ? 還可以

Date()

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末儡嘶,一起剝皮案震驚了整個(gè)濱河市喇聊,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌蹦狂,老刑警劉巖承疲,帶你破解...
    沈念sama閱讀 221,198評(píng)論 6 514
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件邻耕,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡燕鸽,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,334評(píng)論 3 398
  • 文/潘曉璐 我一進(jìn)店門啼辣,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)啊研,“玉大人,你說(shuō)我怎么就攤上這事鸥拧〉吃叮” “怎么了?”我有些...
    開封第一講書人閱讀 167,643評(píng)論 0 360
  • 文/不壞的土叔 我叫張陵富弦,是天一觀的道長(zhǎng)沟娱。 經(jīng)常有香客問(wèn)我,道長(zhǎng)腕柜,這世上最難降的妖魔是什么济似? 我笑而不...
    開封第一講書人閱讀 59,495評(píng)論 1 296
  • 正文 為了忘掉前任,我火速辦了婚禮盏缤,結(jié)果婚禮上砰蠢,老公的妹妹穿的比我還像新娘。我一直安慰自己唉铜,他們只是感情好台舱,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,502評(píng)論 6 397
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著潭流,像睡著了一般竞惋。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上灰嫉,一...
    開封第一講書人閱讀 52,156評(píng)論 1 308
  • 那天拆宛,我揣著相機(jī)與錄音,去河邊找鬼熬甫。 笑死胰挑,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的椿肩。 我是一名探鬼主播瞻颂,決...
    沈念sama閱讀 40,743評(píng)論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼郑象!你這毒婦竟也來(lái)了贡这?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,659評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤厂榛,失蹤者是張志新(化名)和其女友劉穎盖矫,沒(méi)想到半個(gè)月后丽惭,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,200評(píng)論 1 319
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡辈双,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,282評(píng)論 3 340
  • 正文 我和宋清朗相戀三年责掏,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片湃望。...
    茶點(diǎn)故事閱讀 40,424評(píng)論 1 352
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡换衬,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出证芭,到底是詐尸還是另有隱情瞳浦,我是刑警寧澤,帶...
    沈念sama閱讀 36,107評(píng)論 5 349
  • 正文 年R本政府宣布废士,位于F島的核電站叫潦,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏官硝。R本人自食惡果不足惜矗蕊,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,789評(píng)論 3 333
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望泛源。 院中可真熱鬧拔妥,春花似錦、人聲如沸达箍。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,264評(píng)論 0 23
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)缎玫。三九已至硬纤,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間赃磨,已是汗流浹背筝家。 一陣腳步聲響...
    開封第一講書人閱讀 33,390評(píng)論 1 271
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留邻辉,地道東北人溪王。 一個(gè)月前我還...
    沈念sama閱讀 48,798評(píng)論 3 376
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像值骇,于是被迫代替她去往敵國(guó)和親莹菱。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,435評(píng)論 2 359