• Calcite数据管理实战/大数据技术丛书
21年品牌 40万+商家 超1.5亿件商品

Calcite数据管理实战/大数据技术丛书

正版保障 假一赔十 可开发票

60.44 6.7折 89.9 全新

库存67件

广东广州
认证卖家担保交易快速发货售后保障

作者刘钧文,悟初境,孙潇俊

出版社人民邮电出版社

ISBN9787115577733

出版时间2021-08

装帧平装

开本16开

定价89.9元

货号11492557

上书时间2025-01-02

灵感书店

三年老店
已实名 已认证 进店 收藏店铺

   商品详情   

品相描述:全新
商品描述
作者简介
刘钧文,哈尔滨工业大学硕士,京东科技算法工程师,中国计算机学会(CCF)会员。负责京东时空数据引擎的开发、时空数据产品的研发工作。研究方向:时空数据的管理、时空数据库、数据库优化器的原理及其实现、分布式计算以及城市计算。

悟初境,京东科技软件开发工程师。负责京东时空数据引擎的开发,多项时空数据产品的主要参与者,并在多个项目中负责架构设计的工作。研究方向:数据库原理和实现,大数据与架构设计。

孙潇俊,北京工业大学软件工程硕士,曾任京东科技大数据开发工程师。负责京东时空数据引擎的开发。研究方向:数据库优化器的原理及其实现。

目录
第 1 章 Calcite 的前世今生 1
1.1 数据管理系统的发展历史  1
1.2 当前数据管理系统的困境  3
1.3 Calcite 简史  3
1.3.1 发源时期   3
1.3.2 Apache Calcite 时期  4
1.3.3 项目分拆阶段  5
1.4 Calcite 生态系统  5
1.5 为什么使用Calcite  7
1.6 本章小结   7

第 2 章 Calcite 架构概述8
2.1 设计思想   8
2.1.1 聚焦查询优化  8
2.1.2 数据联邦   9
2.1.3 流式系统  10
2.2 整体架构  11
2.3 使用方式  12
2.4 核心特性  14
2.4.1 灵活可插拔  14
2.4.2 支持流式SQL   14
2.4.3 支持物化视图15
2.4.4 支持多种数据模型  16
2.5 执行流程  17
2.5.1 服务的接收  17
2.5.2 SQL 语法解析  18
2.5.3 语法树的校验  19
2.5.4 关系代数优化  19
2.5.5 执行并获取数据  20
2.6 本章小结  20

第3 章 Calcite 快速上手  21
3.1 下载、编译和运行  21
3.2 SQLLine 操作方法  23
3.2.1 SQLLine 的基本操作  23
3.2.2 SQLLine 的进阶操作  26
3.2.3 其他操作  31
3.3 集成CSV 文件开发实例  32
3.3.1 元数据定义  32
3.3.2 优化规则管理  36
3.4 本章小结  38

第4 章 数据库查询优化技术 39
4.1 什么是数据库查询优化技术  39
4.2 查询优化器的内外结构  39
4.2.1 查询优化器的内部结构  40
4.2.2 优化器的外部关系  41
4.3 逻辑计划优化  42
4.3.1 关系代数  43
4.3.2 关系代数优化规则  45
4.4 物理计划优化  47
4.4.1 代价模型  48
4.4.2 逻辑代价  49
4.4.3 物理执行代价  49
4.4.4 算法代价  51
4.5 优化模型  51
4.5.1 启发式模型  52
4.5.2 火山模型  52
4.5.3 向量化模型  53
4.6 本章小结  54

第5 章 服务层  55
5.1 Avatica 架构介绍  55
5.2 Avatica 执行结构和流程  57
5.2.1 Service 接口  57
5.2.2 Meta 接口  60
5.2.3 启动服务  62
5.3 Avatica 鉴权  62
5.3.1 BASIC  63
5.3.2 DIGEST   64
5.3.3 SPNEGO   65
5.3.4 自定义鉴权  66
5.4 客户端驱动  66
5.4.1 Java 驱动  66
5.4.2 Python 驱动  68
5.5 命令行工具  69
5.5.1 使用SQLLine  70
5.5.2 自定义命令行交互方式  71
5.6 本章小结  71

第6 章 解析层  72
6.1 语法解析过程  72
6.2 Calcite 中的解析体系  73
6.2.1 抽象语法树的概念  73
6.2.2 SqlNode 体系 74
6.3 JavaCC   78
6.3.1 JavaCC 简介  78
6.3.2 JavaCC 简单示例  78
6.3.3 Calcite 中JavaCC 的使用方法  84
6.4 Calcite 整合Antlr 方法  94
6.4.1 Antlr 简介  94
6.4.2 上手Antlr  95
6.4.3 Calcite 集成Antlr  96
6.5 Antlr 对比JavaCC  98
6.5.1 输入输出  98
6.5.2 易用性  98
6.5.3 效率  99
6.5.4 在Calcite 中如何选择  99
6.6 本章小结  99

第7 章 校验层  100
7.1 何谓校验  100
7.2 元数据定义  100
7.2.1 Calcite 中元数据的基本概念  101
7.2.2 数据模型定义  103
7.2.3 自定义表元数据实现  107
7.2.4 解析数据模型   113
7.3 校验流程  114
7.3.1 Calcite 校验过程中的核心类  114
7.3.2 校验流程 116
7.4 元数据DDL  119
7.5 本章小结  121

