28個MongoDB經典面試題詳解_MongoDB

來源:腳本之家  責任編輯:小易  

也許面試官有意卡你,你怎么回答都是錯的呢。這個一看就是背的答案。現實中,除非同醫生關系非同一般,才可能這樣做。不知道你面的是什么職位,如果是需要和人打交道比較多的工作,可能是為了考察你更全面的分析人之間的關系的題設,這時候應該詢問更詳細的情況www.13333515.buzz防采集請勿采集本網。

MongoDB是目前最好的面向文檔的免費開源NoSQL數據庫。

我喜歡這份職業,我喜歡與孩子溝通。1、首先我喜歡這份職業,我喜歡與孩子溝通,我認為孩子的世界里充滿了我們大人所沒有的那份天真和純潔,隨著年齡的增長和嘴社會里的磨練,讓我們磨去了去多的

如果你正準備參加MongoDB NoSQL數據庫的技術面試,你最好看看下面的MongoDB NoSQL面試問答。

考察內容:求職者思考問題的角度 求職者的個性及其偏好 回答技巧:這是一個開放式問題,面試官對于求職者選擇的結果并不是最關注的,本題考核的是求職者做出選擇的原因,求職者可以抓住這一機會

這些MongoDB NoSQL面試問答涵蓋了NoSQL數據庫基本的概念,復制(Replication),分片(Sharding),事務和鎖,跟蹤分析工具(Profiler),Nuances和日志等特性。

這個是面試中的常見問題!從這個題中可以看到面試者的思維活躍性,遇事的統籌性,和面試者的思維方式。比如這個題目是要你得出個位數!那么你可以從頭到尾的加,也可以從中找規律的加!甚至于有

讓我們看看下面的這些MongoDB NoSQL數據庫的面試問答吧:

因為這份工作以服務群眾為重點,是做好社區工作的出發點和落腳點,也是社區黨建工作和社區工作的最佳結合點。隨著人民生活水平不斷提高,社區居民對居住環境、生活質量、精神文化等方面的需求日

1. 你說的NoSQL數據庫是什么意思?NoSQL與RDBMS直接有什么區別?為什么要使用和不使用NoSQL數據庫?說一說NoSQL數據庫的幾個優點?

這是個很爛的題目,我是在《青年文摘》或《讀者》看過關于類似這個問題的文章的。要來點就是,不要被50元錢限制的,你掙錢的方案不在50塊錢,而在于源你自身。所以,你可以通過幫人排隊買票、幫

NoSQL是非關系型數據庫,NoSQL = Not Only SQL。

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

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

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

2. NoSQL數據庫有哪些類型?

NoSQL數據庫的類型

例如:MongoDB, Cassandra, CouchDB, Hypertable, Redis, Riak, Neo4j, HBASE, Couchbase, MemcacheDB, RevenDB and Voldemort are the examples of NoSQL databases.詳細閱讀。

3. MySQL與MongoDB之間最基本的差別是什么?

MySQL和MongoDB兩者都是免費開源的數據庫。MySQL和MongoDB有許多基本差別包括數據的表示(data representation),查詢,關系,事務,schema的設計和定義,標準化(normalization),速度和性能。

通過比較MySQL和MongoDB,實際上我們是在比較關系型和非關系型數據庫,即數據存儲結構不同。詳細閱讀

4. 你怎么比較MongoDB、CouchDB及CouchBase?

MongoDB和CouchDB都是面向文檔的數據庫。MongoDB和CouchDB都是開源NoSQL數據庫的最典型代表。 除了都以文檔形式存儲外它們沒有其他的共同點。MongoDB和CouchDB在數據模型實現、接口、對象存儲以及復制方法等方面有很多不同。

細節可以參見下面的鏈接:

MongDB vs CouchDB

CouchDB vs CouchBase

5. MongoDB成為最好NoSQL數據庫的原因是什么?

以下特點使得MongoDB成為最好的NoSQL數據庫: 面向文件的 高性能 高可用性 易擴展性 豐富的查詢語言

6.32位系統上有什么細微差別?

journaling會激活額外的內存映射文件。這將進一步抑制32位版本上的數據庫大小。因此,現在journaling在32位系統上默認是禁用的。

7. journal回放在條目(entry)不完整時(比如恰巧有一個中途故障了)會遇到問題嗎?

每個journal (group)的寫操作都是一致的,除非它是完整的否則在恢復過程中它不會回放。

8. 分析器在MongoDB中的作用是什么?

MongoDB中包括了一個可以顯示數據庫中每個操作性能特點的數據庫分析器。通過這個分析器你可以找到比預期慢的查詢(或寫操作);利用這一信息,比如,可以確定是否需要添加索引。

