Presto实战

Presto实战

图灵程序设计丛书

暂无评价综合评分的显示会考虑用户真实性等多项因素,每部作品出现综合评分的时间不定。

作品简介

作为高性能分布式SQL查询引擎,Presto能够针对不同的数据源高效、快速地执行交互式分析。大数据的兴起使得数据存储机制多样化。面对标准不一的存储系统,你可以利用Presto轻松打破壁垒,连通数据孤岛。

本书由Presto项目创始成员参与执笔。你将学会用简单的Presto语句快速查询多个数据源,把握SQL-on-Anything的精髓。在任何规模、任何存储系统、任何环境中,你都能发挥SQL的威力。

马特·富勒(Matt Fuller)

Starburst公司联合创始人。

曼弗雷德·莫泽(Manfred Moser)

开源社区拥护者、技术作家、培训师,Starburst公司软件工程师。

马丁·特拉韦尔索(Martin Traverso)

Presto项目创始成员,Presto软件基金会联合创始人,Starburst公司首席技术官。

张晨,毕业于上海交通大学,热爱大数据技术、数据库、分布式系统和函数式编程,现于Indeed东京担任软件工程师。

黄鹏程,毕业于北京邮电大学,专注于数据库和大数据平台的开发与架构工作。曾就职于中国民生银行,担任大数据基础架构团队负责人。现任阿里云高级产品专家,负责阿里云数据库相关产品的设计与规划工作。

傅宇,毕业于南京大学,专注于数据库技术,现任阿里云技术专家,担任PolarDB-X云原生分布式数据库内核研发工作,熟悉分布式事务、查询优化器和执行器,对大数据领域充满热情。

