NoSQL數(shù)據(jù)庫(kù)入門(mén)

出版時(shí)間:2012-5  出版社:人民郵電出版  作者:[日]佐佐木達(dá)也  頁(yè)數(shù):199  字?jǐn)?shù):308000  譯者:羅 勇  
Tag標(biāo)簽:無(wú)  

前言

  前言  最近,到處都能聽(tīng)到“NoSQL”,這個(gè)詞到底是什么意思呢?“NoSQL”到底能給我們帶來(lái)什么好處呢?現(xiàn)在,提起數(shù)據(jù)存儲(chǔ),一般都是針對(duì)關(guān)系型數(shù)據(jù)庫(kù)來(lái)說(shuō)的。但是,關(guān)系型數(shù)據(jù)庫(kù)并不是萬(wàn)能的,它對(duì)于某些處理依然是很吃力的。本書(shū)所講述的NoSQL數(shù)據(jù)庫(kù)就是為了彌補(bǔ)關(guān)系型數(shù)據(jù)庫(kù)的不足應(yīng)運(yùn)而生的。在適當(dāng)?shù)那闆r下使用NoSQL數(shù)據(jù)庫(kù),可以為關(guān)系型數(shù)據(jù)庫(kù)需要耗費(fèi)大量時(shí)間才能完成的處理,提供高速、合理的解決方案?! ☆A(yù)想的適用情況NoSQL數(shù)據(jù)庫(kù)可用于:  取代關(guān)系型數(shù)據(jù)庫(kù)的弱勢(shì)處理(比如大量數(shù)據(jù)的寫(xiě)入處理等)  作為關(guān)系型數(shù)據(jù)庫(kù)之外的另一種選擇NoSQL數(shù)據(jù)庫(kù)雖然可以替關(guān)系型數(shù)據(jù)庫(kù)分擔(dān)一些難題(如大量數(shù)據(jù)的寫(xiě)入等),但這其中的操作具有相當(dāng)?shù)碾y度。因此本書(shū)僅僅將NoSQL定位為“關(guān)系型數(shù)據(jù)庫(kù)之外的另一種選擇”。  讀者對(duì)象  本書(shū)面向的讀者群為有1年關(guān)系型數(shù)據(jù)庫(kù)開(kāi)發(fā)經(jīng)驗(yàn)的軟件工程師和程序員。因?yàn)樗麄儗?duì)數(shù)據(jù)量的增大給關(guān)系型數(shù)據(jù)庫(kù)的檢索和更新處理帶來(lái)的劇烈性能惡化有切身感受,也能更深刻地理解NoSQL數(shù)據(jù)庫(kù)的優(yōu)勢(shì)。  本書(shū)將為讀者介紹NoSQL數(shù)據(jù)庫(kù)以及使用NoSQL數(shù)據(jù)庫(kù)所帶來(lái)的便利?! ”緯?shū)內(nèi)容  本書(shū)共由5章內(nèi)容組成,下面對(duì)各章內(nèi)容做一個(gè)簡(jiǎn)單的介紹?! 〉?章首先介紹什么是NoSQL以及這個(gè)詞的來(lái)源。之后,會(huì)介紹關(guān)系型數(shù)據(jù)庫(kù)的發(fā)展歷史、關(guān)系型數(shù)據(jù)庫(kù)的優(yōu)勢(shì)和不足,以及NoSQL數(shù)據(jù)庫(kù)誕生的背景,以便使讀者了解NoSQL數(shù)據(jù)庫(kù)的發(fā)展歷史。這一章亦會(huì)對(duì)NoSQL數(shù)據(jù)庫(kù)的種類和特征做簡(jiǎn)單講解。同時(shí)闡述“怎么樣才能更好地區(qū)別使用關(guān)系型數(shù)據(jù)庫(kù)和NoSQL數(shù)據(jù)庫(kù)”,為NoSQL數(shù)據(jù)庫(kù)的引入奠定基礎(chǔ)?! 〉?章將會(huì)講述memcached、Tokyo Tyrant、Redis和MongoDB這4種NoSQL數(shù)據(jù)庫(kù),介紹這些NoSQL數(shù)據(jù)庫(kù)各自的使用背景、特征和用例,以及它們的實(shí)際應(yīng)用。通過(guò)本章的介紹,讀者能夠了解NoSQL數(shù)據(jù)庫(kù)的基本使用方法?! 〉?章對(duì)上述4種NoSQL數(shù)據(jù)庫(kù)的應(yīng)用實(shí)例以及實(shí)現(xiàn)代碼進(jìn)行具體的介紹。這一章將使大家對(duì)這4種NoSQL數(shù)據(jù)庫(kù)能解決的具體、實(shí)際的問(wèn)題有所了解,讓NoSQL數(shù)據(jù)庫(kù)成為解決問(wèn)題的選擇之一。雖然本章涉及的各個(gè)實(shí)例都可以用關(guān)系型數(shù)據(jù)庫(kù)來(lái)實(shí)現(xiàn),但是使用NoSQL數(shù)據(jù)庫(kù)能夠獲得更快的響應(yīng),同時(shí)簡(jiǎn)單的操作也給使用者帶來(lái)更大的便利?! 〉?章對(duì)上述4種NoSQL數(shù)據(jù)庫(kù)的性能進(jìn)行比較。本章不僅會(huì)進(jìn)行與基本CRUD處理(創(chuàng)建、檢索、更新、刪除)相關(guān)的性能比較,而且還會(huì)著眼于一些具體實(shí)例,例如像Tokyo Tyrant的addint方法和incr方法的性能比較,Redis的list類型的插入和刪除的性能比較,以及MySQL的join和MongoDB的embed的性能比較等?! 〉?章對(duì)NoSQL數(shù)據(jù)庫(kù)在實(shí)際應(yīng)用中的問(wèn)題點(diǎn),以及HandlerSocket解決方案進(jìn)行介紹。它雖然和NoSQL數(shù)據(jù)庫(kù)略有一點(diǎn)不同,卻是個(gè)非常有意思的解決方案,有利于讀者們開(kāi)闊視野。

