新聞中心
這是MongoDB的系列學習筆記的第一篇,主要介紹什么是非關系型數(shù)據(jù)庫MongoDB,如何下載,去哪兒下載,又該怎么正確的安裝等一系列問題。

一、前言
最近開始學習非關系型數(shù)據(jù)庫MongoDB,卻在博客園上找不到比較系統(tǒng)的教程,很多資料都要去查閱英文網(wǎng)站,效率比較低下。本人不才,借著自學的機會把心得體會都記錄下來,方便感興趣的童鞋分享討論。部分資源出自其他博客,旨將零散知識點集中到一起,如果有侵犯您的權利,請聯(lián)系[email protected]。大部分內(nèi)容均系原創(chuàng),歡迎大家轉(zhuǎn)載分享,但轉(zhuǎn)載的同時別忘了注明作者和原文鏈接哦。
二、MongoDB簡介
MongoDB是一個高性能,開源,無模式的文檔型數(shù)據(jù)庫,是當前NoSql數(shù)據(jù)庫中比較熱門的一種。它在許多場景下可用于替代傳統(tǒng)的關系型數(shù)據(jù)庫或鍵/值存儲方式。Mongo使用C++開發(fā)。Mongo的官方網(wǎng)站地址是:http://www.mongodb.org/,讀者可以在此獲得更詳細的信息。
| 小插曲:什么是NoSql? |
NoSql,全稱是 Not Only Sql,指的是非關系型的數(shù)據(jù)庫。下一代數(shù)據(jù)庫主要解決幾個要點:非關系型的、分布式的、開源的、水平可擴展的。原始的目的是為了大規(guī)模web應用,這場運動開始于2009年初,通常特性應用如:模式自由、支持簡易復制、簡單的API、最終的一致性(非ACID)、大容量數(shù)據(jù)等。NoSQL被我們用得最多的當數(shù)key-value存儲,當然還有其他的文檔型的、列存儲、圖型數(shù)據(jù)庫、xml數(shù)據(jù)庫等。 |
特點:
- 高性能、易部署、易使用,存儲數(shù)據(jù)非常方便。主要功能特性有:
- 面向集合存儲,易存儲對象類型的數(shù)據(jù)。
- 模式自由。
- 支持動態(tài)查詢。
- 支持完全索引,包含內(nèi)部對象。
- 支持查詢。
- 支持復制和故障恢復。
- 使用高效的二進制數(shù)據(jù)存儲,包括大型對象(如視頻等)。
- 自動處理碎片,以支持云計算層次的擴展性
- 支持Python,PHP,Ruby,Java,C,C#,Javascript,Perl及C++語言的驅(qū)動程序,社區(qū)中也提供了對Erlang及.NET等平臺的驅(qū)動程序。
- 文件存儲格式為BSON(一種JSON的擴展)。
- 可通過網(wǎng)絡訪問。
功能:
- 面向集合的存儲:適合存儲對象及JSON形式的數(shù)據(jù)。
- 動態(tài)查詢:Mongo支持豐富的查詢表達式。查詢指令使用JSON形式的標記,可輕易查詢文檔中內(nèi)嵌的對象及數(shù)組。
- 完整的索引支持:包括文檔內(nèi)嵌對象及數(shù)組。Mongo的查詢優(yōu)化器會分析查詢表達式,并生成一個高效的查詢計劃。
- 查詢監(jiān)視:Mongo包含一個監(jiān)視工具用于分析數(shù)據(jù)庫操作的性能。
- 復制及自動故障轉(zhuǎn)移:Mongo數(shù)據(jù)庫支持服務器之間的數(shù)據(jù)復制,支持主-從模式及服務器之間的相互復制。復制的主要目標是提供冗余及自動故障轉(zhuǎn)移。
- 高效的傳統(tǒng)存儲方式:支持二進制數(shù)據(jù)及大型對象(如照片或圖片)
- 自動分片以支持云級別的伸縮性:自動分片功能支持水平的數(shù)據(jù)庫集群,可動態(tài)添加額外的機器。
適用場合:
- 網(wǎng)站數(shù)據(jù):Mongo非常適合實時的插入,更新與查詢,并具備網(wǎng)站實時數(shù)據(jù)存儲所需的復制及高度伸縮性。
- 緩存:由于性能很高,Mongo也適合作為信息基礎設施的緩存層。在系統(tǒng)重啟之后,由Mongo搭建的持久化緩存層可以避免下層的數(shù)據(jù)源 過載。
- 大尺寸,低價值的數(shù)據(jù):使用傳統(tǒng)的關系型數(shù)據(jù)庫存儲一些數(shù)據(jù)時可能會比較昂貴,在此之前,很多時候程序員往往會選擇傳統(tǒng)的文件進行存儲。
- 高伸縮性的場景:Mongo非常適合由數(shù)十或數(shù)百臺服務器組成的數(shù)據(jù)庫。Mongo的路線圖中已經(jīng)包含對MapReduce引擎的內(nèi)置支持。
- 用于對象及JSON數(shù)據(jù)的存儲:Mongo的BSON數(shù)據(jù)格式非常適合文檔化格式的存儲及查詢。
三、下載安裝和配置
安裝Mongo數(shù)據(jù)庫:
在發(fā)布本文的時間官方提供的最新版本是:1.6.5 ,如果不做特殊聲明,本教程所用的版本將會是這個版本。
- 第一步:下載安裝包:如果是win系統(tǒng),注意是64位還是32位版本的,請選擇正確的版本。
- 第二步:新建目錄“D:\MongoDB”,解壓下載到的安裝包,找到bin目錄下面全部.exe文件,拷貝到剛創(chuàng)建的目錄下。
- 第三步:在“D:\MongoDB”目錄下新建“data”文件夾,它將會作為數(shù)據(jù)存放的根文件夾。
注:官方下載地址:http://www.mongodb.org/downloads
配置Mongo服務端:
打開CMD窗口,按照如下方式輸入命令:
> d:
> cd D:\MongoDB
> mongod --dbpath D:\MongoDB\data
配置成功后會看到如下畫面:
在瀏覽器輸入:http://localhost:27017/,可以看到如下提示:
You are trying to access MongoDB on the native driver port. For http diagnostic access, add 1000 to the port number
如此,MongoDB數(shù)據(jù)庫服務已經(jīng)成功啟動了。
四、后記
現(xiàn)在我們已經(jīng)初步實現(xiàn)了MongoDB的安裝和服務的啟動工作。后面我們還有很多的工作,要使MongoDB能在我們的C#代碼中被操作,還需要驅(qū)動,經(jīng)常有朋友在網(wǎng)上copy代碼后發(fā)現(xiàn)編譯不通過,那估計是驅(qū)動不一致的問題了,下篇文章會詳細講解,未完待續(xù)。。
原文出處:http://www.cnblogs.com/lipan/archive/2011/03/08/1966463.html
當前標題:MongoDB學習筆記(一)MongoDB介紹及安裝
網(wǎng)站URL:http://m.fisionsoft.com.cn/article/cdieeop.html


咨詢
建站咨詢
