官网 分布式统一大数据虚拟文件系统 Alluxio原理 技术与实践 顾荣 刘嘉承 毛宝龙 分布式数据处理 Alluxio原理实践解析技术书籍
运费: | ¥ 0.00-30.00 |
商品详情
书名:分布式统一大数据虚拟文件系统——Alluxio原理、技术与实践
定价:99.0
ISBN:9787111732587
作者:顾荣
版次:1
内容提要:
本书分为基础篇、进阶篇、实战篇,共15章内容,主要内容包括 Alluxio 总体介绍与快速入门、 Alluxio 核心功能服务、Alluxio 与底层存储系统的集成、Alluxio 与上层计算框架的集成、 Alluxio 基本使用与运维操作、Alluxio主节点原理与元数据管理、Alluxio工作节点原理与文件数据管理、Alluxio客户端原理与高级接口、Alluxio底层存储管理与拓展、Alluxio Job Service的工作原理、Alluxio的系统配置优化、Alluxio与云原生环境的集成、Alluxio Hub 系统运维管理平台、Alluxio的应用案例与生产实践、Alluxio的开源社区开发者指南。
目录:
Contents 目 录
序
前言
第1章 Alluxio总体介绍与快速入门1
1.1 Alluxio的发展背景与系统概览1
1.1.1 Alluxio Master组件4
1.1.2 Alluxio Worker组件6
1.1.3 Alluxio Job Service组件7
1.1.4 数据读写流程7
1.2 Alluxio配置部署与程序运行11
1.2.1 获取/编译Alluxio系统11
1.2.2 单机模式安装部署13
1.2.3 集群模式安装部署14
1.2.4 Alluxio服务启停操作15
第2章 Alluxio的核心功能服务18
2.1 文件系统统一命名空间18
2.1.1 统一命名空间概览18
2.1.2 挂载底层存储系统19
2.1.3 与底层存储系统元数据同步20
2.1.4 使用示例21
2.2 层级存储与数据缓存22
2.2.1 存储结构概览22
2.2.2 Alluxio层级存储23
2.2.3 Alluxio的数据副本管理机制24
2.2.4 使用示例25
2.3 Alluxio与HDFS/POSIX接口存
储系统的集成26
2.3.1 HDFS底层存储连接器的基本
原理26
2.3.2 配置HDFS作为Alluxio的
底层存储27
2.3.3 配置CephFS作为Alluxio的
底层存储30
2.3.4 配置NFS作为Alluxio的底层
存储32
2.4 Alluxio与对象存储系统的集成32
2.4.1 对象类型底层存储连接器的
基本原理32
2.4.2 配置AWS S3作为Alluxio的
底层存储34
2.4.3 配置阿里云OSS作为Alluxio
的底层存储35
2.4.4 配置Apache Ozone作为Alluxio
的底层存储37
2.4.5 配置Swift作为Alluxio的底层
存储38
2.5 新增底层存储连接模块的集成
方法39
2.5.1 客户端常见操作与底层存储
连接器的交互39
2.5.2 底层存储连接器的加载机制41
2.5.3 底层存储连接器的管理方式42
2.5.4 新增底层存储连接器的示例43
2.6 Alluxio与大数据计算框架的集成45
2.6.1 与Apache Spark并行计算
框架集成45
2.6.2 与Kubernetes中的Spark并
行计算框架集成48
2.6.3 与Apache Flink并行计算
框架集成51
2.7 Alluxio与大数据查询系统的集成52
2.7.1 与Hive数据仓库集成52
2.7.2 与Presto数据仓库集成59
2.8 Alluxio与深度学习框架的集成63
第3章 Alluxio的基本使用与
运维操作67
3.1 Alluxio的重要操作命令67
3.1.1 管理员操作命令67
3.1.2 用户操作命令72
3.1.3 常用的编程API86
3.1.4 Web界面展示与操作88
3.2 Alluxio的挂载点运维94
3.3 Alluxio的元数据同步和备份运维95
3.3.1 元数据同步的配置95
3.3.2 自动/手动生成备份和从备份
恢复集群96
3.4 Journal日志和高可用运维98
3.4.1 UFS Journal模式配置方式99
3.4.2 Embedded Journal模式配置
方式100
3.4.3 自动/手动生成Checkpoint102
3.4.4 高可用集群的部署与配置
更改103
3.4.5 Master节点的添加/移除和
Primary Master的切换104
3.4.6 客户端配置连接高可用
Master106
3.5 Alluxio的不同配置方式108
3.5.1 Alluxio的配置方式和生效
优先级108
3.5.2 Alluxio客户端配置方式111
3.5.3 Alluxio集群配置方式112
3.5.4 查看配置项112
3.6 Alluxio的Log日志运维113
3.6.1 Log日志位置113
3.6.2 改变Log日志等级114
3.6.3 Alluxio的集群指标116
3.7 Job Service使用和查询运维118
3.7.1 用命令行查询作业状态118
3.7.2 作业执行Log 日志跟踪119
3.8 Alluxio的安全认证与权限控制119
3.8.1 安全认证模式120
3.8.2 访问权限控制120
3.8.3 用户模拟功能123
3.8.4 审计日志功能124
第4章 Alluxio元数据管理与主
节点原理126
4.1 Alluxio Master核心功能概览126
4.2 Master组件的元数据管理128
4.2.1 Master对元数据的管理128
4.2.2 文件/数据块元数据示例130
4.2.3 元数据存储在堆上—HEAP
模式134
4.2.4 元数据存储在堆外—ROCKS
模式135
4.3 Alluxio的统一命名空间和底层存
储管理137
4.3.1 Alluxio的数据挂载功能137
4.3.2 Alluxio的文件生命周期139
4.3.3 Alluxio的一致性模型140
4.3.4 Alluxio与底层存储的元数据/
数据同步145
4.4 Journal日志和高可用152
4.4.1 Alluxio的元数据状态和重要
性质152
4.4.2 Alluxio的Journal日志内容155
4.4.3 Journal日志的Checkpoint操作156
4.4.4 基于底层存储的UFS Journal
模式156
4.4.5 基于Raft协议的Embedded
Journal模式162
4.4.6 UFS Journal和Embedded
Journal之间的切换与选择166
4.5 元数据备份功能168
4.5.1 元数据备份原理168
4.5.2 元数据备份解决的兼容问题168
4.5.3 在高可用集群中的代理备份
功能169
4.5.4 备份操作和Journal日志的
Checkpoint操作的区别170
4.6 Alluxio Master的Worker管理
机制171
4.6.1 Alluxio Worker的注册与心跳171
4.6.2 在集群中加入和移除Alluxio
Worker172
4.6.3 Alluxio Master的可用Worker
列表管理173
4.7 主节点的元数据并发机制173
4.7.1 文件路径并发控制173
4.7.2 Journal日志并发控制176
4.7.3 Worker相关元数据并发控制176
第5章 Alluxio数据存储的核心特
性与原理178
5.1 Alluxio Worker组件概览178
5.1.1 Alluxio Worker数据管理简介178
5.1.2 Worker的发展方向179
5.1.3 Worker对外开放的服务接口179
5.2 Alluxio系统中的数据I/O180
5.2.1 Alluxio的数据读模式详解180
5.2.2 Alluxio的数据写模式详解182
5.2.3 本地读写的优化184
5.3 Alluxio系统中数据块的生命周期
和管理186
5.3.1 数据块的加载和删除187
5.3.2 数据块的写入和持久化187
5.3.3 数据块的锁定和解锁188
5.3.4 数据块的副本控制188
5.3.5 数据块的TTL控制189
5.4 Alluxio Worker的分层缓存190
5.4.1 分层缓存的设计190
5.4.2 使用单层缓存191
5.4.3 使用多层缓存192
5.4.4 缓存分配机制192
5.4.5 缓存驱逐机制193
5.4.6 多层缓存的管理机制195
5.5 Alluxio Worker的并发和流量
控制机制197
5.5.1 数据块锁197
5.5.2 数据块的原子提交197
5.5.3 数据读写的流量控制197
5.6 代码实战—自定义缓存分配
策略198
第6章 Alluxio客户端与Job
Service的原理200
6.1 Alluxio的原生客户端201
6.1.1 Alluxio原生客户端的总体
原理201
6.1.2 客户端与主节点的通信方式203
6.1.3 客户端侧的块位置选取策略204
6.2 Alluxio的Hadoop兼容客户端205
6.2.1 Hadoop兼容文件系统的
Alluxio实现206
6.2.2 大数据生态应用Alluxio206
6.3 Alluxio的POSIX客户端207
6.3.1 JNI-FUSE模块208
6.3.2 启动流程209
6.3.3 FUSE Shell209
6.3.4 适用场景210
6.4 Alluxio Proxy服务210
6.4.1 S3 API210
6.4.2 REST API211
6.5 Alluxio系统的Shell命令行211
6.6 Alluxio Job Service概览和整体
架构212
6.6.1 Job Service组件功能介绍212
6.6.2 Job Service的发展方向212
6.6.3 Job Service对外开放的接口213
6.7 Alluxio Job Service的异步作业
分类213
6.8 Alluxio Job Service的优化功能216
6.9 Alluxio Job Master管理的元数据217
6.10 Alluxio Job Service高可用和Job
Worker管理217
6.10.1 Job Master的高可用217
6.10.2 Job Master对Job Worker的
管理218
6.11 代码实战219
6.11.1 Alluxio Shell拓展实现219
6.11.2 块位置选择策略拓展实现219
6.11.3 Job Service自定义作业拓展
实现220
第7章 Alluxio系统性能深度调优222
7.1 Alluxio的推荐系统配置及测算
方法222
7.1.1 Alluxio文件系统规模观测222
7.1.2 Alluxio Master进程推荐配置225
7.1.3 Alluxio Worker进程推荐配置228
7.1.4 Alluxio Job Master进程推荐
配置230
7.1.5 Alluxio Job Worker进程推荐
配置230
7.2 Alluxio常见的性能问题及解决
方案231
7.2.1 读性能差231
7.2.2 写性能差234
7.2.3 服务资源占用高235
7.2.4 请求超时236
7.3 Alluxio Master调优238
7.3.1 元数据调优238
7.3.2 Journal日志性能调优239
7.3.3 UFS元数据缓存240
7.3.4 元数据同步调优240
7.3.5 Alluxio Master的Worker管理
调优241
7.3.6 RPC并发调优244
7.3.7 心跳线程调优245
7.4 Alluxio Worker调优245
7.4.1 异步缓存调优245
7.4.2 RPC并发调优246
7.4.3 UFS数据流缓存246
7.5 Job Service调优247
7.5.1 Job Service吞吐量调优247
7.5.2 Job Service并发调优247
7.6 客户端调优248
7.6.1 Alluxio Worker选取策略调优248
7.6.2 被动缓存策略调优249
7.6.3 Commit操作优化249
7.6.4 重试操作调优251
7.6.5 Keepalive调优252
7.6.6 其他客户端配置调优252
7.7 性能压力测试252
7.7.1 压力测试的目的和工具252
7.7.2 Alluxio的压力测试框架
StressBench253
7.7.3 StressBench提供的测试内容254
第8章 Alluxio与云原生环境的
集成256
8.1 Kubernetes中的Alluxio集群架构256
8.2 Alluxio集群的部署258
8.2.1 部署的准备工作258
8.2.2 Alluxio集群的基础配置261
8.2.3 集群的部署和验证263
8.3 Alluxio集群的进阶配置266
8.3.1 Master节点的Journal日志266
8.3.2 Master节点的高可用配置267
8.3.3 使用RocksDB作为元数据
存储267
8.3.4 配置Alluxio Worker多层缓存268
8.3.5 配置底层文件系统270
8.4 配置Alluxio使用Kubernetes高级
功能271
8.5 Alluxio的其他Kubernetes部署
架构274
8.5.1 在Kubernetes中部署使用
Alluxio FUSE274
8.5.2 通过Kubernetes CSI使用
Alluxio FUSE276
8.6 Kubernetes环境下的读写性能
优化278
8.6.1 读写本地性优化278
8.6.2 使用宿主机资源优化性能280
8.6.3 Alluxio和不同生命周期的应
用集成281
第9章 Alluxio在混合云场景中
的应用282
9.1 混合云业务场景和常见挑战282
9.2 Alluxio与传统方案对比分析283
9.2.1 方案一:将数据从本地复制
到云存储以运行分析283
9.2.2 方案二:使用NetApp ONTAP
或AWS DataSync等托管服务284
9.2.3 方案三:使用Alluxio数据编
排技术的解决方案284
9.3 混合云上的Alluxio解决方案
架构285
9.3.1 Alluxio架构原理回顾285
9.3.2 云上计算集群搭配部署Alluxio
的架构286
9.3.3 节点的生命周期选择287
9.3.4 数据中心链路287
9.3.5 安全288
9.3.6 迁移到混合云架构的几大步骤288
9.4 基准测试288
9.4.1 测试集群架构289
9.4.2 测试方案和配置290
9.4.3 测试结果291
9.4.4 测试结果分析293
9.5 案例294
9.5.1 混合云案例1:华尔街大型
量化基金公司294
9.5.2 混合云案例2:某知名电信
公司295
9.6 Alluxio在某科技巨头的应用296
9.6.1 案例概览296
9.6.2 云化之路和挑战297
9.6.3 解决方案:赋能混合云和多云
架构,实现应用灵活可移植298
9.6.4 成效:显著的商业价值和技术
优势299
9.6.5 展望未来:下一代数据平台301
9.7 结论301
第10章 Alluxio在大数据分析场
景中的应用303
10.1 Presto和Alluxio结合的架构及
原理303
10.2 Presto与Alluxio搭配部署的架
构优势305
10.2.1 Alluxio帮助企业将数据平台
升级为混合云数据湖305
10.2.2 Alluxio支持跨多个数据源的
统一数据访问305
10.2.3 Alluxio使用通用缓存解决方
案加速整个数据工作流306
10.3 常见应用场景和案例研究307
10.3.1 单一云上的大数据分析:在任
何云存储上实现快速的SQL307
10.3.2 混合云上的大数据分析:简
化上云过程308
10.3.3 跨数据中心分析:无处不在
的高性能分析309
10.4 混合云架构中的基准测试性能309
10.5 某公司金融数据团队的Presto +
Alluxio场景310
10.5.1 大数据OLAP分析面临的
挑战311
10.5.2 一种常见的解决方案311
10.5.3 Alluxio:一个兼顾性能和自
动化管理的更优解312
10.5.4 新的挑战313
10.5.5 最终架构315
10.5.6 线上运行效果315
10.5.7 总结展望317
10.6 金山云基于Alluxio加速Presto
查询的性能评估317
10.6.1 测试环境317
10.6.2 理想条件下的Alluxio加速
表现319
10.6.3 影响加速收益的重要因素320
10.6.4 本测试的意义327
10.6.5 Alluxio使用和优化建议328
第11章 Alluxio在ETL场景中
的应用329
11.1 Spark和Alluxio结合的架构及
原理329
11.2 ETL场景中搭配部署Alluxio的
架构优势330
11.2.1 技术优势331
11.2.2 商业价值335
11.3 案例研究33
- 机械工业出版社旗舰店 (微信公众号认证)
- 扫描二维码,访问我们的微信店铺
- 随时随地的购物、客服咨询、查询订单和物流...