內(nèi)容概要

  《NoSQL數(shù)據(jù)庫(kù)入門(mén)》詳細(xì)地介紹了NoSQL數(shù)據(jù)庫(kù)(非關(guān)系型數(shù)據(jù)庫(kù))的種類、用途以及使用方法,并對(duì)memcached、TokyoTyrant、Redis、MongoDB這4種代表性的NoSQL數(shù)據(jù)庫(kù)的特征、適用范圍、實(shí)現(xiàn)代碼進(jìn)行了深入探討,并比較了它們的性能。
  《NoSQL數(shù)據(jù)庫(kù)入門(mén)》適合有關(guān)系型數(shù)據(jù)庫(kù)開(kāi)發(fā)經(jīng)驗(yàn)的軟件工程師和程序員閱讀。

作者簡(jiǎn)介

James Turnbull 開(kāi)源擁躉,Linux Australia前任主席,經(jīng)常在OSCON、Open Source Bridge、
  DevOpsDays等大會(huì)上發(fā)言?,F(xiàn)任職于Puppet Labs。目前已有5本著作,均涉及開(kāi)源軟件。James
  是澳大利亞人,目前居住在美國(guó)奧勒岡州的波特蘭。他的興趣愛(ài)好十分廣泛,包括烹飪、品酒、
  政治理論、新聞攝影以及哲學(xué),最近還加入了波特蘭Timbers協(xié)會(huì)足球隊(duì)。
  Jeffrey McCune Puppet社區(qū)成員,開(kāi)源軟件的支持者,經(jīng)常在蘋(píng)果的世界開(kāi)發(fā)者大會(huì)、Macworld、Open Source Bridge、Velocity等大會(huì)上發(fā)言?,F(xiàn)任職于Puppet Labs,致力于編寫(xiě)代碼和幫助客戶改進(jìn)他們的Puppet部署。Jeff目前居住在奧勒岡州的波特蘭,喜愛(ài)鉆研微控制器、動(dòng)畫(huà)、攝影、音樂(lè),愛(ài)好徒步旅行以及沙灘長(zhǎng)途步行。

書(shū)籍目錄