第8 章 优化层  122
8.1 关系代数与火山模型  122
8.1.1 关系代数  122
8.1.2 火山模型  123
8.2 优化器   123
8.2.1 优化器介绍  124
8.2.2 RBO 模型和CBO 模型  125
8.2.3 寻找关系代数最优解  127
8.3 Calcite 优化器  128
8.3.1 构建算子树  129
8.3.2 RelNode  133
8.3.3 Calcite 优化模型  134
8.4 自定义优化规则  142
8.4.1 CSV 规则  142
8.4.2 RBO 模型与CBO 模型的对比  144
8.5 本章小结  146

第9 章 数据源接入  147
9.1 Redis  147
9.1.1 配置model.json 文件  148
9.1.2 配置Schema 信息  149
9.1.3 定义表元数据  150
9.1.4 定义迭代器  151
9.2 PostgreSQL   153
9.2.1 构建元数据  154
9.2.2 自定义优化规则  155
9.2.3 整体流程  157
9.3 Janino 介绍   162
9.4 本章小结  164

第 10 章 SQL 函数扩展  165
10.1 UDF    165
10.1.1 UDF 介绍  165
10.1.2 Calcite 中如何定义UDF   166
10.2 UDAF   168
10.2.1 UDAF 介绍  168
10.2.2 Calcite 中如何定义UDAF  169
10.3 UDTF   170
10.3.1 UDTF 介绍  170
10.3.2 Calcite 中如何定义UDTF  171
10.4 执行流程  173
10.5 本章小结  176

第 11 章 空间数据查询  177
11.1 OGC 简介  177
11.2 空间数据类型  178
11.3 空间函数  185
11.3.1 创建类函数  185
11.3.2 转换类函数  186
11.3.3 属性查询函数  186
11.3.4 空间判断函数  187
11.4 使用方法  188
11.5 自定义空间函数  189
11.6 本章小结  189

第 12 章 流式处理  190
12.1 流式查询简介  190
12.2 流式查询初体验  191
12.3 流式聚合查询  195
12.4 本章小结  198

第 13 章 视图  199
13.1 普通视图  199
13.2 物化视图  200
13.2.1 Join 重写  202
13.2.2 联合重写  203
13.3 格  204
13.4 本章小结  206

第 14 章 Calcite 在开源项目中的使用  207
14.1 Hive  207
14.1.1 Hive 简介  207
14.1.2 Hive 架构与执行流程  208
14.1.3 Hive 集成Calcite  209
14.2 Kylin  221
14.2.1 Kylin 简介  221
14.2.2 Kylin 架构及执行流程  222
14.2.3 Kylin 集成Calcite   222
14.3 Flink   227
14.3.1 Flink 简介  227
14.3.2 Flink 架构与执行流程  228
14.3.3 Flink 集成Calcite  229
14.4 本章小结  232

内容摘要
Calcite是一款开源的动态数据管理框架,其目标是一种方案适应所有需求场景,能为不同计算平台和数据源提供统一的查询引擎,它对于没有高并发、低延时的多数据源间的数据管理有着天然的优势,是解决多数据源统一管理问题的利器。本书围绕Calcite,结合其数据库基础知识、核心理论以及相关的项目实践情况,从SQL的解析、校验、优化、执行等流程,对Calcite组件进行介绍。同时本书为部分章节配置对应的代码和实例,帮助读者加深理解。本书内容由理论到实践,将源码解析与实际案例相结合,可以作为Calcite新手的入门图书以及快速上手的参考书,也可以作为大数据开发人员和从业人员的学习用书,还可以作为相关培训机构以及高等院校的教学用书。

主编推荐
(1)详解Calcite解决多源异构数据管理难题的入门指南。 (2)从历史背景,到基础理论,带领读者了解Calcite如何产生并应用到多个主流开源软件。 (3)从服务层,到优化层,分层详解Calcite各个模块,源码解析与实际案例相结合,帮助读者从实践中学会内部实现过程。 (4)深入分析Calcite在开源项目Hive、Kylin、Flink中的使用方法。 (5)提供可下载的代码仓库文件,手把手帮助读者解决数据源统一管理难题。 (6)数据库领域6位学者、实践者姚延栋、王飞鹏、张亮、黄向东、林春、冯若航推荐!

精彩内容
Calcite 是一款开源的动态数据管理框架,其目标是一种方案适应所有需求场景,能为不同计算平台和数据源提供统一的查询引擎,它对于没有高并发、低延时的多数据源间的数据管理有着天然的优势,是解决多数据源统一管理问题的利器。
  本书围绕Calcite,结合其数据库基础知识、核心理论以及相关的项目实践情况,从SQL 的解析、校验、优化、执行等流程,对Calcite 组件进行介绍。同时本书为部分章节配置对应的代码和实例,帮助读者加深理解。
  本书内容由理论到实践,将源码解析与实际案例相结合,可以作为Calcite 新手的入门图书以及快速上手的参考书,也可以作为大数据开发人员和从业人员的学习用书,还可以作为相关培训机构以及高等院校的教学用书。

媒体评论
(1)详解Calcite解决多源异构数据管理难题的入门指南。
  (2)从历史背景,到基础理论,带领读者了解Calcite如何产生并应用到多个主流开源软件。
  (3)从服务层,到优化层,分层详解Calcite各个模块,源码解析与实际案例相结合,帮助读者从实践中学会内部实现过程。
  (4)深入分析Calcite在开源项目Hive、Kylin、Flink中的使用方法。
  (5)提供可下载的代码仓库文件,手把手帮助读者解决数据源统一管理难题。
  (6)数据库领域6位学者、实践者姚延栋、王飞鹏、张亮、黄向东、林春、冯若航 !

—  没有更多了  —

以下为对购买帮助不大的评价

此功能需要访问孔网APP才能使用
暂时不用
打开孔网APP