MongoDB學習(一)簡介

來源:互聯網
上載者:User

標籤:style   os   使用   ar   檔案   資料   sp   cti   代碼   

本篇主要簡單介紹一下MongoDB資料庫。

      一、簡介

      mongoDB是一個開源的,基於分布式的,面向文檔儲存的非關係型資料庫。是非關係型資料庫當中功能最豐富、最像關聯式資料庫的。

      mongoDB由C++編寫,其名字來源於"humongous"這個單詞,其宗旨在於處理大量資料。

      mongoDB可以運行在Windows、unix、OSX、Solaris系統上,支援32位和64位應用,提供多種程式設計語言的驅動程式。

      mongoDB支援的資料結構非常鬆散,是類似json的BSON格式,通過索引值對的形式儲存資料,可以儲存複雜的資料類型。

      mongoDB支援的資料類型有:null、boolean、String、objectId、32位整數、64位整數、64位浮點數、日期、Regex、js代碼、位元據、數組、內嵌文檔、最大值、最小值、未定義類型。

      其中,內嵌文檔我理解的並不是.doc.txt等檔案,這裡所指的文檔是mongoDB的一個儲存單元(相當於關係型資料當中的記錄),在mongoDB中的表現形式為{key1:value1,key2:value2},而內嵌文檔則是這樣的形式{key1:value1,key2:{key2.1:value2.1,key2.2:value2.2}}。

      mongoDB最大的特點是他支援的查詢語言非常強大,其文法有點類似於物件導向的查詢語言,幾乎可以實作類別似關聯式資料庫單表查詢的絕大部分功能,而且還支援對資料建立索引。

      二、mongoDB的特性:

       1. 面向集合儲存。資料被分組到若干集合,每個集合可以包含無限個文檔,可以將集合想象成RDBMS的表,區別是集合不需要進行模式定義。

       2. 模式自由。集合中沒有行和列的概念,每個文檔可以有不同的key,key的值不要求一致的資料類型。

       3. 支援動態查詢。mongoDB支援豐富的查詢運算式,查詢指令使用json形式運算式。

       4. 完整的索引支援。mongoDB的查詢最佳化工具會分析查詢運算式,並產生一個高效的查詢計劃。

       5. 高效的資料存放區,支援位元據及大型物件(圖片、視頻等)。

       6. 支援複製和故障恢複。

       7. 自動分區以支援雲層級的伸縮性,支援水平的資料庫叢集,可動態添加額外的伺服器。

     三、 mongoDB的適用情境:

       1.  適合作為資訊基礎設施的持久化緩衝層

       2. 適合即時的插入、更新與查詢,並具備應用程式即時資料儲存所需的複製及高度伸縮性

       3. 適合文檔化格式的儲存及查詢

       4. 適合由數十或數百台伺服器組成的資料庫

      四、mongoDB不適用情境:

        1. 要求高度事務性的系統。例如對於銀行或會計等需要大量原子性複雜事物的應用程式來說,還是需要關係型資料庫的。

        2. 傳統的商業智慧應用

        3. 複雜的表級聯查詢

MongoDB學習(一)簡介

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.