第1章 NoSQL數(shù)據(jù)庫(kù)的基礎(chǔ)知識(shí) 1
1.1 關(guān)系型數(shù)據(jù)庫(kù)和NoSQL數(shù)據(jù)庫(kù) 2
1.1.1 什么是NoSQL 2
1.1.2 關(guān)系型數(shù)據(jù)庫(kù)簡(jiǎn)史 2
1.1.3 數(shù)據(jù)庫(kù)的分類 3
1.1.4 關(guān)系型數(shù)據(jù)庫(kù)的優(yōu)勢(shì) 5
1.1.5 關(guān)系型數(shù)據(jù)庫(kù)的不足 5
1.1.6 NoSQL數(shù)據(jù)庫(kù) 9
1.2 NoSQL數(shù)據(jù)庫(kù)是什么 12
1.2.1 鍵值存儲(chǔ) 13
1.2.2 面向文檔的數(shù)據(jù)庫(kù) 14
1.2.3 面向列的數(shù)據(jù)庫(kù) 14
1.3 如何導(dǎo)入NoSQL數(shù)據(jù)庫(kù) 16
1.3.1 始終只是其中一種選擇 16
1.3.2 在何種程度上信賴它? 18
第2章 數(shù)據(jù)庫(kù)的種類和特征 19
2.1 memcached(臨時(shí)性鍵值存儲(chǔ)) 20
2.1.1 什么是memcached 20
2.1.2 為什么要使用memcached 20
2.1.3 特征和用例 21
2.1.4 安裝步驟 27
2.1.5 動(dòng)作確認(rèn) 29
2.1.6 各種開(kāi)發(fā)語(yǔ)言需要用到的程序庫(kù) 36
2.1.7 相關(guān)工具 37
2.2 Tokyo Tyrant(永久性鍵值存儲(chǔ)) 44
2.2.1 什么是Tokyo Tyrant 44
2.2.2 為什么要使用Tokyo Tyrant 44
2.2.3 特征和用例 44
2.2.4 安裝步驟 48
2.2.5 動(dòng)作確認(rèn) 50
2.2.6 各種開(kāi)發(fā)語(yǔ)言需要用到的程序庫(kù) 58
2.2.7 相關(guān)工具 58
2.3 Redis(臨時(shí)性/持久性鍵值存儲(chǔ)) 61
2.3.1 什么是Redis 61
2.3.2 為什么要使用Redis 61
2.3.3 特征和用例 67
2.3.4 安裝步驟 71
2.3.5 動(dòng)作確認(rèn) 72
2.3.6 各種開(kāi)發(fā)語(yǔ)言需要用到的程序庫(kù) 81
2.4 MongoDB(面向文檔的數(shù)據(jù)庫(kù)) 82
2.4.1 什么是MongoDB 82
2.4.2 為什么要使用MongoDB 82
2.4.3 特征和用例 84
2.4.4 安裝步驟 87
2.4.5 動(dòng)作確認(rèn) 88
2.4.6 各種開(kāi)發(fā)語(yǔ)言需要用到的程序庫(kù) 100
2.4.7 相關(guān)工具 100
第3章 試用NoSQL數(shù)據(jù)庫(kù) 103
3.1 memcached的具體使用實(shí)例 104
3.1.1 例① 關(guān)系型數(shù)據(jù)庫(kù)的緩存 104
3.1.2 例② 音樂(lè)視聽(tīng)排行網(wǎng)站 112
3.1.3 例③ 外部API的緩存 119
3.2 Tokyo Tyrant的具體使用實(shí)例 120
3.2.1 例① 在每個(gè)頁(yè)面顯示訪問(wèn)量 120
3.3 Redis的具體應(yīng)用實(shí)例 130
3.3.1 例① 時(shí)間線(Time Line)形式的Web應(yīng)用 130
3.3.2 例② 查詢歷史記錄 144
3.4 MongoDB的具體使用實(shí)例 151
3.4.1 例① 問(wèn)卷調(diào)查數(shù)據(jù)的保存 151
3.4.2 例② 解析數(shù)據(jù)的存儲(chǔ) 165
第4章 性能驗(yàn)證 167
4.1 基本的插入和查詢處理的性能 168
4.1.1 假定案例 168
4.1.2 準(zhǔn)備工作 171
4.1.3 插入處理的性能 172
4.1.4 查詢的性能 172
4.2 不同實(shí)例的性能比較 175
4.2.1 Tokyo Tyrant的addint方法和incr方法 175
4.2.2 對(duì)Redis的列表類型的數(shù)據(jù)進(jìn)行添加和刪除 177
4.2.3 MySQL的JOIN和MongoDB的embed 178
第5章 NoSQL化的關(guān)系型數(shù)據(jù)庫(kù) 183
5.1 關(guān)于NoSQL數(shù)據(jù)庫(kù) 184
5.1.1 各種NoSQL數(shù)據(jù)庫(kù)的特征 184
5.1.2 運(yùn)行時(shí)的開(kāi)銷以及經(jīng)驗(yàn)不足的問(wèn)題 185
5.1.3 將MySQL數(shù)據(jù)庫(kù)NoSQL化的方法 185
5.2 嘗試使用HandlerSocket 187
5.2.1 特征 187
5.2.2 為MySQL安裝HandlerSocket 188
5.2.3 動(dòng)作確認(rèn) 191
5.2.4 HandlerSocket的性能 197

