NoSQL精粹

出版時間:2013-8-1  出版社:機(jī)械工業(yè)出版社  作者:[美]Pramod J. Sadalage,[美]Martin Fowler  譯者:愛飛翔  
Tag標(biāo)簽:無  

內(nèi)容概要

《NoSQL精粹》為考慮是否可以使用和如何使用NoSQL數(shù)據(jù)庫的企業(yè)提供了可靠的決策依據(jù)。它由世界級軟件開發(fā)大師和軟件開發(fā)“教父”Martin Fowler與Jolt生產(chǎn)效率大獎圖書作者Pramod J. Sadalage共同撰寫。書中全方位比較了關(guān)系型數(shù)據(jù)庫與NoSQL數(shù)據(jù)庫的異同;分別以Riak、MongoDB、Cassandra和Neo4J為代表,詳細(xì)講解了鍵值數(shù)據(jù)庫、文檔數(shù)據(jù)庫、列族數(shù)據(jù)庫和圖數(shù)據(jù)庫這4大類NoSQL數(shù)據(jù)庫的優(yōu)劣勢、用法和適用場合;深入探討了實(shí)現(xiàn)NoSQL數(shù)據(jù)庫系統(tǒng)的各種細(xì)節(jié),以及與關(guān)系型數(shù)據(jù)庫的混用。
全書分為兩部分,共15章:第一部分(第1~7章)主要講述NoSQL的核心概念。其中第1章解釋了NoSQL發(fā)展迅速的原因;第2章描述了在NoSQL領(lǐng)域的三種主要的數(shù)據(jù)模型中如何體現(xiàn)“聚合”這一概念;第3章介紹了聚合的缺點(diǎn);第4章描述了數(shù)據(jù)庫如何在集群中分布數(shù)據(jù);第5章論及了更新與讀取操作對一致性的影響;第6章討論了版本戳;第7章描述了適合用在NoSQL系統(tǒng)中的“映射-化簡”操作。第二部分(第8~15章)講述了如何實(shí)現(xiàn)NoSQL數(shù)據(jù)庫系統(tǒng)。其中第8章~第11章每章各以一種NoSQL數(shù)據(jù)庫為例,演示了如何實(shí)現(xiàn)第一部分介紹的概念;第12章解釋了數(shù)據(jù)如何在強(qiáng)模式系統(tǒng)與無模式系統(tǒng)之間遷移;第13章著眼于混合持久化領(lǐng)域的趨勢;第14章探討了在混合持久化領(lǐng)域中會考慮到的其他一些技術(shù);第15章提供了選擇數(shù)據(jù)庫時可以參考的一些建議。

作者簡介