作品目录

  1. 版权声明
  2. O'Reilly Media, Inc. 介绍
  3. 业界评论
  4. 本书赞誉
  5. 译者序
  6. 前言
  7. 关于本书
  8. 排版约定
  9. 代码示例、授权和引用说明
  10. O'Reilly在线学习平台(O'Reilly Online Learning)
  11. 联系我们
  12. 致谢
  13. 更多信息
  14. 第一部分 Presto 入门
  15. 第 1 章 Presto介绍
  16. 1.1 大数据带来的问题
  17. 1.2 Presto来救场
  18. 1.3 Presto使用场景
  19. 1.4 Presto资源
  20. 1.5 Presto简史
  21. 1.6 小结
  22. 第 2 章 安装和配置 Presto
  23. 2.1 使用Docker容器尝试Presto
  24. 2.2 使用归档文件安装
  25. 2.3 添加数据源
  26. 2.4 运行Presto
  27. 2.5 小结
  28. 第 3 章 使用Presto
  29. 3.1 Presto CLI
  30. 3.2 Presto JDBC驱动
  31. 3.3 Presto与ODBC
  32. 3.4 客户端库
  33. 3.5 Presto Web UI
  34. 3.6 使用Presto执行SQL
  35. 3.7 小结
  36. 第二部分 深入理解Presto
  37. 第 4 章 Presto的架构
  38. 4.1 集群中的协调器和工作节点
  39. 4.2 协调器
  40. 4.3 节点发现服务
  41. 4.4 工作节点
  42. 4.5 基于连接器的架构
  43. 4.6 catalog、schema和表
  44. 4.7 查询执行模型
  45. 4.8 查询优化
  46. 4.9 优化规则
  47. 4.10 实现规则
  48. 4.11 基于代价的优化器
  49. 4.12 使用表统计信息
  50. 4.13 小结
  51. 第 5 章 生产环境部署
  52. 5.1 配置细节
  53. 5.2 服务端配置
  54. 5.3 日志
  55. 5.4 节点配置
  56. 5.5 JVM配置
  57. 5.6 启动器
  58. 5.7 集群安装
  59. 5.8 使用RPM安装
  60. 5.9 在云上安装
  61. 5.10 集群规模的考量
  62. 5.11 小结
  63. 第 6 章 连接器
  64. 6.1 配置
  65. 6.2 RDBMS连接器示例:PostgreSQL
  66. 6.3 Presto TPC-H和TPC-DS连接器
  67. 6.4 用于分布式存储数据源的Hive连接器
  68. 6.5 非关系数据源
  69. 6.6 Presto JMX连接器
  70. 6.7 黑洞连接器
  71. 6.8 内存连接器
  72. 6.9 其他连接器
  73. 6.10 小结
  74. 第 7 章 高级连接器实例
  75. 7.1 用Phoenix连接HBase
  76. 7.2 键值存储连接器示例:Accumulo
  77. 7.3 Apache Cassandra连接器
  78. 7.4 流式系统连接器示例:Kafka
  79. 7.5 文档存储连接器示例:Elasticsearch
  80. 7.6 Presto中的联邦查询
  81. 7.7 ETL和联合查询
  82. 7.8 小结
  83. 第 8 章 在Presto中使用SQL
  84. 8.1 Presto语句
  85. 8.2 Presto系统表
  86. 8.3 catalog
  87. 8.4 schema
  88. 8.5 Information Schema
  89. 8.6 表
  90. 8.7 视图
  91. 8.8 会话信息和配置
  92. 8.9 数据类型
  93. 8.10  SELECT 语句基础
  94. 8.11  WHERE 子句
  95. 8.12  GROUP BY 和 HAVING 子句
  96. 8.13  ORDER BY 子句和 LIMIT 子句
  97. 8.14  JOIN 语句
  98. 8.15  UNION 、 INTERSECT 和 EXCEPT 子句
  99. 8.16 分组操作
  100. 8.17  WITH 子句
  101. 8.18 子查询
  102. 8.19 从表中删除数据
  103. 8.20 小结
  104. 第 9 章 高级SQL特性
  105. 9.1 函数和运算符介绍
  106. 9.2 标量函数和运算符
  107. 9.3 布尔运算符
  108. 9.4 逻辑运算符
  109. 9.5 用 BETWEEN 语句选择范围
  110. 9.6 用 IS (NOT) NULL 检测值的存在
  111. 9.7 数学函数和运算符
  112. 9.8 三角函数
  113. 9.9 常数和随机函数
  114. 9.10 字符串函数和运算符
  115. 9.11 字符串和映射
  116. 9.12 Unicode
  117. 9.13 正则表达式
  118. 9.14 解嵌套复杂数据类型
  119. 9.15 JSON函数
  120. 9.16 日期和时间函数及运算符
  121. 9.17 直方图
  122. 9.18 聚合函数
  123. 9.19 窗函数
  124. 9.20 lambda表达式
  125. 9.21 地理空间函数
  126. 9.22 Prepared Statement
  127. 9.23 小结
  128. 第三部分 Presto的实际应用
  129. 第 10 章 安全
  130. 10.1 认证
  131. 10.2 授权
  132. 10.3 加密
  133. 10.4 CA与自签名证书
  134. 10.5 证书认证
  135. 10.6 Kerberos
  136. 10.7 数据源访问和安全配置
  137. 10.8 使用Hive连接器进行Kerberos验证
  138. 10.9 集群分离
  139. 10.10 小结
  140. 第 11 章 将Presto与其他工具集成
  141. 11.1 使用Apache Superset进行查询、可视化和更多操作
  142. 11.2 使用RubiX提高性能
  143. 11.3 使用Apache Airflow的工作流
  144. 11.4 嵌入式Presto示例:Amazon Athena
  145. 11.5 Starburst企业版Presto
  146. 11.6 其他集成案例
  147. 11.7 自定义集成
  148. 11.8 小结
  149. 第 12 章 生产环境中的Presto
  150. 12.1 使用Presto Web UI监控
  151. 12.2 Presto SQL查询调优
  152. 12.3 内存管理
  153. 12.4 任务并发性
  154. 12.5 工作节点调度
  155. 12.6 网络数据交换
  156. 12.7 JVM调优
  157. 12.8 资源组
  158. 12.9 小结
  159. 第 13 章 真实世界的案例
  160. 13.1 部署和运行时平台
  161. 13.2 集群规模
  162. 13.3 Hadoop/Hive迁移的使用场景
  163. 13.4 其他数据源
  164. 13.5 用户和流量
  165. 13.6 小结
  166. 第 14 章 总结
  167. 关于作者
  168. 关于封面
  169. 看完了