章節(jié)摘錄

版權(quán)頁(yè):   插圖:   讓我來(lái)看另外一個(gè)例子,嘗試把MongoDB作為解析數(shù)據(jù)的存儲(chǔ)器,也就是把日志數(shù)據(jù)進(jìn)行解析,然后使用MongoDB來(lái)保存解析結(jié)果。為了檢查服務(wù)的使用情況,提供更好的服務(wù),可以通過(guò)解析日志數(shù)據(jù),獲取PV①和UU②,以及其他各類數(shù)據(jù),這些數(shù)據(jù)應(yīng)該如何保存呢? 使用關(guān)系型數(shù)據(jù)庫(kù) 當(dāng)然使用關(guān)系型數(shù)據(jù)庫(kù)來(lái)管理這些數(shù)據(jù)也不是不可以,但是,對(duì)于分析日志數(shù)據(jù)來(lái)說(shuō),我們并不清楚哪些字段是必須的??赡苡行?shù)據(jù)剛開(kāi)始并不是必須的,但在進(jìn)行某些分析時(shí)就變成必須的了。因此,可以考慮在創(chuàng)建解析用表時(shí)把所有解析數(shù)據(jù)都保存起來(lái),在必要的時(shí)候添加一列,或者把每條解析數(shù)據(jù)保存到單獨(dú)的表中。 如果把解析數(shù)據(jù)全都保存在同一個(gè)表中,每添加一列需要花費(fèi)很多工夫,而且我們還要考慮到,只有在某些特定分析中才用得到的字段會(huì)越來(lái)越多。如果把每條解析數(shù)據(jù)都保存到單獨(dú)的表中,表的數(shù)量就會(huì)在短時(shí)間內(nèi)驟然增加,也很讓人頭疼。 使用MongoDB 這種情況下嘗試MongoDB不失為明智之選。解析日志數(shù)據(jù)的時(shí)候會(huì)得到各種各樣的數(shù)據(jù),若使用MongoDB便可以不用考慮表結(jié)構(gòu)的問(wèn)題,直接把所有數(shù)據(jù)都保存下來(lái)即可。需要添加新數(shù)據(jù)的時(shí)候,也無(wú)需變更表結(jié)構(gòu),直接就能進(jìn)行添加,這就是使用MongoDB的好處。對(duì)于那些以后可能會(huì)用到的臨時(shí)數(shù)據(jù),保存起來(lái)也很簡(jiǎn)單。

編輯推薦

1、了解當(dāng)今最炙手可熱的NoSQL新型數(shù)據(jù)庫(kù)技術(shù);2、介紹memcached、Tokyo Tyrant、Redis、MongoDB這四種代表性的NoSQL數(shù)據(jù)庫(kù)

圖書(shū)封面

圖書(shū)標(biāo)簽Tags

無(wú)

評(píng)論、評(píng)分、閱讀與下載


    NoSQL數(shù)據(jù)庫(kù)入門(mén) PDF格式下載


