Presto学习手册
Presto学习手册
Angelica Lo Duca, Tim Meehan, Vivek Bharathan, Ying Su
陈洋 译
出版时间:2026年05月
页数:197
Presto社区自2012年在Facebook诞生以来迅速发展壮大。然而,即使是经验丰富的工程师,也可能会发现学习和使用这个开源分布式SQL查询引擎具有一定的挑战性。本书为数据工程师、架构师、平台工程师、云工程师,以及软件工程师提供了实用指南,帮助他们利用Presto的高性能查询能力,赋能组织从海量复杂数据中即时获取深度见解。
本书作者介绍了Presto的概念、起源,以及与其他数据仓库解决方案的不同之处。你将了解到Facebook、Uber、阿里云、Hewlett Packard Enterprise、IBM、Intel,以及许多公司为何会选择Presto,并学习如何快速在生产环境中部署Presto。
通过本书,你将学到:
● 如何安装和配置Presto。
● 如何将Presto与商业智能工具结合使用。
● 如何连接Presto到各种数据源。
● 如何扩展Presto以实现实时业务分析。
● 如何应用最佳实践和优化技巧。
● 如何查看日志、错误消息等进行故障排查。
● 了解Presto的架构概念和使用模式。
● 掌握Presto的安全性与运维管理。
  1. 前言
  2. 第1章 Presto简介
  3. 1.1 数据仓库与数据湖
  4. 1.2 Presto在数据湖中所扮演的角色
  5. 1.3 Presto的起源与设计考量
  6. 1.3.1 高性能
  7. 1.3.2 高扩展性
  8. 1.3.3 符合ANSI SQL标准
  9. 1.3.4 数据源联邦查询
  10. 1.3.5 云端运行
  11. 1.4 Presto架构与核心组件
  12. 1.5 Presto的替代方案
  13. 1.5.1 Apache Impala
  14. 1.5.2 Apache Hive
  15. 1.5.3 Spark SQL
  16. 1.5.4 Trino
  17. 1.6 Presto的使用场景
  18. 1.6.1 报告与数据可视化仪表盘
  19. 1.6.2 即席查询
  20. 1.6.3 使用SQL进行ETL
  21. 1.6.4 数据湖仓
  22. 1.6.5 实时分析与实时数据库
  23. 1.7 案例简介
  24. 1.8 本章小结
  25. 第2章 开始使用Presto
  26. 2.1 手动安装Presto
  27. 2.2 在Docker上运行Presto
  28. 2.2.1 安装Docker
  29. 2.2.2 Presto Docker镜像
  30. 2.2.3 在Docker上构建和运行Presto
  31. 2.2.4 Presto沙盒环境
  32. 2.3 在Kubernetes上部署Presto
  33. 2.3.1 Kubernetes简介
  34. 2.3.2 在Kubernetes上配置Presto
  35. 2.3.3 添加新目录
  36. 2.3.4 在Kubernetes上运行部署
  37. 2.4 查询你的Presto实例
  38. 2.4.1 列出目录
  39. 2.4.2 列出模式
  40. 2.4.3 列出表
  41. 2.4.4 查询表
  42. 2.5 本章小结
  43. 第3章 连接器
  44. 3.1 服务提供者接口
  45. 3.2 连接器架构
  46. 3.3 常见连接器
  47. 3.4 编写自定义连接器
  48. 3.4.1 先决条件
  49. 3.4.2 插件与模块
  50. 3.4.3 配置
  51. 3.4.4 元数据
  52. 3.4.5 输入/输出
  53. 3.4.6 部署自定义连接器
  54. 3.5 Apache Pinot
  55. 3.5.1 配置Presto连接Pinot
  56. 3.5.2 Presto-Pinot查询实践
  57. 3.6 本章小结
  58. 第4章 客户端连接
  59. 4.1 环境设置
  60. 4.1.1 Presto客户端
  61. 4.1.2 Docker镜像
  62. 4.1.3 Kubernetes节点
  63. 4.2 连接Presto
  64. 4.2.1 REST API
  65. 4.2.2 Python
  66. 4.2.3 R
  67. 4.2.4 JDBC
  68. 4.2.5 Node.js
  69. 4.2.6 ODBC
  70. 4.2.7 其他Presto客户端库
  71. 4.3 在Python中构建客户端仪表板
  72. 4.3.1 设置客户端
  73. 4.3.2 构建仪表板
  74. 4.4 本章小结
  75. 第5章 开放式数据湖仓分析
  76. 5.1 湖仓的兴起
  77. 5.2 数据湖架构
  78. 5.3 数据湖
  79. 5.3.1 文件存储
  80. 5.3.2 文件格式
  81. 5.3.3 表格式
  82. 5.4 查询引擎
  83. 5.5 元数据管理
  84. 5.6 数据治理
  85. 5.7 构建数据湖仓
  86. 5.7.1 配置MinIO
  87. 5.7.2 配置HMS
  88. 5.7.3 配置Spark
  89. 5.7.4 注册Hudi表到HMS
  90. 5.7.5 连接并查询Presto
  91. 5.8 本章小结
  92. 第6章 Presto管理
  93. 6.1 Presto管理简介
  94. 6.2 配置
  95. 6.2.1 属性
  96. 6.2.2 会话
  97. 6.2.3 JVM
  98. 6.3 监控
  99. 6.3.1 控制台
  100. 6.3.2 REST API
  101. 6.3.3 指标
  102. 6.4 管理
  103. 6.4.1 资源组
  104. 6.4.2 验证器
  105. 6.4.3 会话属性管理器
  106. 6.4.4 命名空间函数
  107. 6.5 本章小结
  108. 第7章 了解Presto的安全性
  109. 7.1 Presto安全性简介
  110. 7.2 在Presto中构建安全通信
  111. 7.2.1 加密
  112. 7.2.2 密钥存储管理
  113. 7.2.3 配置HTTPS/TLS
  114. 7.3 认证
  115. 7.3.1 基于文件的认证
  116. 7.3.2 LDAP
  117. 7.3.3 Kerberos
  118. 7.3.4 创建自定义身份验证器
  119. 7.4 授权
  120. 7.4.1 授权访问Presto REST API
  121. 7.4.2 配置系统访问控制
  122. 7.4.3 通过Apache Ranger进行授权
  123. 7.5 本章小结
  124. 第8章 性能调优
  125. 8.1 性能调优简介
  126. 8.1.1 性能调优的原因
  127. 8.1.2 性能调优生命周期
  128. 8.2 查询执行模型
  129. 8.3 Presto性能调优方法
  130. 8.3.1 资源分配
  131. 8.3.2 存储
  132. 8.3.3 查询优化
  133. 8.4 Aria Scan
  134. 8.4.1 表扫描
  135. 8.4.2 重分区
  136. 8.5 实施性能调优
  137. 8.5.1 构建和导入MinIO中的示例CSV表
  138. 8.5.2 将CSV表转换为ORC
  139. 8.5.3 定义优化参数
  140. 8.5.4 运行测试
  141. 8.6 本章小结
  142. 第9章 大规模运行Presto
  143. 9.1 可扩展性简介
  144. 9.1.1 扩展Presto的原因
  145. 9.1.2 常见问题
  146. 9.2 设计考量
  147. 9.2.1 可用性
  148. 9.2.2 可管理性
  149. 9.2.3 性能
  150. 9.2.4 保护
  151. 9.2.5 配置
  152. 9.3 如何扩展Presto
  153. 9.3.1 多协调器
  154. 9.3.2 在Spark上运行Presto
  155. 9.3.3 数据溢写
  156. 9.4 使用云服务
  157. 9.5 本章小结
  158. 作者介绍
  159. 封面介绍
