本站支持尊重有效期内的版权/著作权,所有的资源均来自于互联网网友分享或网盘资源,一旦发现资源涉及侵权,将立即删除。希望所有用户一同监督并反馈问题,如有侵权请联系站长或发送邮件到ebook666@outlook.com,本站将立马改正
书名: | 大规模分布式存储系统:原理解析与架构实战|3768517 |
图书定价: | 59元 |
图书作者: | 杨传辉 |
出版社: | 机械工业出版社 |
出版日期: | 2013/9/1 0:00:00 |
ISBN号: | 9787111430520 |
开本: | 16开 |
页数: | 1 |
版次: | 1-1 |
作者简介 |
杨传辉,阿里巴巴**技术专家,花名日照,OceanBase核心开发人员,对分布式系统的理论和工程实践有深刻理解。曾在百度作为核心成员参与类MapReduce系统、类Bigtable系统和百度分布式消息队列等底层基础设施架构工作。热衷于分布式存储和计算系统设计,乐于分享,有技术博客NosqlNotes。 |
内容简介 |
《大规模分布式存储系统:原理解析与架构实战》是分布式系统领域的经典著作,由阿里巴巴高级技术专家“阿里日照”(OceanBase核心开发人员)撰写,阳振坤、章文嵩、杨卫华、汪源、余锋(褚霸)、赖春波等来自阿里、新浪、网易和百度的资深技术专家联袂推荐。理论方面,不仅讲解了大规模分布式存储系统的核心技术和基本原理,而且对谷歌、亚马逊、微软和阿里巴巴等国际型大互联网公司的大规模分布式存储系统进行了分析;实战方面,首先通过对阿里巴巴的分布式数据库OceanBase的实现细节的深入剖析完整地展示了大规模分布式存储系统的架构与设计过程,然后讲解了大规模分布式存储技术在云计算和大数据领域的实践与应用。 《大规模分布式存储系统:原理解析与架构实战》内容分为四个部分:基础篇——分布式存储系统的基础知识,包含单机存储系统的知识,如数据模型、事务与并发控制、故障恢复、存储引擎、压缩/解压缩等;分布式系统的数据分布、复制、一致性、容错、可扩展性等。范型篇——介绍谷歌、亚马逊、微软、阿里巴巴等著名互联网公司的大规模分布式存储系统架构,涉及分布式文件系统、分布式键值系统、分布式表格系统以及分布式数据库技术等。实践篇——以阿里巴巴的分布式数据库OceanBase为例,详细介绍分布式数据库内部实现,以及实践过程中的经验。专题篇——介绍分布式系统的主要应用:云存储和大数据,这些是近年来的热门领域,本书介绍了云存储平台、技术与安全,以及大数据的概念、流式计算、实时分析等。 |
目录 |
《大规模分布式存储系统:原理解析与架构实战》 前言 第1章 概述 /1 1.1 分布式存储概念 /1 1.2 分布式存储分类 /2 第一篇 基础篇 第2章 单机存储系统 /6 2.1 硬件基础 /6 2.1.1 CPU架构 /6 2.1.2 IO总线 /7 2.1.3 网络拓扑 /9 2.1.4 性能参数 /10 2.1.5 存储层次架构 /11 2.2 单机存储引擎 /12 2.2.1 哈希存储引擎 /12 2.2.2 B树存储引擎 /14 2.2.3 LSM树存储引擎 /15 2.3 数据模型 /17 2.3.1 文件模型 /17 2.3.2 关系模型 /18 2.3.3 键值模型 /19 2.3.4 SQL与NoSQL /20 2.4 事务与并发控制 /21 2.4.1 事务 /21 2.4.2 并发控制 /23 2.5 故障恢复 /26 2.5.1 操作日志 /26 2.5.2 重做日志 /27 2.5.3 优化手段 /27 2.6 数据压缩 /29 2.6.1 压缩算法 /29 2.6.2 列式存储 /33 第3章 分布式系统 /36 3.1 基本概念 /36 3.1.1 异常 /36 3.1.2 一致性 /38 3.1.3 衡量指标 /39 3.2 性能分析 /40 3.3 数据分布 /42 3.3.1 哈希分布 /43 3.3.2 顺序分布 /45 3.3.3 负载均衡 /46 3.4 复制 /47 3.4.1 复制的概述 /47 3.4.2 一致性与可用性 /49 3.5 容错 /50 3.5.1 常见故障 /50 3.5.2 故障检测 /51 3.5.3 故障恢复 /52 3.6 可扩展性 /53 3.6.1 总控节点 /54 3.6.2 数据库扩容 /54 3.6.3 异构系统 /56 3.7 分布式协议 /57 3.7.1 两阶段提交协议 /57 3.7.2 Paxos协议 /59 3.7.3 Paxos与2PC /60 3.8 跨机房部署 /60 第二篇 范型篇 第4章 分布式文件系统 /66 4.1 Google文件系统 /66 4.1.1 系统架构 /66 4.1.2 关键问题 /67 4.1.3 Master设计 /72 4.1.4 ChunkServer设计 /74 4.1.5 讨论 /74 4.2 ****** File System /75 4.2.1 系统架构 /75 4.2.2 讨论 /78 4.3 Facebook Haystack /78 4.3.1 系统架构 /79 4.3.2 讨论 /82 4.4 内容分发网络 /83 4.4.1 CDN架构 /83 4.4.2 讨论 /85 第5章 分布式键值系统 /86 5.1 Dynamo /86 5.1.1 数据分布 /86 5.1.2 一致性与复制 /88 5.1.3 容错 /89 5.1.4 负载均衡 /90 5.1.5 读写流程 /91 5.1.6 单机实现 /92 5.1.7 讨论 /93 5.2 淘宝Tair /93 5.2.1 系统架构 /93 5.2.2 关键问题 /94 5.2.3 讨论 /96 第6章 分布式表格系统 /97 6.1 Google Bigtable /97 6.1.1 架构 /98 6.1.2 数据分布 /100 6.1.3 复制与一致性 /101 6.1.4 容错 /101 6.1.5 负载均衡 /102 6.1.6 分裂与合并 /102 6.1.7 单机存储 /103 6.1.8 垃圾回收 /104 6.1.9 讨论 /105 6.2 Google Megastore /105 6.2.1 系统架构 /107 6.2.2 实体组 /108 6.2.3 并发控制 /109 6.2.4 复制 /110 6.2.5 索引 /111 6.2.6 协调者 /111 6.2.7 读取流程 /112 6.2.8 写入流程 /113 6.2.9 讨论 /115 6.3 Windows Azure Storage /115 6.3.1 整体架构 /115 6.3.2 文件流层 /117 6.3.3 分区层 /121 6.3.4 讨论 /125 第7章 分布式数据库 /126 7.1 数据库中间层 /126 7.1.1 架构 /126 7.1.2 扩容 /128 7.1.3 讨论 /128 7.2 Microsoft SQL Azure /129 7.2.1 数据模型 /129 7.2.2 架构 /131 7.2.3 复制与一致性 /132 7.2.4 容错 /132 7.2.5 负载均衡 /133 7.2.6 多租户 /133 7.2.7 讨论 /134 7.3 Google Spanner /134 7.3.1 数据模型 /134 7.3.2 架构 /135 7.3.3 复制与一致性 /136 7.3.4 TrueTime /137 7.3.5 并发控制 /138 7.3.6 数据迁移 /139 7.3.7 讨论 /139 第三篇 实践篇 第8章 OceanBase架构初探 /142 8.1 背景简介 /142 8.2 设计思路 /143 8.3 系统架构 /144 8.3.1 整体架构图 /144 8.3.2 客户端 /145 8.3.3 RootServer /147 8.3.4 MergeServer /148 8.3.5 ChunkServer /149 8.3.6 UpdateServer /149 8.3.7 定期合并&数据分发 /150 8.4 架构剖析 /151 8.4.1 一致性选择 /151 8.4.2 数据结构 /152 8.4.3 可靠性与可用性 /154 8.4.4 读写事务 /154 8.4.5 单点性能 /155 8.4.6 SSD支持 /156 8.4.7 数据正确性 /157 8.4.8 分层结构 /158 第9章 分布式存储引擎 /159 9.1 公共模块 /159 9.1.1 内存管理 /159 9.1.2 基础数据结构 /161 9.1.3 锁 /164 9.1.4 任务队列 /165 9.1.5 网络框架 /166 9.1.6 压缩与解压缩 /167 9.2 RootServer实现机制 /168 9.2.1 数据结构 /168 9.2.2 子表复制与负载均衡 /170 9.2.3 子表分裂与合并 /171 9.2.4 UpdateServer选主 /172 9.2.5 RootServer主备 /173 9.3 UpdateServer实现机制 /174 9.3.1 存储引擎 /174 9.3.2 任务模型 /179 9.3.3 主备同步 /181 9.4 ChunkServer实现机制 /183 9.4.1 子表管理 /183 9.4.2 SSTable /184 9.4.3 缓存实现 /188 9.4.4 IO实现 /190 9.4.5 定期合并&数据分发 /191 9.4.6 定期合并限速 /192 9.5 消除更新瓶颈 /193 9.5.1 读写优化回顾 /193 9.5.2 数据旁路导入 /195 9.5.3 数据分区 /195 第10章 数据库功能 /197 10.1 整体结构 /197 10.2 只读事务 /199 10.2.1 物理操作符接口 /201 10.2.2 单表操作 /202 10.2.3 多表操作 /203 10.2.4 SQL执行本地化 /205 10.3 写事务 /206 10.3.1 写事务执行流程 /206 10.3.2 多版本并发控制 /208 10.4 OLAP业务支持 /212 10.4.1 并发查询 /212 10.4.2 列式存储 /214 10.5 特色功能 /215 10.5.1 大表左连接 /215 10.5.2 数据过期与批量删除 /216 第11章 质量保证、运维及实践 /218 11.1 质量保证 /218 11.1.1 RD开发 /219 11.1.2 QA测试 /222 11.1.3 试运行 /224 11.2 使用与运维 /225 11.2.1 使用 /225 11.2.2 运维 /227 11.3 应用 /228 11.3.1 收藏夹 /229 11.3.2 天猫评价 /230 11.3.3 直通车报表 /231 11.4 最佳实践 /232 11.4.1 系统发展路径 /232 11.4.2 人员成长 /234 11.4.3 系统设计 /236 11.4.4 系统实现 /237 11.4.5 使用与运维 /238 11.4.6 工程现象 /239 11.4.7 经验法则 /240 第四篇 专题篇 第12章 云存储 /242 12.1 云存储的概念 /242 12.2 云存储的产品形态 /245 12.3 云存储技术 /247 12.4 云存储的核心优势 /249 12.5 云平台整体架构 /251 12.5.1 云平台 /252 12.5.2 Google云平台 /253 12.5.3 Microsoft云平台 /255 12.5.4 云平台架构 /258 12.6 云存储技术体系 /261 12.7 云存储安全 /263 第13章 大数据 /267 13.1 大数据的概念 /267 13.2 MapReduce /269 13.3 MapReduce扩展 /270 13.3.1 Google Tenzing /271 13.3.2 Microsoft Dryad /274 13.3.3 Google Pregel /275 13.4 流式计算 /276 13.4.1 原理 /276 13.4... |
编辑推荐 |
对于淘宝网而言,2012年的“双十一”是一个里程碑,是一个巨大的挑战,在这个“神棍节”里,淘宝创下19l亿元的交易额,在这海量交易的背后隐藏着哪些复杂技术?其中之一就是分布式存储技术。阿里巴巴在大规模分布式存储技术这方面走在了前面,其OceanBase是基于普通Pc服务器的千亿级海量数据库系统,既实现了跨行跨表事务、强数据一致性以及毫秒级的查询修改响应时间,又具备自动故障恢复、自动负载均衡以及良好的扩展性,支持多机房部署。*加难得的是,阿里巴巴把OceanBase开源了,这将进一步快速地推动分布式存储技术的发展。《大规模分布式存储系统(原理解析与架构实战)》作者(杨传辉)是阿里巴巴OceanBase核心开发人员,参与了0ceanBase的设计与开发,对分布式存储系统有深刻的理解,书中将分享他在OceanBase系统开发过程中的实践经验。 |