mongldb是開源的nosql數據庫,免費,開源和官方良好的技術支持,國外有ebay,github,sourceforge等在用mongodb,國內有百度,淘寶,京東,360,大衆點評,每天動聽等等公司,相對市場需求,mongodb從業人員較爲短缺
一、熟悉mongodb的概念瞭解,好比mongodb,mongo,索引,集合,複製集,分片,數據均衡有一個完備的瞭解
二、學會mongodb的搭建,部署數據庫服務,搭建簡單的單機服務,搭建具備冗餘容錯功能的複製集,搭建大規模數據集羣,完成集羣的自動部署
三、熟悉mongodb的使用,最基本的文檔的讀寫更新刪除,各類不一樣類型的索引的建立與使用,複雜的聚合查詢,對數據集合進行分片,在不一樣分片間維持數據均衡,數據備份與恢復,數據遷移
四、簡單運維,部署mongodb集羣,處理常見對故障,單節點失效,如何恢復工做,數據庫意外被殺死如何進行數據恢復,數據庫發生拒絕服務時如何排查緣由,數據庫磁盤快滿時如何處理
mongodb學習網站
一、mongodb官網:www.mongodb.org
二、mongodb國內官方網站:www.mongoing.com
三、中文mongodb文檔地址: docs.mongoing.com
四、mongodb的github:https://github.com/mongodb/
數據庫概念
一、有組織地存放數據。
二、按照不一樣的需求進行查詢。
數據庫分類:
一、sql數據庫:支持sql語言的數據庫,oracle,mysql
隨着大規模互聯網的出現,傳統的sql數據庫遇到了一些應用上的弊端,好比sql對錶的定義和應用不夠靈活,橫向拓展比較困難,與一些特性難以知足相比,反而sql數據庫不少特性沒有用武之地,好比在不少場景下,及時存取並非必要的,也沒有特別多的事務需求,而這些額外的特性消耗着sql數據庫的性能,所以nosql數據庫發展起來了
二、nosql數據庫,不支持sql語言的數據庫
健值組合的redis,mongodb (not only sql 悄悄的不支持sql語言)
區別:
與sql數據庫相比,nosql數據庫放棄了一些特性,好比實時一致性,事務的完整支持,多表聯合查詢,nosql數據庫更加的簡單便捷,方便擴展,更好的性能
爲何選擇mongodb
一、無數據結構限制
一、沒有表結構的概念,每條記錄能夠有徹底不一樣的結構,在傳統數據庫難以事先
二、業務開發方便快捷
三、sql數據庫須要事先定義表結構再使用
{name:'小明',sex:'男'}
{name:'小紅',address:'上海'}
{name:'小蘭',home:[{山東},{江西}]}
二、徹底的索引支持
一、redis的key-value
二、hbase的單索引,二級索引須要本身實現。
mongodb支持單鍵索引,多鍵索引:{x:1,y:1}
數組索引:['apple','lemon']
全文索引:'i am a little bird'
地址位置索引:2d
三、方便的冗餘與擴展
一、複製集保證數據安全
二、分片擴展數據規模
四、良好的支持
一、完善的文檔
二、齊全的驅動支持