9. 名字空間(namespace)是什么?

MongoDB存儲BSON對象在叢集(collection)中。數據庫名字和叢集名字以句點連結起來叫做名字空間(namespace)。

10. 如果用戶移除對象的屬性,該屬性是否從存儲層中刪除?

是的,用戶移除屬性然后對象會重新保存(re-save())。

11. 能否使用日志特征進行安全備份?

是的。

12. 允許空值null嗎?

對于對象成員而言,是的。然而用戶不能夠添加空值(null)到數據庫叢集(collection)因為空值不是對象。然而用戶能夠添加空對象{}。

13. 更新操作立刻fsync到磁盤?

不會,磁盤寫操作默認是延遲執行的。寫操作可能在兩三秒(默認在60秒內)后到達磁盤。例如,如果一秒內數據庫收到一千個對一個對象遞增的操作,僅刷新磁盤一次。(注意,盡管fsync選項在命令行和經過getLastError_old是有效的)(譯者:也許是坑人的面試題??)。

14. 如何執行事務/加鎖?

MongoDB沒有使用傳統的鎖或者復雜的帶回滾的事務,因為它設計的宗旨是輕量,快速以及可預計的高性能。可以把它類比成MySQL MylSAM的自動提交模式。通過精簡對事務的支持,性能得到了提升,特別是在一個可能會穿過多個服務器的系統里。

15. 為什么我的數據文件如此龐大?

MongoDB會積極的預分配預留空間來防止文件系統碎片。

16. 啟用備份故障恢復需要多久?

從備份數據庫聲明主數據庫宕機到選出一個備份數據庫作為新的主數據庫將花費10到30秒時間。這期間在主數據庫上的操作將會失敗--包括寫入和強一致性讀取(strong consistent read)操作。然而,你還能在第二數據庫上執行最終一致性查詢(eventually consistent query)(在slaveOk模式下),即使在這段時間里。

17. 什么是master或primary?

它是當前備份集群(replica set)中負責處理所有寫入操作的主要節點/成員。在一個備份集群中,當失效備援(failover)事件發生時,一個另外的成員會變成primary。

18. 什么是secondary或slave?

Seconday從當前的primary上復制相應的操作。它是通過跟蹤復制oplog(local.oplog.rs)做到的。

19. 我必須調用getLastError來確保寫操作生效了么?

不用。不管你有沒有調用getLastError(又叫"Safe Mode")服務器做的操作都一樣。調用getLastError只是為了確認寫操作成功提交了。當然,你經常想得到確認,但是寫操作的安全性和是否生效不是由這個決定的。

20. 我應該啟動一個集群分片(sharded)還是一個非集群分片的 MongoDB 環境?

為開發便捷起見,我們建議以非集群分片(unsharded)方式開始一個 MongoDB 環境,除非一臺服務器不足以存放你的初始數據集。從非集群分片升級到集群分片(sharding)是無縫的,所以在你的數據集還不是很大的時候沒必要考慮集群分片(sharding)。

21. 分片(sharding)和復制(replication)是怎樣工作的?

每一個分片(shard)是一個分區數據的邏輯集合。分片可能由單一服務器或者集群組成,我們推薦為每一個分片(shard)使用集群。

22. 數據在什么時候才會擴展到多個分片(shard)里?

MongoDB 分片是基于區域(range)的。所以一個集合(collection)中的所有的對象都被存放到一個塊(chunk)中。只有當存在多余一個塊的時候,才會有多個分片獲取數據的選項。現在,每個默認塊的大小是 64Mb,所以你需要至少 64 Mb 空間才可以實施一個遷移。

23. 當我試圖更新一個正在被遷移的塊(chunk)上的文檔時會發生什么?

更新操作會立即發生在舊的分片(shard)上,然后更改才會在所有權轉移(ownership transfers)前復制到新的分片上。

24. 如果在一個分片(shard)停止或者很慢的時候,我發起一個查詢會怎樣?

如果一個分片(shard)停止了,除非查詢設置了“Partial”選項,否則查詢會返回一個錯誤。如果一個分片(shard)響應很慢,MongoDB則會等待它的響應。

25. 我可以把moveChunk目錄里的舊文件刪除嗎?

沒問題,這些文件是在分片(shard)進行均衡操作(balancing)的時候產生的臨時文件。一旦這些操作已經完成,相關的臨時文件也應該被刪除掉。但目前清理工作是需要手動的,所以請小心地考慮再釋放這些文件的空間。

26. 我怎么查看 Mongo 正在使用的鏈接?

db._adminCommand("connPoolStats");

27. 如果塊移動操作(moveChunk)失敗了,我需要手動清除部分轉移的文檔嗎?

