Cassandra權威指南

Cassandra權威指南
定價:354
NT $ 308
  • 作者:(美)休伊特
  • 譯者:王旭
  • 出版社:人民郵電出版社
  • 出版日期:2011-08-01
  • 語言:簡體中文
  • ISBN10:7115258546
  • ISBN13:9787115258540
  • 裝訂:平裝 / 280頁 / 普通級 / 單色印刷 / 初版
 

內容簡介

本書是一本廣受好評的Cassandra圖書。與傳統的關系型數據庫不同,Cassandra是一種開源的分布式存儲系統。書中介紹了它無中心架構、高可用、無縫擴展等引人注目的特點,講述了如何安裝、配置Cassandra及如何在其上運行實例,還介紹了對它的監控、維護和性能調優手段,同時還涉及了Cassandra相關的集成工具Hadoop及其類似的其他NoSQL數據庫。

本書適合數據庫開發人員與網站開發者閱讀。
 

目錄

譯者序 XIII
序 XV
前言 XVII
第1章 Cassandra概況
1.1 關系型數據庫有什麼問題
1.2 關系型數據庫簡單回顧
1.2.1 RDBMS︰出類拔萃與表現平平
1.2.2 互聯網的規模
1.3 Cassandra的電梯間演講
1.3.1 50個字介紹Cassandra
1.3.2 分布式與無中心
1.3.3 彈性可擴展
1.3.4 高可用與容錯
1.3.5 可調節的一致性
1.3.6 Brewer的CAP理論
1.3.7 面向行
1.3.8 無schema
1.3.9 高性能
1.4 Cassandra來自何方
1.5 Cassandra的應用場景
1.5.1 大規模部署
1.5.2 寫密集、統計和分析型工作
1.5.3 地區分布
1.5.4 變化的應用
1.6 誰在使用Cassandra
1.7 小結
第2章 安裝Cassandra
2.1 安裝二進制包
2.1.1 解壓縮
2.1.2 里面有什麼
2.2 從源碼編譯
2.2.1 其他編譯目標
2.2.2 使用Maven編譯
2.3 運行Cassandra
2.3.1 在Windows平台上運行Cassandra
2.3.2 在Linux下運行Cassandra
2.3.3 啟動服務器
2.4 使用命令行界面的客戶端
2.5 基本命令行命令
2.5.1 幫助
2.5.2 連接服務器
2.5.3 描述環境
2.5.4 創建keyspace和列族
2.5.5 讀寫數據
2.6 小結
第3章 Cassandra的數據模型
3.1 關系型數據模型
3.2 簡介
3.3 集群
3.4 keyspace
3.5 列族
3.6 列
3.6.1 寬行與窄行
3.6.2 列的排序
3.7 超級列
3.8 Cassandra與RDBMS的設計差別
3.8.1 沒有查詢語言
3.8.2 沒有引用完整性
3.8.3 第二索引
3.8.4 排序成為一種設計決策
3.8.5 反範式化
3.9 設計模式
3.9.1 具體化視圖
3.9.2 無值列
3.9.3 聚合鍵
3.10 需要記住的幾件事
3.11 小結
第4章 應用實例
4.1 數據模型設計
4.2 酒店應用的關系型數據庫設計
4.3 酒店應用的Cassandra設計
4.4 酒店應用代碼
4.4.1 創建數據庫
4.4.2 數據結構
4.4.3 進行連接
4.4.4 預裝填數據庫
4.4.5 搜索應用
4.5 Twissandra
4.6 小結
第5章 Cassandra的架構
5.1 system keyspace
5.2 對等結構
5.3 gossip與故障檢測
5.4 逆熵與讀修復
5.5 memtable、SSTable和commit log
5.6 提示移交
5.7 壓緊
5.8 Bloom filter
5.9 墓碑
5.10 分階段事件驅動架構
5.11 管理器與服務
5.11.1 Cassandra守護進程
5.11.2 存儲服務
5.11.3 消息服務
5.11.4 提示移交管理器
5.12 小結
第6章 配置Cassandra
6.1 keyspace
6.1.1 創建列族
6.1.2 從0.6遷移到0.7
6.2 副本
6.3 副本放置策略
6.3.1 簡單策略
6.3.2 舊網絡拓撲策略
6.3.3 網絡拓撲策略
6.4 副本因子
6.5 分區器
6.5.1 隨機分區器
6.5.2 有序分區器
6.5.3 配頁有序分區器
6.5.4 字節序分區器
6.6 Snitch
6.6.1 Simple Snitch
6.6.2 PropertyFileSnitch
6.7 創建集群
6.7.1 修改集群名稱
6.7.2 給集群增加節點
6.7.3 多種子節點
6.8 動態加入環
6.9 安全
6.9.1 使用SimpleAuthenticator
6.9.2 編程鑒權
6.9.3 使用MD5加密
6.9.4 提供你自己的鑒權算法
6.10 雜項設置
6.11 附加工具
6.11.1 查看鍵值
6.11.2 導入之前版本的配置
6.12 小結
第7章 讀寫數據
7.1 Cassandra與RDBMS查詢的不同
7.1.1 沒有Update查詢
7.1.2 記錄級的寫原子性
7.1.3 不支持服務端事務
7.1.4 沒有重復鍵值
7.2 寫操作的基本屬性
7.3 一致性級別
7.4 讀操作的基本屬性
7.5 API
7.6 設置與插入數據
7.7 使用簡單的get
7.8 數據準備
7.9 切片謂詞
7.9.1 使用get_slice讀取特定列名
7.9.2 通過切片區間獲取一組列
7.9.3 取出一行中的所有列
7.10 get_range_slices
7.11 multiget_slice
7.12 刪除
7.13 批量變更
7.13.1 批量刪除
7.13.2 區間鬼影
7.14 編程定義keyspace和列族
7.15 小結
第8章 客戶端
8.1 基本的客戶端API
8.2 Thrift
8.2.1 Thrift對Java的支持
8.2.2 異常
8.2.3 Thrift小結
8.3 Avro
8.3.1 Avro Ant目標
8.3.2 Avro規範
8.3.3 Avro小結
8.4 Git簡介
8.5 連接客戶端節點
8.5.1 客戶端列表
8.5.2 循環DNS
8.5.3 負載均衡器
8.6 Cassandra Web控制台
8.7 Hector(Java)
8.7.1 特性
8.7.2 Hector API
8.8 HectorSharp(C#)
8.9 Chirper
8.10 Chiton(Python)
8.11 Pelops(Java)
8.12 Kundera(Java ORM)
8.13 Fauna(Ruby)
8.14 小結
第9章 監控
9.1 日志
9.1.1 跟蹤查看
9.1.2 通用技巧
9.2 JMX與MBean概述
9.2.1 MBean
9.2.2 集成JMX
9.3 通過JMX與Cassandra交互
9.4 Cassandra的MBean
9.4.1 org.apache.cassandra.concurrent
9.4.2 org.apache.cassandra.db
9.4.3 org.apache.cassandra.gms
9.4.4 org.apache.cassandra.service
9.5 定制Cassandra的MBean
9.6 運行時分析工具
9.6.1 使用JMX和JHAT進行堆分析
9.6.2 發現線程問題
9.7 健康檢查
9.8 小結
第10章 維護
10.1 獲取環的信息
10.1.1 Info
10.1.2 Ring
10.2 獲取統計信息
10.2.1 使用cfstats
10.2.2 使用tpstats
10.3 基本維護工作
10.3.1 修復
10.3.2 刷寫
10.3.3 清理
10.4 快照
10.4.1 進行快照
10.4.2 清除快照
10.5 對集群進行負載均衡
10.6 退服節點
10.7 更新節點
10.7.1 刪除令牌
10.7.2 壓緊閾值
10.7.3 在一個工作的集群中改變列族
10.8 小結
第11章 性能調優
11.1 數據存儲
11.2 回復超時
11.3 commit log
11.4 memtable
11.5 並發
11.6 緩存
11.7 緩沖區尺寸
11.8 使用Python壓力測試
11.8.1 生成Python Thrift接口
11.8.2 運行Python壓力測試
11.9 啟動和JVM設置
11.10 小結
第12章 集成Hadoop
12.1 何為Hadoop
12.2 使用MapReduce
12.3 運行字數統計例子
12.3.1 將數據輸出到Cassandra
12.3.2 Hadoop流
12.4 MapReduce之上的工具
12.4.1 Pig
12.4.2 Hive
12.5 集群配置
12.6 案例
12.6.1 Raptr.com: Keith Thornhill
12.6.2 Imagini: Dave Gardner
12.7 小結
附錄 非關系型數據庫大觀
詞匯表
關于作者
關于封面
 

對于一位分布式存儲系統的開發者,Cassandra無疑是非常引人注目的,它的無中心架構、高可用性、無縫擴展等繼承自亞馬遜Dynamo的特質,相對于其他主從架構的NoSQL系統更加簡潔,也更具有美感。

我從2010年初開始關注這個系統,並翻譯過幾篇Cassandra相關的文章,還引起一些讀者熱烈的討論。2010年底,當劉江老師為本書尋找譯者時,我按捺不住,毛遂自薦,並隨後在2011年1月中下旬開始r本書的翻譯工作。我用了三個月的業余時間,終于在4月份完成了譯稿。因為Cassandra仍在快速開發中,翻譯時我也盡力爭取快一些,以便能讓中文版出版時不至丁落伍。

本書對Cassandra的概念、架構、配置、使用進行了全面的介紹,非常詳盡,而且給出了很多參考信息。對于希望了解Cassandra、評估Cassandra是否是適合自己的應用,以及開始著手在Cassandra上進行應用開發的人都是不錯的讀物。當然,如果想參與Cassandra的開發或做更深入的工作,還需要直接通過源代碼來獲取更詳盡的信息。

在翻譯中,我盡力使用已有的、被廣泛接受的名詞或術語,對于一些譯法沒有被廣泛接受的術語,在不產生歧義的前提下,我會選擇一個白以為恰當的詞,有時還會給出英文,以避免讀者不能將代碼和本書給出的名詞對應上。還有一些名詞尚沒有貼切的中文譯法,或是譯出容易產生歧義,或是國內開發者已習慣使用英文,這時我在翻譯中保留了英文原文。這些選擇都以幫助理解、避免歧義為首要考慮。

本書的翻譯工作得到了很多朋友和網友的關注,希望沒有讓他們久等。我的同事郭磊濤,作為數據庫和HBase的專家、Cassandra用戶,在本書的翻譯過程中給予了很多
網路書店 類別 折扣 價格
  1. 新書
    87
    $308