注冊 | 登錄讀書好,好讀書,讀好書!
讀書網-DuShu.com
當前位置: 首頁出版圖書科學技術計算機/網絡數據庫Oracle深入NoSQL:全面展示NoSQL基礎概念和實踐方案

深入NoSQL:全面展示NoSQL基礎概念和實踐方案

深入NoSQL:全面展示NoSQL基礎概念和實踐方案

定 價:¥690.00

作 者: (印) Shashank Tiwari 巨成
出版社: 人民郵電出版社
叢編項:
標 簽: Oracle

購買這本書可以去


ISBN: 9787115296382 出版時間: 2012-10-26 包裝: 平裝
開本: 16開 頁數: 字數:  

內容簡介

  NoSQL數據庫是非常高效、強大的海量數據存儲與處理工具。大部分NoSQL數據庫都能很好地適應數據增長,并且能靈活適應半結構化數據和稀疏數據集。這本上手指南全面展示了NoSQL數據庫的基礎概念和實踐方案?!渡钊隢oSQL》作者、專家Shashank Tiwari首先介紹NoSQL的特點和典型用例,再分析NoSQL適用于應用程序棧的什么位置。他獨到的見解能幫助你針對特定的數據存儲需求選擇最適合的NoSQL方案。 《深入NoSQL》主要內容包括: 揭示NoSQL數據庫的關鍵概念,包括列族存儲、鍵/值存儲以及文檔數據庫; 深入介紹NoSQL產品及Hadoop產品族的安裝與配置; 解釋存儲、訪問和查詢NoSQL數據的方法,使用到的產品包括MongoDB、HBase、Cassandra、Redis、CouchDB、Google App Engine等; 檢視架構和內部結構; 提供最佳實踐以及性能調優(yōu)和擴展配置方面的指導; 展示一系列與NoSQL、分布式平臺及大規(guī)模處理相關的工具,包括Hive、Pig、RRDtool、Nagios等。

作者簡介

  Shashank Tiwari創(chuàng)業(yè)者、開發(fā)者、技術作家、演講者和導師,技術型創(chuàng)業(yè)公司Treasury ofIdeas(www.treasuryofideas.com)的創(chuàng)始人。他是一位經驗豐富的軟件開發(fā)者和企業(yè)家,長期關注高性能應用、分析、Web應用以及移動平臺,對數據可視化和統計機器學習有著濃厚的興趣,喜歡喝咖啡、吃甜點、騎自行車。他撰寫了許多技術文章和著作,并且應邀在全球各地的技術會議上進行演講。

圖書目錄


目    錄
 
