1. 程式人生 > >[MongoDB]MongoDB的優缺點及與關係型資料庫的比較

[MongoDB]MongoDB的優缺點及與關係型資料庫的比較

> db.blogposts.ensureIndex( { "comments.by" : 1 } );
舉例
MongoDB
是一個面向文件的資料庫,目前由10gen開發並維護,它的功能豐富,齊全,完全可以替代MySQL。在使用MongoDB做產品原型的過程中,我們總結了MonogDB的一些亮點:使用JSON風格語法,易於掌握和理解:MongoDB使用JSON的變種BSON作為內部儲存的格式和語法。針對MongoDB的操作都使用JSON風格語法,客戶端提交或接收的資料都使用JSON形式來展現。相對於SQL來說,更加直觀,容易理解和掌握。
Schema-less
,支援嵌入子文件:MongoDB
是一個Schema-free的文件資料庫。一個數據庫可以有多個Collection,每CollectionDocuments的集合。CollectionDocument和傳統資料庫的TableRow並不對等。無需事先定義 Collection,隨時可以建立。
Collection
中可以包含具有不同schema的文件記錄。這意味著,你上一條記錄中的文件有3個屬性,而下一條記錄的文件可以有10個屬性,屬性的型別既可以是基本的資料型別(如數字、字串、日期等),也可以是陣列或者雜湊,甚至還可以是一個子文件(embed document)。這樣,可以實現逆規範化(denormalizing)的資料模型,提高查詢的速度。