標籤:style http color io os 使用 ar java for
mongodb簡介
1、簡介
MongoDB是一個基於分布式檔案儲存體的資料庫。由C++語言編寫。旨在為WEB應用提供可擴充的高效能資料儲存解決方案。
MongoDB是一個介於關聯式資料庫和非關聯式資料庫之間的產品,是非關聯式資料庫當中功能最豐富,最像關聯式資料庫的。他支援的資料結構非常鬆散,是類 似json的bson格式,因此可以儲存比較複雜的資料類型。Mongo最大的特點是他支援的查詢語言非常強大,其文法有點類似於物件導向的查詢語言,幾乎可以實作類別似關聯式資料庫單表查詢的絕大部分功能,而且還支援對資料建立索引。
2、特點
它的特點是高效能、易部署、易使用,儲存資料非常方便。
主要功能特性有:
*面向集合儲存,易儲存物件類型的資料。
*模式自由。
*支援動態查詢。
*支援完全索引,包含內部對象。
*支援查詢。
*支援複製和故障恢複。
*使用高效的位元據儲存,包括大型物件(如視頻等)。
*自動處理片段,以支援雲端運算層次的擴充性。
*支援RUBY,PYTHON,JAVA,C++,PHP,C#等多種語言。
*檔案儲存體格式為BSON(一種JSON的擴充)。
*可通過網路訪問。
3、使用原理
所謂“面向 集合”(Collection-Oriented),意思是資料被分組儲存在資料集中,被稱為一個集合(Collection)。每個集合在資料庫中都有 一個唯一的標識名,並且可以包含無限數目的文檔。集合的概念類似關係型資料庫(RDBMS)裡的表(table),不同的是它不需要定義任何模式 (schema)。
模式自由(schema-free),意味著對於儲存在mongodb資料庫中的檔案,我們不需要知道它的任何結構定義。如果需要的話,你完全可以把不同結構的檔案儲存體在同一個資料庫裡。
儲存在集合中的文檔,被儲存為鍵-值對的形式。鍵用於唯一標識一個文檔,為字串類型,而值則可以是各種複雜的檔案類型。我們稱這種儲存形式為BSON(Binary Serialized Document Format)。
4、實際應用
MongoDB服務端可運行在Linux、Windows或IOS平台,支援32位和64位應用,預設連接埠為27017。推薦運行在64位平台,因為MongoDB在32位元模式運行時支援的最大檔案尺寸為2GB。
BSON入門
1、概念
BSON(Binary Serialized Document Format)是一種類json的一種二進位形式的儲存格式,簡稱Binary JSON,它和JSON一樣,支援內嵌的文檔對象和數組對象,但是BSON有JSON沒有的一些資料類型,如Date和BinData類型。
BSON可以做為網路資料交換的一種儲存形式,這個有點類似於Google的Protocol Buffer,但是BSON是一種schema-less的儲存形式,它的優點是靈活性高,但它的缺點是空間利用率不是很理想。
BSON有三個特點:輕量性、可遍曆性、高效性。
{“hello":"world"} 這是一個BSON的例子,其中"hello"是key name,它一般是cstring類型,位元組表示是cstring::= (byte*) "/x00" ,其中*表示零個或多個byte位元組,/x00表示結束符;後面的"world"是value值,它的類型一般是 string,double,array,binarydata等類型。
2、使用方式
MongoDB 使用了BSON這種結構來儲存資料和網路資料交換。把這種格式轉化成文檔這個概念(Document),因為BSON是schema-free的,所以在 MongoDB中所對應的文檔也有這個特徵,這裡的一個Document也可以理解成關聯式資料庫中的一條記錄(Record),只是這裡的 Document的變化更豐富一些,如Document可以嵌套。
MongoDB以BSON做為其儲存結構的一種重要原因是其可遍曆性。
3、例子
3.1 一個Document的BSON表示
{ title:"MongoDB", last_editor:"192.168.1.122", last_modified:new Date("27/06/2011"), body:"MongoDB introduction", categories:["Database","NoSQL","BSON"], revieved:false }
這是一個簡單的BSON結構體,其中每一個element都是由key/value對組成的。
3.2 一個嵌套的例子
{ name:"lemo", age:"12", address:{ city:"suzhou", country:"china", code:215000 }, scores:[ {"name":"english","grade:3.0}, {"name":"chinese","grade:2.0} ]}
這是一種相對複雜點的例子,其中包括了地址對象和分數對象數組,這裡使用了嵌套文檔對象與文檔對象資料來表示單個學生的資訊,這種嵌套的文檔結構要使用關聯式資料庫來做是比較複雜的。
Windows7下安裝MongoDB
1、下載
地址:http://www.mongodb.org/downloads(32位還是64位自行選擇)。
我下載的是:mongodb-win32-x86_64-2.4.5.zip
2、解壓
把mongodb-win32-x86_64-2.4.5.zip放到某個位置,解壓。我放的是D:\dev目錄。
解壓後的路徑為D:\dev\mongodb-win32-x86_64-2.4.5
3. 安裝準備
MongoDB預設的資料目錄為:C:\data\db。如果不用預設目錄,則需要在在mongod.exe命令後加--dbpath參數。
建立資料目錄。我建立的是D:\dev\mongodb-win32-x86_64-2.4.5\data\db
建立日誌目錄及其檔案。我建立的是D:\dev\mongodb-win32-x86_64-2.4.5\log及D:\dev\mongodb-win32-x86_64-2.4.5\log\log.txt。
4、啟動MongoDB
開啟cmd視窗(cmd.exe),進入D:\dev\mongodb-win32-x86_64-2.4.5\bin,執行mongod.exe命令,見。
mongod.exe --logpath=D:\dev\mongodb-win32-x86_64-2.4.5\log\log.txt --dbpath=D:\dev\mongodb-win32-x86_64-2.4.5\data\db
--logpath 參數是設定記錄檔的路徑。
--dbpath 參數是設定資料庫檔案的存放路徑。
mongod.exe命令的所有參數選項可通過mongod.exe --help查看。
5、作為服務進行安裝
使用管理員權限開啟windows的cmd視窗,進入D:\dev\mongodb-win32-x86_64-2.4.5\bin目錄。
mongod.exe --install --logpath=D:\dev\mongodb-win32-x86_64-2.4.5\log\log.txt --dbpath=D:\dev\mongodb-win32-x86_64-2.4.5\data\db
--install 參數是設定安裝為伺服器
設定為服務後,即可在cmd(管理員權限開啟的windows cmd視窗)視窗用服務的方式啟動或停止MongoDB。
net start mongodb 啟動mongodb服務
net stop mongodb 啟動mongodb服務
6、進入shell環境介面
進入sheelMongoDB後,在cmd視窗進入D:\dev\mongodb-win32-x86_64-2.4.5\bin目錄,輸入mongo.exe,則可以進入shell環境介面。
MongoDB介紹及安裝