第一部分  NoSQL入門
第1章  NoSQL的概念及適用范圍  2
1.1  定義和介紹  3
1.1.1  背景與歷史  3
1.1.2  大數據  5
1.1.3  可擴展性  7
1.1.4  MapReduce  8
1.2  面向列的有序存儲  9
1.3  鍵/值存儲  11
1.4  文檔數據庫  14
1.5  圖形數據庫  15
1.6  小結  16
第2章  NoSQL上手初體驗  17
2.1  第一印象——兩個簡單的例子  17
2.1.1  簡單的位置偏好數據集  17
2.1.2  存儲汽車品牌和型號數據  22
2.2  使用多種語言  30
2.2.1  MongoDB驅動  30
2.2.2  初識Thrift  33
2.3  小結  34
第3章  NoSQL接口與交互  36
3.1  沒了SQL還剩什么  36
3.1.1  存儲和訪問數據  37
3.1.2  MongoDB數據存儲與訪問  37
3.1.3  MongoDB數據查詢  41
3.1.4  Redis數據存儲與訪問  43
3.1.5  Redis數據查詢  47
3.1.6  HBase數據存儲與訪問  50
3.1.7  HBase數據查詢  52
3.1.8  Apache Cassandra數據存儲與訪問  54
3.1.9  Apache Cassandra數據查詢  55
3.2  NoSQL數據存儲的語言綁定  56
3.2.1  Thrift  56
3.2.2  Java  56
3.2.3  Python  58
3.2.4  Ruby  59
3.2.5  PHP  59
3.3  小結  60
第二部分  NoSQL基礎
第4章  理解存儲架構  62
4.1  使用面向列的數據庫  63
4.1.1  使用關系型數據庫中的表格和列  63
4.1.2  列數據庫對比RDBMS  65
4.1.3  列數據庫當做鍵/值對的嵌套映射表  67
4.1.4  Webtable布局  70
4.2  HBase分布式存儲架構  71
4.3  文檔存儲內部機制  73
4.3.1  用內存映射文件存儲數據  74
4.3.2  MongoDB集合和索引使用指南  75
4.3.3  MongoDB的可靠性和耐久性  75
4.3.4  水平擴展  76
4.4  鍵/值存儲Memcached和Redis  78
4.4.1  Memcached的內部結構  78
4.4.2  Redis的內部結構  79
4.5  最終一致性非關系型數據庫  80
4.5.1  一致性哈?! ?1
4.5.2  對象版本  82
4.5.3  閑話協議和提示移交  83
4.6  小結  83
第5章  執(zhí)行CRUD操作  84
5.1  創(chuàng)建記錄  84
5.1.1  在以文檔為中心的數據庫中創(chuàng)建記錄  85
5.1.2  面向列數據庫的創(chuàng)建操作  91
5.1.3  鍵/值映射表的創(chuàng)建操作  93
5.2  訪問數據  96
5.2.1  用MongoDB訪問文檔  96
5.2.2  用HBase訪問數據  97
5.2.3  查詢Redis  98
5.3  更新和刪除數據  98
5.3.1  使用MongoDB、HBase和Redis更新及修改數據  98
5.3.2  有限原子性和事務完整性  99
5.4  小結  100
第6章  查詢NoSQL存儲  101
6.1  SQL與MongoDB查詢功能的相似點  101
6.1.1  加載MovieLens數據  103
6.1.2  MongoDB中的MapReduce  108
6.2  訪問HBase等面向列數據庫中的數據  111
6.3  查詢Redis數據存儲  113
6.4  小結  116
第7章  修改數據存儲及管理演進  117
7.1  修改文檔數據庫  117
7.1.1  弱schema的靈活性  120
7.1.2  MongoDB的數據導入與導出  121
7.2  面向列數據庫中數據schema的演進  124
7.3  HBase數據導入與導出  125
7.4  鍵/值存儲中的數據演變  126
7.5  小結  126
第8章  數據索引與排序  127
8.1  數據庫索引的基本概念  127
8.2  MongoDB的索引與排序  128
8.3  MongoDB里創(chuàng)建和使用索引  131
8.3.1  組合與嵌套鍵  136
8.3.2  創(chuàng)建唯一索引和稀疏索引  138
8.3.3  基于關鍵字的搜索和多重鍵  139
8.4  CouchDB的索引與排序  140
8.5  Apache Cassandra的索引與排序  141
8.6  小結  143
第9章  事務和數據完整性的管理  144
9.1  RDBMS和ACID  144
9.2  分布式ACID系統  147
9.2.1  一致性  149
9.2.2  可用性  149
9.2.3  分區(qū)容忍性  149
9.3  維持CAP  151
9.3.1  妥協可用性  153
9.3.2  妥協分區(qū)容忍性  153
9.3.3  妥協一致性  154
9.4  NoSQL產品的一致性實現  155
9.4.1  MongoDB的分布一致性  155
9.4.2  CouchDB的最終一致性  155
9.4.3  Apache Cassandra的最終一致性  156
9.4.4  Membase的一致性  157
9.5  小結  157
第三部分  熟悉NoSQL
第10章  使用云中的NoSQL  160
10.1  Google App Engine  161
10.1.1  GAE Python SDK:安裝、設置和起步  161
10.1.2  使用Python進行基本的GAE數據建模  165
10.1.3  查詢與索引  168
10.1.4  過濾和結果排序  170
10.1.5  Java App Engine SDK  172
10.2  Amazon SimpleDB  175
10.2.1  SimpleDB入門  176
10.2.2  使用REST API  178
10.2.3  使用Java訪問SimpleDB  181
10.2.4  通過Ruby和Python使用SimpleDB  182
10.3  小結  183
第11章  MapReduce可擴展并行處理  185
11.1  理解MapReduce  186
11.1.1  找出每股最高價  188
11.1.2  加載歷史NYSE市場數據到CouchDB  189
11.2  MapReduce和HBase  192
11.3  MapReduce和Apache Mahout  196
11.4  小結  197
第12章  使用Hive分析大數據  199
12.1  Hive基礎  199
12.2  回到電影評分  203
12.3  親切的SQL  209
12.4  HiveQL連接  211
12.4.1  計劃解釋  213
12.4.2  分區(qū)表  215
12.5  小結  215
第13章  綜覽數據庫內部  216
13.1  MongoDB內部  217
13.1.1  MongoDB傳輸協議  218
13.1.2  插入文檔  219
13.1.3  查詢集合  219
13.1.4  MongoDB數據庫文件  220
13.2  Membase架構  222
13.3  Hypertable底層  224
13.3.1  正則表達式支持  224
13.3.2  布隆過濾器  224
13.4  Apache Cassandra  225
13.4.1  點對點模型  225
13.4.2  基于Gossip和Antientropy  225
13.4.3  快速寫  226
13.4.4  提示移交  226
13.5  Berkeley DB  226
13.6  小結  228
第四部分  掌握NoSQL
第14章  選擇NoSQL  230
14.1  比較NoSQL產品  230
14.1.1  可擴展性  230
14.1.2  事務完整性和一致性  233
14.1.3  數據模型  233
14.1.4  查詢支持  235
14.1.5  接口可用性  236
14.2  性能測試  237
14.2.1  50/50的讀和更新  237
14.2.2  95/5的讀和更新  237
14.2.3  掃描  238
14.2.4  可擴展性測試  238
14.2.5  Hypertable測試  238
14.3  背景比較  239
14.4  小結  240
第15章  共存  241
15.1  MySQL用作NoSQL  241
15.2  靜態(tài)數據存儲  244
15.2.1  存儲多元化在Facebook中的應用  245
15.2.2  數據倉庫和商業(yè)智能  246
15.3  Web框架和NoSQL  247
15.3.1  Rails和NoSQL  247
15.3.2  Django和NoSQL  248
15.3.3  使用Spring Data  250
15.4  從RDBMS遷移到NoSQL  254
15.5  小結  254
第16章  性能調?! ?56
16.1  并行算法的目標  256
16.1.1  減少延遲的含義  256
16.1.2  如何增加吞吐  257
16.1.3  線性擴展  257
16.2  公式與模型  257
16.2.1  Amdahl法則  257
16.2.2  Little法則  258
16.2.3  消息成本模型  259
16.3  分區(qū)  259
16.4  規(guī)劃異構環(huán)境  260
16.5  其他MapReduce調?! ?61
16.5.1  通信成本  261
16.5.2  壓縮  261
16.5.3  文件塊大小  261
16.5.4  并行復制  262
16.6  HBase Coprocessor  262
16.7  布隆過濾器  262
16.8  小結  262
第17章  工具和實用程序  263
17.1  RRDTool  263
17.2  Nagios  265
17.3  Scribe  266
17.4  Flume  267
17.5  Chukwa  267
17.6  Pig  268
17.6.1  使用Pig  269
17.6.2  Pig Latin基礎  269
17.7  Nodetool  271
17.8  OpenTSDB  272
17.9  SOLANDRA  273
17.10  Hummingbird和C5T  274
17.11  GeoCouch  275
17.12  Alchemy Database  276
17.13  Webdis  276
17.14  小結  276
附錄A  安裝與配置  278

本目錄推薦

掃描二維碼
Copyright ? 讀書網 www.shuitoufair.cn 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網安備 42010302001612號