书名:Presto学习手册
译者:陈洋 译
国内出版社:中国电力出版社
出版时间:2026年05月
页数:197
书号:978-7-5239-1125-9
原版书书名:Learning and Operating Presto
原版书出版商:O'Reilly Media
Angelica Lo Duca
 
Angelica Lo Duca,计算机科学博士,意大利国家研究委员会信息学与远程通信研究所的研究员,从事研究与技术相关的工作。
 
 
Tim Meehan
 
Tim Meehan,自2018年起参与Presto项目,现就职于IBM,并担任Presto技术指导委员会主席。
 
 
Vivek Bharathan
 
Vivek Bharathan,Ahana(IBM旗下公司)的联合创始人兼首席软件工程师,曾在Uber担任软件工程师,负责管理超过2500个节点的Presto集群。
 
 
Ying Su
 
Ying Su,Ahana(IBM旗下公司)的性能架构师,致力于基于Presto和Velox构建更高效、更具成本效益的数据湖服务。
 
 
本书的封面动物是一只大马提尼克石龙子(学名:Greater Martinique skink,Mabuya mabouya)。关于这种蜥蜴的研究较少,目前已知它是马提尼克岛的特有物种,主要生活在陆地环境中。其皮肤呈青铜色,身体上侧带有较浅的条纹。
已知的石龙子种类超过1500种。与大多数蜥蜴相比,石龙子的四肢相对较小,使其运动方式更类似于蛇。它们能够在遇到捕食者时主动断尾,并且可以在几个月内部分再生。一般来说,石龙子的食物包括蟋蟀、甲虫、毛毛虫和苍蝇等昆虫。
大马提尼克石龙子目前被列为极危物种,甚至可能已经灭绝。其种群数量的减少主要是由于外来捕食者被引入加勒比群岛。在O’Reilly书籍的封面上,许多动物都是濒危物种,但它们对生态系统的平衡至关重要。
购买选项
定价:68.00元
书号:978-7-5239-1125-9
出版社:中国电力出版社