用戶評(píng)論 (總計(jì)64條)

 
 

  •   NoSQL是熱門(mén)的技術(shù),本書(shū)是一本非常好的NoSQL入門(mén)資料,強(qiáng)烈推薦!
  •   NoSQL的經(jīng)典入門(mén)書(shū)
  •   nosql入門(mén)書(shū),不錯(cuò)
  •   數(shù)據(jù)庫(kù)的教程,挺新的,也比較有條理,自學(xué)看看挺好!
  •   補(bǔ)充一下新近流行的文檔數(shù)據(jù)庫(kù)知識(shí)
  •   剛剛讀完一遍,講解了memcache,redis,mongodb. 看看入門(mén)不錯(cuò).
  •   怎么說(shuō)呢,當(dāng)了解入門(mén)看吧
  •   不錯(cuò),入門(mén)值得看
  •   很基礎(chǔ),分析得很清晰。入門(mén)級(jí)別非常易讀,很受益。
  •   很開(kāi)闊研究,對(duì)熟悉一下另類的數(shù)據(jù)系統(tǒng)很有幫助
  •   啟蒙,想深入,好像還沒(méi)啥好的書(shū)出現(xiàn)。
  •   寫(xiě)的很不錯(cuò),很詳細(xì),正在研究中,很有用處
  •   書(shū)不錯(cuò),對(duì)我有很大幫助
  •   我真的是一條默認(rèn)好評(píng)
  •   還沒(méi)有讀,但是我覺(jué)得這應(yīng)該是一本很有必要的看的書(shū)!
  •   朋友推薦的,很實(shí)用,剛剛看了一部分,特別不粗
  •   書(shū)還不錯(cuò),慢慢看吧
  •   送貨很快,灰常不錯(cuò)
  •   挺新的,也比較有條理,自學(xué)看看挺好!
  •   db的選擇 確定的研發(fā)的思路
  •   瀏覽了一下,挺全面的
  •   容易理解,很精辟!
  •   這本書(shū)寫(xiě)的不錯(cuò)。可惜自己沒(méi)有這么多服務(wù)器測(cè)試。先學(xué)習(xí)了。
  •   送貨速度挺快的...書(shū)的內(nèi)容也很值得看...
  •   還不錯(cuò),感覺(jué)不錯(cuò)
  •   自己一直對(duì)數(shù)據(jù)庫(kù)較感興趣,該書(shū)涉及了NOSQL技術(shù)及數(shù)據(jù)庫(kù),有一定參考價(jià)值,但是書(shū)很薄,不夠深入。
  •   這本書(shū)簡(jiǎn)單介紹了nosql的數(shù)據(jù)庫(kù),對(duì)于初學(xué)者來(lái)說(shuō)是很不錯(cuò)的
  •   這是最新的技術(shù),我原本是在論壇上看到這個(gè)的,因?yàn)樽罱麺ySql的占有率在下降,但是NoSql一直在上升,而且在開(kāi)源市場(chǎng)MySql下降多少,NoSql就上升多少。由于本書(shū)是33.8,當(dāng)當(dāng)網(wǎng)是滿29就不收郵費(fèi),很實(shí)惠。省了五塊錢(qián),在京東和淘寶都要另加五塊錢(qián)運(yùn)費(fèi)。
  •   書(shū)很薄啊,只是對(duì)幾種nosql簡(jiǎn)要的介紹,就是入門(mén)級(jí),了解一下nosql,還沒(méi)深入看,只是翻了翻,不過(guò)很是值得看的
  •   NoSQL應(yīng)用前景廣闊
  •   是一本入門(mén)級(jí)的好書(shū),把各種數(shù)據(jù)庫(kù)的關(guān)系講的都很清晰,價(jià)格也挺合理的!
  •   入門(mén)可以,想要提高還得看更多的如mongoDB之類的書(shū)籍
  •   正在看,比較入門(mén)
  •   還是可以借鑒的 作為入門(mén)級(jí)的書(shū)還可以
  •   書(shū)很薄 但講的東西很多 都是比較實(shí)用的技術(shù)
  •   書(shū)寫(xiě)的比較簡(jiǎn)單,都是些跟蹤技術(shù)方面的東西
  •   發(fā)現(xiàn)日本人的書(shū)有個(gè)特點(diǎn):經(jīng)常比較淺,很多都是介紹性的,淺顯易懂的東西,文化問(wèn)題?
  •   剛收到貨,大致翻了下,適合普及概念知識(shí)
  •   用平實(shí)的語(yǔ)言描述了新技術(shù),值得一看
  •   不算的書(shū),但是遺憾的是用Ruby寫(xiě)的
  •   可以 沒(méi)有驚喜 但還不錯(cuò)
  •   翻了一下,內(nèi)容還不錯(cuò),只是薄了一點(diǎn)兒
  •   還沒(méi)到手,估計(jì)不錯(cuò)!
  •   購(gòu)買本書(shū)的讀者一定請(qǐng)注意書(shū)中的例子都用Ruby寫(xiě)的,對(duì)于不熟悉Ruby的人在案例理解與應(yīng)用上會(huì)存在一些障礙。但本書(shū)對(duì)NoSQL的基本概念與相關(guān)數(shù)據(jù)庫(kù)內(nèi)容介紹簡(jiǎn)單明了,比較適合想了解NoSQL的入門(mén)者。
  •   太淺了,入門(mén)不錯(cuò),但是也太入門(mén)了
  •   還沒(méi)看,但好像太薄。
  •   本想買一本偏重原理的書(shū),沒(méi)想到也是偏向具體操作應(yīng)用。
  •   一般。。。。。。。。。。。一般。。。。。。。。。。。
  •   入門(mén)書(shū)籍,翻譯錯(cuò)誤較多
  •   想學(xué)習(xí)NOSQL的人還是可以看看
  •   一本書(shū)介紹了幾個(gè)NoSQL數(shù)據(jù)庫(kù),都是走馬觀花
  •   使用ruby和python去講解了很多內(nèi)容,對(duì)于想要入門(mén)或簡(jiǎn)單了解下NOSQL的絕對(duì)是一本經(jīng)典的好書(shū)。
  •   未能羅列部分章節(jié)內(nèi)容、不了解內(nèi)容,購(gòu)買之后,發(fā)現(xiàn)不能針對(duì)性學(xué)習(xí)。
  •   講的比較亂,又不夠深入
  •   書(shū)講的很詳細(xì),看后對(duì)Nosql的那些數(shù)據(jù)庫(kù)都了解了很多!對(duì)我收獲不??!值得初學(xué)者入手!
  •   簡(jiǎn)單介紹了nosql
  •   全書(shū)基本是在centos+ruby環(huán)境下,不懂ruby的也無(wú)所謂,大體能看懂;看完后對(duì)流行的幾個(gè)nosql數(shù)據(jù)庫(kù)有個(gè)基本的認(rèn)識(shí);
  •   我給這本書(shū)打了2顆星,說(shuō)說(shuō)我給出此評(píng)價(jià)的原因。1.首先從內(nèi)容上說(shuō)這本書(shū)總體介紹了memcached、Tokyo Tyrant、Redis、MongoDB,此書(shū)滿打滿算199頁(yè),所以對(duì)各項(xiàng)技術(shù)也只是介紹性的講解,不要指望有多深的經(jīng)驗(yàn)之談;... 閱讀更多
  •   此書(shū)沒(méi)有深入nosql,不過(guò)對(duì)不同的nosql的存儲(chǔ)機(jī)制以及性能介紹的還是比較全面如果想了解nosql此書(shū)是一個(gè)不錯(cuò)選擇
  •   NoSQL數(shù)據(jù)庫(kù)入門(mén)
  •   已經(jīng)第三次購(gòu)買了,幫朋友買的
  •   NOSQL數(shù)據(jù)庫(kù)的普及技術(shù)書(shū),可以翻翻看看
  •   總的來(lái)說(shuō)籠統(tǒng)
  •   還行吧!!!!!
 

250萬(wàn)本中文圖書(shū)簡(jiǎn)介、評(píng)論、評(píng)分,PDF格式免費(fèi)下載。 第一圖書(shū)網(wǎng) 手機(jī)版

京ICP備13047387號(hào)-7