MongoDB的使用

MongoDB

簡(jiǎn)介

MongoDB 是一個(gè)基于分布式文件存儲(chǔ)的數(shù)據(jù)庫(kù)冰垄。由 C++ 語(yǔ)言編寫(xiě)。旨在為 WEB 應(yīng)用提供可擴(kuò)展的高性能數(shù)據(jù)存儲(chǔ)解決方案。MongoDB 是一個(gè)介于關(guān)系數(shù)據(jù)庫(kù)和非關(guān)系數(shù)據(jù)庫(kù)之間的產(chǎn)品,是非關(guān)系數(shù)據(jù)庫(kù)當(dāng)中功能最豐富,最像關(guān)系數(shù)據(jù)庫(kù)的雀久。

NoSQL特點(diǎn)

  • 代表著不僅僅是SQL(Not Only SQL)
  • 鍵值對(duì)存儲(chǔ),列存儲(chǔ)趁舀,文檔存儲(chǔ)赖捌,圖形數(shù)據(jù)庫(kù)
  • 最終一致性,而非ACID屬性
  • 非結(jié)構(gòu)化和不可預(yù)知的數(shù)據(jù)
  • CAP定理(!!)
  • 高性能矮烹,高可用性和可伸縮性

MongoDB概念

1.SQL術(shù)語(yǔ)對(duì)比

SQL術(shù)語(yǔ)/概念 MongoDB術(shù)語(yǔ)/概念 解釋/說(shuō)明
database database 數(shù)據(jù)庫(kù)
table collection 數(shù)據(jù)庫(kù)表/集合
row document 數(shù)據(jù)記錄行/文檔
column field 數(shù)據(jù)字段/域
index index 索引
table joins 表連接,MongoDB不支持
primary key primary key 主鍵,MongoDB自動(dòng)將_id字段設(shè)置為主鍵

2.SQL條件對(duì)比

操作 格式 范例 RDBMS中的類(lèi)似語(yǔ)句
等于 {<key>:<value>} db.col.find({"by":"ahh"}).pretty() where by = 'ahh'
小于 {<key>:{$lt:<value>}} db.col.find({"likes":{$lt:50}}).pretty() where likes < 50
小于或等于 {<key>:{$lte:<value>}} db.col.find({"likes":{$lte:50}}).pretty() where likes <= 50
大于 {<key>:{$gt:<value>}} db.col.find({"likes":{$gt:50}}).pretty() where likes > 50
大于或等于 {<key>:{$gte:<value>}} db.col.find({"likes":{$gte:50}}).pretty() where likes >= 50
不等于 {<key>:{$ne:<value>}} db.col.find({"likes":{$ne:50}}).pretty() where likes != 50

基本語(yǔ)句

  1. 數(shù)據(jù)庫(kù)操作
  • 創(chuàng)建數(shù)據(jù)庫(kù):use DATABASE_NAME
  • 查看數(shù)據(jù)庫(kù):show dbs
  • 刪除數(shù)據(jù)庫(kù):db.dropDatabase()
  1. 集合操作
  • 創(chuàng)建集合:db.createCollection(COLLECTION_NAME)
  • 查看集合:show collections
  • 刪除集合:db.COLLECTION_NAME.drop()
  1. 文檔操作
  • 插入文檔:db.COLLECTION_NAME.insert(document)
  • 查看文檔:db.COLLECTION_NAME.find(query, projection)
  • 更新文檔:db.COLLECTION_NAME.update(document) /db.COLLECTION_NAME.save(document)
  • 刪除文檔:db.COLLECTION_NAME.remove(document)
  1. 其他
  • limit()越庇、skip()、sort()奉狈、創(chuàng)建索引:ensureIndex()
  • 聚合 db.COLLECTION_NAME.aggregate(AGGREGATE_OPERATION)

應(yīng)用場(chǎng)景

  • 日志分析
  • 存儲(chǔ)用戶(hù)不敏感信息卤唉、評(píng)論信息
  • 工單系統(tǒng)
  • 事務(wù)性不強(qiáng),讀頻繁
    ...

備注

CAP:


CAP
  • 一致性(Consistency) (所有節(jié)點(diǎn)在同一時(shí)間具有相同的數(shù)據(jù))
  • 可用性(Availability) (保證每個(gè)請(qǐng)求不管成功或者失敗都有響應(yīng))
  • 分隔容忍(Partition tolerance) (系統(tǒng)中任意信息的丟失或失敗不會(huì)影響系統(tǒng)的繼續(xù)運(yùn)作)

參考

  1. http://www.runoob.com/mongodb/mongodb-tutorial.html
  2. http://blog.csdn.net/xiaoxiong_web/article/details/53404428
  3. http://www.cnblogs.com/caihuafeng/p/5494336.html
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末仁期,一起剝皮案震驚了整個(gè)濱河市桑驱,隨后出現(xiàn)的幾起案子竭恬,更是在濱河造成了極大的恐慌,老刑警劉巖熬的,帶你破解...
    沈念sama閱讀 217,657評(píng)論 6 505
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件痊硕,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡押框,警方通過(guò)查閱死者的電腦和手機(jī)岔绸,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,889評(píng)論 3 394
  • 文/潘曉璐 我一進(jìn)店門(mén),熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)强戴,“玉大人亭螟,你說(shuō)我怎么就攤上這事挡鞍∑锎酰” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 164,057評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵墨微,是天一觀(guān)的道長(zhǎng)道媚。 經(jīng)常有香客問(wèn)我,道長(zhǎng)翘县,這世上最難降的妖魔是什么最域? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,509評(píng)論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮锈麸,結(jié)果婚禮上镀脂,老公的妹妹穿的比我還像新娘。我一直安慰自己忘伞,他們只是感情好薄翅,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,562評(píng)論 6 392
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著氓奈,像睡著了一般翘魄。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上舀奶,一...
    開(kāi)封第一講書(shū)人閱讀 51,443評(píng)論 1 302
  • 那天暑竟,我揣著相機(jī)與錄音,去河邊找鬼育勺。 笑死但荤,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的涧至。 我是一名探鬼主播腹躁,決...
    沈念sama閱讀 40,251評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼化借!你這毒婦竟也來(lái)了潜慎?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 39,129評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎铐炫,沒(méi)想到半個(gè)月后垒手,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,561評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡倒信,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,779評(píng)論 3 335
  • 正文 我和宋清朗相戀三年科贬,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片鳖悠。...
    茶點(diǎn)故事閱讀 39,902評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡榜掌,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出乘综,到底是詐尸還是另有隱情憎账,我是刑警寧澤,帶...
    沈念sama閱讀 35,621評(píng)論 5 345
  • 正文 年R本政府宣布卡辰,位于F島的核電站胞皱,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏九妈。R本人自食惡果不足惜反砌,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,220評(píng)論 3 328
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望萌朱。 院中可真熱鬧宴树,春花似錦、人聲如沸晶疼。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,838評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)冒晰。三九已至同衣,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間壶运,已是汗流浹背耐齐。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,971評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留蒋情,地道東北人埠况。 一個(gè)月前我還...
    沈念sama閱讀 48,025評(píng)論 2 370
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像棵癣,于是被迫代替她去往敵國(guó)和親辕翰。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,843評(píng)論 2 354

推薦閱讀更多精彩內(nèi)容