MongoDB經典面試題集錦

  1.什麼是NoSQL數據庫?NoSQLRDBMS有什麼區別?在哪些狀況下使用和不使用NoSQL數據庫?

  NoSQL是非關係型數據庫,NoSQL = Not Only SQLjavascript


  關係型數據庫採用的結構化的數據,NoSQL採用的是鍵值對的方式存儲數據。java


  在處理非結構化/半結構化的大數據時;在水平方向上進行擴展時;隨時應對動態增長的數據項時能夠優先考慮使用NoSQL數據庫。數據庫


  在考慮數據庫的成熟度;支持;分析和商業智能;管理及專業性等問題時,應優先考慮關係型數據庫。ide


  2.非關係型數據庫有哪些?


  MembaseMongoDBHypertable性能


  3.MySQLMongoDB之間最基本的區別是什麼?


  關係型數據庫與非關係型數據庫的區別,即數據存儲結構的不一樣。大數據


  4.MongoDB的特色是什麼?


  (1)面向文檔(2)高性能(3)高可用(4)易擴展(5)豐富的查詢語言spa


  5. MongoDB支持存儲過程嗎?若是支持的話,怎麼用?


  MongoDB支持存儲過程,它是javascript寫的,保存在db.system.js表中。對象


  6.如何理解MongoDB中的GridFS機制,MongoDB爲什麼使用GridFS來存儲文件?


GridFS是一種將大型文件存儲在MongoDB中的文件規範。使用GridFS能夠將大文件分隔成多個小文檔存放,這樣咱們可以有效的保存大文檔,並且解決了BSON對象有限制的問題。索引


  7.爲何MongoDB的數據文件很大?


MongoDB採用的預分配空間的方式來防止文件碎片。ip


  8.當更新一個正在被遷移的塊(Chunk)上的文檔時會發生什麼?


更新操做會當即發生在舊的塊(Chunk)上,而後更改纔會在全部權轉移前複製到新的分片上。


  9.MongoDBA:{B,C}上創建索引,查詢A:{B,C}A:{C,B}都會使用索引嗎?


不會,只會在A:{B,C}上使用索引。


  10.若是一個分片(Shard)中止或很慢的時候,發起一個查詢會怎樣?


若是一個分片中止了,除非查詢設置了「Partial」選項,不然查詢會返回一個錯誤。若是一個分片響應很慢,MongoDB會等待它的響應。

相關文章
相關標籤/搜索