Pramod J. Sadalage,ThoughtWorks公司首席顧問,致力于消弭數(shù)據(jù)庫專業(yè)人員與應(yīng)用程序開發(fā)者之間的鴻溝,他在這一鮮有人問津的領(lǐng)域中獨(dú)享其樂。Sadalage先生經(jīng)常接受客戶咨詢,為他們所面臨的那些依賴新工藝、新科技,且極有挑戰(zhàn)性的數(shù)據(jù)需求出謀劃策。他研發(fā)出一項(xiàng)前沿技術(shù),以受版本控制的數(shù)據(jù)遷移操作漸進(jìn)地設(shè)計關(guān)系型數(shù)據(jù)庫。Sadalage先生與Scott Ambler先生合著的《數(shù)據(jù)庫重構(gòu)》一書榮獲2007年Jolt生產(chǎn)效率大獎。
Martin Fowler,世界級軟件開發(fā)大師,軟件開發(fā)“教父”,敏捷開發(fā)方法的創(chuàng)始人之一,在面向?qū)ο蠓治雠c設(shè)計、UML、模式、極限編程、重構(gòu)和DSL等領(lǐng)域都有非常深入的研究,并為軟件開發(fā)行業(yè)做出了卓越貢獻(xiàn)。他樂于分享,撰寫了《企業(yè)應(yīng)用架構(gòu)模式》(榮獲2003年Jolt生產(chǎn)效率大獎)、《重構(gòu):改善既有代碼的設(shè)計》、《分析模式:可復(fù)用的對象模型》、《UML精粹:標(biāo)準(zhǔn)對象建模語言簡明指南》、《領(lǐng)域特定語言》等在軟件開發(fā)領(lǐng)域頗負(fù)盛名的著作。
譯者簡介
愛飛翔,資深軟件開發(fā)工程師,擅長Web開發(fā)、移動開發(fā)和游戲開發(fā),有10余年開發(fā)經(jīng)驗(yàn),曾主導(dǎo)和參與了多個手機(jī)游戲和手機(jī)軟件項(xiàng)目的開發(fā),經(jīng)驗(yàn)十分豐富。他是手機(jī)軟件開發(fā)引擎AgileMobileEngine的創(chuàng)始人兼項(xiàng)目經(jīng)理,同時也是CatEngine手機(jī)游戲開發(fā)引擎的聯(lián)合創(chuàng)始人兼代碼維護(hù)員。他對極限編程、設(shè)計模式、重構(gòu)、測試驅(qū)動開發(fā)、敏捷軟件開發(fā)等也有較深入的研究,目前負(fù)責(zé)敏捷移動開發(fā)網(wǎng)(http://www.agilemobidev.com/)的運(yùn)營。業(yè)余愛好文學(xué)和歷史,有一定的文學(xué)造詣。翻譯并出版了《Android游戲開發(fā)實(shí)踐指南》、《測試驅(qū)動的iOS開發(fā)》、《HTML5 Canvas核心技術(shù):圖形、動畫與游戲開發(fā)》和《JavaScript應(yīng)用開發(fā)實(shí)踐指南》等書。

書籍目錄

譯者序
前言
第一部分 概 念
第1章 為什么使用NoSQL
1.1 關(guān)系型數(shù)據(jù)庫的價值
1.1.1 獲取持久化數(shù)據(jù)
1.1.2 并發(fā)
1.1.3 集成
1.1.4 近乎標(biāo)準(zhǔn)的模型
1.2 阻抗失諧
1.3 “應(yīng)用程序數(shù)據(jù)庫”與“集成數(shù)據(jù)庫”
1.4 蜂擁而來的集群
1.5 NoSQL登場
1.6 要點(diǎn)
第2章 聚合數(shù)據(jù)模型
2.1 聚合
2.1.1 關(guān)系模型與聚合模型示例
2.1.2 面向聚合的影響
2.2 鍵值數(shù)據(jù)模型與文檔數(shù)據(jù)模型
2.3 列族存儲
2.4 面向聚合數(shù)據(jù)庫總結(jié)
2.5 延伸閱讀
2.6 要點(diǎn)
第3章 數(shù)據(jù)模型詳解
3.1 關(guān)系
3.2 圖數(shù)據(jù)庫
3.3 無模式數(shù)據(jù)庫
3.4 物化視圖
3.5 構(gòu)建數(shù)據(jù)存取模型
3.6 要點(diǎn)
第4章 分布式模型
4.1 單一服務(wù)器
4.2 分片
4.3 主從復(fù)制
4.4 對等復(fù)制
4.5 結(jié)合“分片”與“復(fù)制”技術(shù)
4.6 要點(diǎn)
第5章 一致性
5.1 更新一致性
5.2 讀取一致性
5.3 放寬“一致性”約束
5.4 放寬“持久性”約束
5.5 仲裁
5.6 延伸閱讀
5.7 要點(diǎn)
第6章 版本戳
6.1 “商業(yè)事務(wù)”與“系統(tǒng)事務(wù)”
6.2 在多節(jié)點(diǎn)環(huán)境中生成版本戳
6.3 要點(diǎn)
第7章 映射-化簡
7.1 基本“映射-化簡”
7.2 分區(qū)與歸并
7.3 組合“映射-化簡”計算
7.3.1 舉例說明兩階段“映射-化簡”
7.3.2 增量式“映射-化簡”
7.4 延伸閱讀
7.5 要點(diǎn)
第二部分 實(shí) 現(xiàn)
第8章 鍵值數(shù)據(jù)庫
8.1 何謂“鍵值數(shù)據(jù)庫”
8.2 鍵值數(shù)據(jù)庫特性
8.2.1 一致性
8.2.2 事務(wù)
8.2.3 查詢功能
8.2.4 數(shù)據(jù)結(jié)構(gòu)
8.2.5 可擴(kuò)展性
8.3 適用案例
8.3.1 存放會話信息
8.3.2 用戶配置信息
8.3.3 購物車數(shù)據(jù)
8.4 不適用場合
8.4.1 數(shù)據(jù)間關(guān)系
8.4.2 含有多項(xiàng)操作的事務(wù)
8.4.3 查詢數(shù)據(jù)
8.4.4 操作關(guān)鍵字集合
第9章 文檔數(shù)據(jù)庫
9.1 何謂文檔數(shù)據(jù)庫
9.2 特性
9.2.1 一致性
9.2.2 事務(wù)
9.2.3 可用性
9.2.4 查詢功能
9.2.5 可擴(kuò)展性
9.3 適用案例
9.3.1 事件記錄
9.3.2 內(nèi)容管理系統(tǒng)及博客平臺
9.3.3 網(wǎng)站分析與實(shí)時分析
9.3.4 電子商務(wù)應(yīng)用程序
9.4 不適用場合
9.4.1 包含多項(xiàng)操作的復(fù)雜事務(wù)
9.4.2 查詢持續(xù)變化的聚合結(jié)構(gòu)
第10章 列族數(shù)據(jù)庫
10.1 何謂列族數(shù)據(jù)庫
10.2 特性
10.2.1 一致性
10.2.2 事務(wù)
10.2.3 可用性
10.2.4 查詢功能
10.2.5 可擴(kuò)展性
10.3 適用案例
10.3.1 事件記錄
10.3.2 內(nèi)容管理系統(tǒng)與博客平臺
10.3.3 計數(shù)器
10.3.4 限期使用
10.4 不適用場合
第11章 圖數(shù)據(jù)庫
11.1 何謂圖數(shù)據(jù)庫
11.2 特性
11.2.1 一致性
11.2.2 事務(wù)
11.2.3 可用性
11.2.4 查詢功能
11.2.5 可擴(kuò)展性
11.3 適用案例
11.3.1 互聯(lián)數(shù)據(jù)
11.3.2 安排運(yùn)輸路線、分派貨物和基于位置的服務(wù)
11.3.3 推薦引擎
11.4 不適用場合
第12章 模式遷移
12.1 模式變更
12.2 變更關(guān)系型數(shù)據(jù)庫的模式
12.2.1 遷移全新項(xiàng)目
12.2.2 遷移既有項(xiàng)目
12.3 變更NoSQL數(shù)據(jù)庫的模式
12.3.1 增量遷移
12.3.2 遷移圖數(shù)據(jù)庫的模式
12.3.3 改變聚合結(jié)構(gòu)
12.4 延伸閱讀
12.5 要點(diǎn)
第13章 混合持久化
13.1 各異的數(shù)據(jù)存儲需求
13.2 混用各類數(shù)據(jù)庫
13.3 將直接數(shù)據(jù)庫操作封裝為服務(wù)
13.4 擴(kuò)展數(shù)據(jù)庫以增強(qiáng)其功能
13.5 選用合適的數(shù)據(jù)庫技術(shù)
13.6 企業(yè)使用混合持久化技術(shù)時的考量
13.7 部署復(fù)雜度
13.8 要點(diǎn)
第14章 超越NoSQL
14.1 文件系統(tǒng)
14.2 事件溯源
14.3 內(nèi)存映像
14.4 版本控制
14.5 XML數(shù)據(jù)庫
14.6 對象數(shù)據(jù)庫
14.7 要點(diǎn)
第15章 選擇合適的數(shù)據(jù)庫
15.1 程序員的工作效率
15.2 數(shù)據(jù)訪問性能
15.3 繼續(xù)沿用默認(rèn)的關(guān)系型數(shù)據(jù)庫
15.4 抽離數(shù)據(jù)庫策略以降低風(fēng)險
15.5 要點(diǎn)
15.6 結(jié)語
參考資料

圖書封面

圖書標(biāo)簽Tags

評論、評分、閱讀與下載


    NoSQL精粹 PDF格式下載


用戶評論 (總計0條)

 
 

 

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

京ICP備13047387號-7