不需要,移動操作是一致(consistent)并且是確定性的(deterministic);一次失敗后,移動操作會不斷重試;當完成后,數據只會出現在新的分片里(shard)。

28. 如果我在使用復制技術(replication),可以一部分使用日志(journaling)而其他部分則不使用嗎?

可以。

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

更新操作會立即發生在舊的塊(Chunk)上,然后更改才會在所有權轉移前復制到新的分片上。

30.MongoDB在A:{B,C}上建立索引,查詢A:{B,C}和A:{C,B}都會使用索引嗎?

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

31.如果一個分片(Shard)停止或很慢的時候,發起一個查詢會怎樣?

如果一個分片停止了,除非查詢設置了“Partial”選項,否則查詢會返回一個錯誤。如果一個分片響應很慢,MongoDB會等待它的響應。

32. MongoDB支持存儲過程嗎?如果支持的話,怎么用?

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

33.如何理解MongoDB中的GridFS機制,MongoDB為何使用GridFS來存儲文件?

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

更多關于MongoDB經典面試題請查看下面的相關鏈接

由于公務員面試追求的公平性,一般不會問這樣有可能透露考生信息的題目,如果真這么問了,建議這樣回答:1、先講講自己為什么要考公務員。“公務員隊伍是一個匯集了全國各地精英的團隊,我從小就立志要成為其中一員…”等等把公務員猛夸一通。2、結合你報考崗位的職責。先去網上查查所報崗位的崗位職責,然后結合崗位特點,介紹自身優勢,目的是要告訴考官“我比別人適合這個崗位,希望考官給我這個機會”,如果中間能加幾句領導人說過的話就更完美了。3、表態。如果有幸通過面試,我將怎么怎么樣,這個不用我教你了吧。就這樣回答,保證你拿高分。記得讀《鋼鐵是怎樣煉成的》這本書時,主人公保爾-柯察金有一句話:一個人的生命應當是這樣度過的,當他回首往事的時候,他不會因為虛度年華而悔恨,也不會因為碌碌無為而羞恥。我認為:人生就在于奮斗,就在于不停的拼搏,最終實現自我價值。具體到這個問題首先,這跟我長期的職業定位是分不開的。每個人都有自己的職業期望,這是和自身的愛好和興趣聯系在一起的。要看這個職業能不能發揮自身的優勢和專業知識。通過7年的法學理論學習,成為一名公務員是我的強烈愿望。而公務員是一個神圣而高尚的職業,代表著國家從事社會公共事務管理,肩負著人民的希望,追求的是公共利益的最大化,它存在的根本目的是為人民服務,為國家服務,同時檢察院更是肩負著法律的監督與執行的重任,是人民利益,國家利益的保障,因此成為一名公務員能夠實現我的職業理想和社會價值。其次,客觀上我也具備相應能力,適合書記員這個崗位。我去年在四川省高級人民法院實習,通過法院書記員崗位的實習我基本上了解了公務員崗位的工作作風、工作內容,我發現司法機關的工作作風、氛圍非常的適合我,這里有踏實、穩重的良好風氣,同時有復雜人際關系,需要具有較強協調能力的人才能適應。而我的知識背景、在法院作書記員的實習經歷,工作熱情加上在學校擔任學生干部期間對組織協調能力的鍛煉可以說完全符合檢察機關書記員崗位的要求。e再次,我是一個穩定的人,喜歡做一些穩定的工作,毫無疑問,公務員具備這個特點。在一個穩定的環境中我能夠發揮自己的最大潛能,對于我的個人發展是很有利的。總之,書記員這個崗位要求我要有一個積極穩定的心態,能夠奈得住寂寞,擁有一顆細心謹慎的心,這些特質在我的性格特征中都是存在的。因此,如果我能有幸成為一名公務員,我一定會盡快的實現從學校到政府機關、從學生到公務人員的角色轉變,做一個合格的人民公仆,更好的服務大家,完成我的職業夢想,實現我的社會價值!謝謝,回答完畢!內容來自www.13333515.buzz請勿采集。


  • 本文相關:
  • mongodb 數據庫的命名、設計規范詳解
  • mongodb常用數據庫命令大全
  • 修復 mac brew 安裝 mongodb 報 error: no available formula with the name ‘mongodb’ 問題詳解
  • mongodb啟動報錯 28663 cannot start server
  • node.js操作mongodb數據庫實例分析
  • mongodb數據庫安裝配置、基本操作實例詳解
  • windows10安裝mongodb4.0詳細步驟及啟動配置教程
  • nodejs對mongodb數據庫的增加修刪該查實例代碼
  • mongodb基本命令實例小結
  • win10 64位安裝mongodb數據庫的詳細教程
  • linux下安裝mongodb教程
  • python操作redis和mongodb的方法
  • dotnet core鏈接mongodb代碼實例
  • zabbix3.4監控mongodb數據庫狀態的方法
  • windows安裝壓縮版mongodb的教程
  • 在laravel中使用mongodb的方法示例
  • 關于mongodb謹防索引seek的效率問題詳析
  • mongodb中數據的替換方法實現類replace()函數功能詳解
  • ubuntu 14.04 安裝 mongodb 及 php mongodb driver詳細介紹
  • mongodb在windows下的安裝步驟分享
  • mongodb中crud的深入講解
  • mongodb系列教程(四):設置用戶訪問權限
  • mongodb學習之text search文本搜索功能
  • mongodb教程之查詢操作實例
  • mongodb索引使用詳解
  • mongodb中按天進行聚合查詢的實例教程
  • php中安裝使用mongodb數據庫
  • 詳解mongodb數據還原及同步解決思路
  • 你為什么要報考這個職位?(這是事業單位的面試題,求教各位給個詳細而生動的回答,謝謝)
  • 面試題, 在一個風雨交加晚上,你開車去接愛人,可路上遇到個醫生,病人,還有自己的夢中情人
  • 對公司發展前景有什么看法?怎么回答.這是面試題
  • 面試題讓我寫一百個一,我只寫了一個,該怎么回答
  • 面試題:你為什么想當老師?
  • 面試題:你為什么要選擇這個專業和學校,怎么答?
  • 面試題:兩個不大于10的數字相加,算出相加得出的個位數 這個面試可以測試出什么呢?
  • 社區考試面試題為"你為什么想從事社區服務這個工作?"應該如何回答?
  • 面試題,用50塊錢在兩個小時內掙錢方案
  • 面試過程中有何需要注意的?情景面試題的面試技巧如何?
  • 網站首頁網頁制作腳本下載服務器操作系統網站運營平面設計媒體動畫電腦基礎硬件教程網絡安全mssqlmysqlmariadboracledb2mssql2008mssql2005sqlitepostgresqlmongodbredisaccess數據庫文摘數據庫其它首頁mongodbmongodb 數據庫的命名、設計規范詳解mongodb常用數據庫命令大全修復 mac brew 安裝 mongodb 報 error: no available formula with the name ‘mongodb’ 問題詳解mongodb啟動報錯 28663 cannot start servernode.js操作mongodb數據庫實例分析mongodb數據庫安裝配置、基本操作實例詳解windows10安裝mongodb4.0詳細步驟及啟動配置教程nodejs對mongodb數據庫的增加修刪該查實例代碼mongodb基本命令實例小結win10 64位安裝mongodb數據庫的詳細教程linux下安裝mongodb教程python操作redis和mongodb的方法dotnet core鏈接mongodb代碼實例zabbix3.4監控mongodb數據庫狀態的方法windows安裝壓縮版mongodb的教程在laravel中使用mongodb的方法示例關于mongodb謹防索引seek的效率問題詳析mongodb中數據的替換方法實現類replace()函數功能詳解ubuntu 14.04 安裝 mongodb 及 php mongodb driver詳細介紹mongodb在windows下的安裝步驟分享mongodb中crud的深入講解mongodb系列教程(四):設置用戶訪問權限mongodb學習之text search文本搜索功能mongodb教程之查詢操作實例mongodb索引使用詳解mongodb中按天進行聚合查詢的實例教程php中安裝使用mongodb數據庫詳解mongodb數據還原及同步解決思路mongodb常用操作命令大全mongodb各種查詢操作詳解mongodb數據庫插入、更新和刪除操mongodb 數據庫操作--備份 還原 mongodb插入數據的3種方法mongodb中使用distinct去重的簡單mongodb整庫備份與還原以及單個cmongodb查詢操作限制返回字段的方mongodb 實現遠程連接php中mongodb數據庫的連接、添加centos 7下用yum快速安裝mongodb的方法教mongodb 使用skip和limit分頁mongodb入門教程之常用的運維技術介紹關于單臺mongodb實例開啟oplog的過程詳解mac中mongodb的安裝與卸載步驟詳解mongodb錯誤32-bit servers don""t have mongodb使用指南--基本操作關于mongodb謹防索引seek的效率問題詳析mongodb在系統數據庫local中無法創建用戶mongodb教程之基本管理命令
    免責聲明 - 關于我們 - 聯系我們 - 廣告聯系 - 友情鏈接 - 幫助中心 - 頻道導航
    Copyright © 2017 www.13333515.buzz All Rights Reserved
    3排列五开奖结果